public class McEliecePKCSCipherSpi extends AsymmetricBlockCipher implements PKCSObjectIdentifiers, X509ObjectIdentifiers
Modifier and Type | Class and Description |
---|---|
static class |
McEliecePKCSCipherSpi.McEliecePKCS |
buf, cipherTextSize, maxPlainTextSize, paramSpec
DECRYPT_MODE, ENCRYPT_MODE, opMode
bagtypes, canNotDecryptAny, certBag, certTypes, crlBag, crlTypes, data, des_EDE3_CBC, dhKeyAgreement, digestAlgorithm, digestedData, encryptedData, encryptionAlgorithm, envelopedData, id_aa, id_aa_asymmDecryptKeyID, id_aa_cmsAlgorithmProtect, id_aa_commitmentType, id_aa_communityIdentifiers, id_aa_contentHint, id_aa_contentIdentifier, id_aa_contentReference, id_aa_decryptKeyID, id_aa_encrypKeyPref, id_aa_ets_archiveTimestamp, id_aa_ets_certCRLTimestamp, id_aa_ets_certificateRefs, id_aa_ets_certValues, id_aa_ets_commitmentType, id_aa_ets_contentTimestamp, id_aa_ets_escTimeStamp, id_aa_ets_otherSigCert, id_aa_ets_revocationRefs, id_aa_ets_revocationValues, id_aa_ets_signerAttr, id_aa_ets_signerLocation, id_aa_ets_sigPolicyId, id_aa_implCompressAlgs, id_aa_implCryptoAlgs, id_aa_msgSigDigest, id_aa_otherSigCert, id_aa_receiptRequest, id_aa_signatureTimeStampToken, id_aa_signerLocation, id_aa_signingCertificate, id_aa_signingCertificateV2, id_aa_sigPolicyId, id_alg, id_alg_AEADChaCha20Poly1305, id_alg_CMS3DESwrap, id_alg_CMSRC2wrap, id_alg_ESDH, id_alg_hkdf_with_sha256, id_alg_hkdf_with_sha384, id_alg_hkdf_with_sha512, id_alg_hss_lms_hashsig, id_alg_PWRI_KEK, id_alg_SSDH, id_alg_zlibCompress, id_ct, id_ct_authData, id_ct_authEnvelopedData, id_ct_compressedData, id_ct_timestampedData, id_ct_TSTInfo, id_cti, id_cti_ets_proofOfApproval, id_cti_ets_proofOfCreation, id_cti_ets_proofOfDelivery, id_cti_ets_proofOfOrigin, id_cti_ets_proofOfReceipt, id_cti_ets_proofOfSender, id_hmacWithSHA1, id_hmacWithSHA224, id_hmacWithSHA256, id_hmacWithSHA384, id_hmacWithSHA512, id_hmacWithSHA512_224, id_hmacWithSHA512_256, id_mgf1, id_PBES2, id_PBKDF2, id_PBMAC1, id_pSpecified, id_rsa_KEM, id_RSAES_OAEP, id_RSASSA_PSS, id_smime, id_spq, id_spq_ets_unotice, id_spq_ets_uri, id_spq_oid, keyBag, md2, md2WithRSAEncryption, md4, md4WithRSAEncryption, md5, md5WithRSAEncryption, pbeWithMD2AndDES_CBC, pbeWithMD2AndRC2_CBC, pbeWithMD5AndDES_CBC, pbeWithMD5AndRC2_CBC, pbeWithSHA1AndDES_CBC, pbeWithSHA1AndRC2_CBC, pbeWithSHAAnd128BitRC2_CBC, pbeWithSHAAnd128BitRC4, pbeWithSHAAnd2_KeyTripleDES_CBC, pbeWithSHAAnd3_KeyTripleDES_CBC, pbewithSHAAnd40BitRC2_CBC, pbeWithSHAAnd40BitRC2_CBC, pbeWithSHAAnd40BitRC4, pkcs_1, pkcs_12, pkcs_12PbeIds, pkcs_3, pkcs_5, pkcs_7, pkcs_9, pkcs_9_at_binarySigningTime, pkcs_9_at_challengePassword, pkcs_9_at_contentType, pkcs_9_at_counterSignature, pkcs_9_at_emailAddress, pkcs_9_at_extendedCertificateAttributes, pkcs_9_at_extensionRequest, pkcs_9_at_friendlyName, pkcs_9_at_localKeyId, pkcs_9_at_messageDigest, pkcs_9_at_signingDescription, pkcs_9_at_signingTime, pkcs_9_at_smimeCapabilities, pkcs_9_at_unstructuredAddress, pkcs_9_at_unstructuredName, pkcs8ShroudedKeyBag, preferSignedData, RC2_CBC, rc4, rsaEncryption, safeContentsBag, sdsiCertificate, secretBag, sha1WithRSAEncryption, sha224WithRSAEncryption, sha256WithRSAEncryption, sha384WithRSAEncryption, sha512_224WithRSAEncryption, sha512_256WithRSAEncryption, sha512WithRSAEncryption, signedAndEnvelopedData, signedData, smime_alg, sMIMECapabilitiesVersions, srsaOAEPEncryptionSET, x509Certificate, x509certType, x509Crl
attributeType, commonName, countryName, crlAccessMethod, id_ad, id_ad_caIssuers, id_ad_ocsp, id_at_name, id_at_organizationIdentifier, id_at_telephoneNumber, id_ce, id_ea_rsa, id_ecdsa_with_shake128, id_ecdsa_with_shake256, id_PasswordBasedMac, id_pda, id_pe, id_pkix, id_rsassa_pss_shake128, id_rsassa_pss_shake256, id_SHA1, localityName, ocspAccessMethod, organization, organizationalUnitName, pkix_algorithms, ripemd160, ripemd160WithRSAEncryption, stateOrProvinceName
Constructor and Description |
---|
McEliecePKCSCipherSpi(McElieceCipher cipher) |
Modifier and Type | Method and Description |
---|---|
int |
getKeySize(java.security.Key key)
Return the key size of the given key object in bits.
|
java.lang.String |
getName() |
protected void |
initCipherDecrypt(java.security.Key key,
java.security.spec.AlgorithmParameterSpec params)
Initialize the AsymmetricBlockCipher with a certain key for data
encryption.
|
protected void |
initCipherEncrypt(java.security.Key key,
java.security.spec.AlgorithmParameterSpec params,
java.security.SecureRandom sr)
Initialize the AsymmetricBlockCipher with a certain key for data
encryption.
|
protected byte[] |
messageDecrypt(byte[] input)
Decrypt the ciphertext stored in input.
|
protected byte[] |
messageEncrypt(byte[] input)
Encrypt the message stored in input.
|
checkLength, doFinal, doFinal, getBlockSize, getIV, getOutputSize, getParameters, initDecrypt, initDecrypt, initEncrypt, initEncrypt, initEncrypt, initEncrypt, setMode, setPadding, update, update
doFinal, doFinal, engineDoFinal, engineDoFinal, engineGetBlockSize, engineGetIV, engineGetKeySize, engineGetOutputSize, engineGetParameters, engineInit, engineInit, engineInit, engineSetMode, engineSetPadding, engineUpdate, engineUpdate, update
public McEliecePKCSCipherSpi(McElieceCipher cipher)
protected void initCipherEncrypt(java.security.Key key, java.security.spec.AlgorithmParameterSpec params, java.security.SecureRandom sr) throws java.security.InvalidKeyException, java.security.InvalidAlgorithmParameterException
AsymmetricBlockCipher
initCipherEncrypt
in class AsymmetricBlockCipher
key
- the key which has to be used to encrypt dataparams
- the algorithm parameterssr
- the source of randomnessjava.security.InvalidKeyException
- if the given key is inappropriate for initializing this
cipher.java.security.InvalidAlgorithmParameterException
- if the given parameters are inappropriate for
initializing this cipher.protected void initCipherDecrypt(java.security.Key key, java.security.spec.AlgorithmParameterSpec params) throws java.security.InvalidKeyException, java.security.InvalidAlgorithmParameterException
AsymmetricBlockCipher
initCipherDecrypt
in class AsymmetricBlockCipher
key
- the key which has to be used to decrypt dataparams
- the algorithm parametersjava.security.InvalidKeyException
- if the given key is inappropriate for initializing this
cipherjava.security.InvalidAlgorithmParameterException
- if the given parameters are inappropriate for
initializing this cipher.protected byte[] messageEncrypt(byte[] input) throws javax.crypto.IllegalBlockSizeException, javax.crypto.BadPaddingException
AsymmetricBlockCipher
messageEncrypt
in class AsymmetricBlockCipher
input
- the message to be encrypted (usually the message length is
less than or equal to maxPlainTextSize)javax.crypto.IllegalBlockSizeException
- if the input is inappropriate for this cipher.javax.crypto.BadPaddingException
- if the input format is invalid.protected byte[] messageDecrypt(byte[] input) throws javax.crypto.IllegalBlockSizeException, javax.crypto.BadPaddingException
AsymmetricBlockCipher
messageDecrypt
in class AsymmetricBlockCipher
input
- the ciphertext to be decrypted (the ciphertext length is
less than or equal to maxCipherTextSize)javax.crypto.IllegalBlockSizeException
- if the input is inappropriate for this cipher.javax.crypto.BadPaddingException
- if the input format is invalid.public java.lang.String getName()
getName
in class CipherSpiExt
public int getKeySize(java.security.Key key) throws java.security.InvalidKeyException
CipherSpiExt
getKeySize
in class CipherSpiExt
key
- the key objectjava.security.InvalidKeyException
- if key is invalid.