org.bouncycastle.pqc.jcajce.provider.mceliece
Class McEliecePKCSCipherSpi
java.lang.Object
|
+--javax.crypto.CipherSpi
|
+--org.bouncycastle.pqc.jcajce.provider.util.CipherSpiExt
|
+--org.bouncycastle.pqc.jcajce.provider.util.AsymmetricBlockCipher
|
+--org.bouncycastle.pqc.jcajce.provider.mceliece.McEliecePKCSCipherSpi
- All Implemented Interfaces:
- PKCSObjectIdentifiers, X509ObjectIdentifiers
- Direct Known Subclasses:
- McEliecePKCSCipherSpi.McEliecePKCS
- public class McEliecePKCSCipherSpi
- extends AsymmetricBlockCipher
- implements PKCSObjectIdentifiers, X509ObjectIdentifiers
Fields inherited from interface org.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers |
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 |
Fields inherited from interface org.bouncycastle.asn1.x509.X509ObjectIdentifiers |
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 |
Method Summary |
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. |
Methods inherited from class org.bouncycastle.pqc.jcajce.provider.util.AsymmetricBlockCipher |
checkLength, doFinal, doFinal, getBlockSize, getIV, getOutputSize, getParameters, initDecrypt, initDecrypt, initEncrypt, initEncrypt, initEncrypt, initEncrypt, setMode, setPadding, update, update |
Methods inherited from class org.bouncycastle.pqc.jcajce.provider.util.CipherSpiExt |
doFinal, doFinal, engineDoFinal, engineDoFinal, engineGetBlockSize, engineGetIV, engineGetKeySize, engineGetOutputSize, engineGetParameters, engineInit, engineInit, engineInit, engineSetMode, engineSetPadding, engineUpdate, engineUpdate, update |
Methods inherited from class javax.crypto.CipherSpi |
engineUnwrap, engineWrap |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
McEliecePKCSCipherSpi
public McEliecePKCSCipherSpi(McElieceCipher cipher)
initCipherEncrypt
protected void initCipherEncrypt(java.security.Key key,
java.security.spec.AlgorithmParameterSpec params,
java.security.SecureRandom sr)
throws java.security.InvalidKeyException,
java.security.InvalidAlgorithmParameterException
- Description copied from class:
AsymmetricBlockCipher
- Initialize the AsymmetricBlockCipher with a certain key for data
encryption.
- Overrides:
initCipherEncrypt
in class AsymmetricBlockCipher
- Following copied from class:
org.bouncycastle.pqc.jcajce.provider.util.AsymmetricBlockCipher
- Parameters:
key
- the key which has to be used to encrypt dataparams
- the algorithm parameterssr
- the source of randomness- Throws:
java.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.
initCipherDecrypt
protected void initCipherDecrypt(java.security.Key key,
java.security.spec.AlgorithmParameterSpec params)
throws java.security.InvalidKeyException,
java.security.InvalidAlgorithmParameterException
- Description copied from class:
AsymmetricBlockCipher
- Initialize the AsymmetricBlockCipher with a certain key for data
encryption.
- Overrides:
initCipherDecrypt
in class AsymmetricBlockCipher
- Following copied from class:
org.bouncycastle.pqc.jcajce.provider.util.AsymmetricBlockCipher
- Parameters:
key
- the key which has to be used to decrypt dataparams
- the algorithm parameters- Throws:
java.security.InvalidKeyException
- if the given key is inappropriate for initializing this
cipherjava.security.InvalidAlgorithmParameterException
- if the given parameters are inappropriate for
initializing this cipher.
messageEncrypt
protected byte[] messageEncrypt(byte[] input)
throws javax.crypto.IllegalBlockSizeException,
javax.crypto.BadPaddingException
- Description copied from class:
AsymmetricBlockCipher
- Encrypt the message stored in input. The method should also perform an
additional length check.
- Overrides:
messageEncrypt
in class AsymmetricBlockCipher
- Following copied from class:
org.bouncycastle.pqc.jcajce.provider.util.AsymmetricBlockCipher
- Parameters:
input
- the message to be encrypted (usually the message length is
less than or equal to maxPlainTextSize)- Returns:
- the encrypted message (it has length equal to maxCipherTextSize_)
- Throws:
javax.crypto.IllegalBlockSizeException
- if the input is inappropriate for this cipher.javax.crypto.BadPaddingException
- if the input format is invalid.
messageDecrypt
protected byte[] messageDecrypt(byte[] input)
throws javax.crypto.IllegalBlockSizeException,
javax.crypto.BadPaddingException
- Description copied from class:
AsymmetricBlockCipher
- Decrypt the ciphertext stored in input. The method should also perform an
additional length check.
- Overrides:
messageDecrypt
in class AsymmetricBlockCipher
- Following copied from class:
org.bouncycastle.pqc.jcajce.provider.util.AsymmetricBlockCipher
- Parameters:
input
- the ciphertext to be decrypted (the ciphertext length is
less than or equal to maxCipherTextSize)- Returns:
- the decrypted message
- Throws:
javax.crypto.IllegalBlockSizeException
- if the input is inappropriate for this cipher.javax.crypto.BadPaddingException
- if the input format is invalid.
getName
public java.lang.String getName()
- Overrides:
getName
in class CipherSpiExt
- Following copied from class:
org.bouncycastle.pqc.jcajce.provider.util.CipherSpiExt
- Returns:
- the name of this cipher
getKeySize
public int getKeySize(java.security.Key key)
throws java.security.InvalidKeyException
- Description copied from class:
CipherSpiExt
- Return the key size of the given key object in bits.
- Overrides:
getKeySize
in class CipherSpiExt
- Following copied from class:
org.bouncycastle.pqc.jcajce.provider.util.CipherSpiExt
- Parameters:
key
- the key object- Returns:
- the key size in bits of the given key object
- Throws:
java.security.InvalidKeyException
- if key is invalid.