org.bouncycastle.pqc.jcajce.provider.mceliece
Class McElieceKobaraImaiCipherSpi
java.lang.Object
|
+--javax.crypto.CipherSpi
|
+--org.bouncycastle.pqc.jcajce.provider.util.CipherSpiExt
|
+--org.bouncycastle.pqc.jcajce.provider.util.AsymmetricHybridCipher
|
+--org.bouncycastle.pqc.jcajce.provider.mceliece.McElieceKobaraImaiCipherSpi
- All Implemented Interfaces:
- PKCSObjectIdentifiers, X509ObjectIdentifiers
- Direct Known Subclasses:
- McElieceKobaraImaiCipherSpi.McElieceKobaraImai, McElieceKobaraImaiCipherSpi.McElieceKobaraImai224, McElieceKobaraImaiCipherSpi.McElieceKobaraImai256, McElieceKobaraImaiCipherSpi.McElieceKobaraImai384, McElieceKobaraImaiCipherSpi.McElieceKobaraImai512
- public class McElieceKobaraImaiCipherSpi
- extends AsymmetricHybridCipher
- 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 |
protected int |
decryptOutputSize(int inLen)
Compute the output size of an update() or doFinal() operation of a hybrid
asymmetric cipher in decryption mode when given input of the specified
length. |
byte[] |
doFinal(byte[] input,
int inOff,
int inLen)
Encrypts or decrypts data in a single-part operation, or finishes a
multiple-part operation. |
protected int |
encryptOutputSize(int inLen)
Compute the output size of an update() or doFinal() operation of a hybrid
asymmetric cipher in encryption mode when given input of the specified
length. |
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 AsymmetricHybridCipher 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 AsymmetricHybridCipher with a certain key for data
encryption. |
byte[] |
update(byte[] input,
int inOff,
int inLen)
Continue a multiple-part encryption or decryption operation. |
Methods inherited from class org.bouncycastle.pqc.jcajce.provider.util.AsymmetricHybridCipher |
doFinal, getBlockSize, getIV, getOutputSize, getParameters, initDecrypt, initDecrypt, initEncrypt, initEncrypt, initEncrypt, initEncrypt, setMode, setPadding, 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 |
McElieceKobaraImaiCipherSpi
public McElieceKobaraImaiCipherSpi()
McElieceKobaraImaiCipherSpi
protected McElieceKobaraImaiCipherSpi(Digest digest,
McElieceKobaraImaiCipher cipher)
update
public byte[] update(byte[] input,
int inOff,
int inLen)
- Continue a multiple-part encryption or decryption operation.
- Overrides:
update
in class AsymmetricHybridCipher
- Parameters:
input
- byte array containing the next part of the inputinOff
- index in the array where the input startsinLen
- length of the input- Returns:
- the processed byte array.
doFinal
public byte[] doFinal(byte[] input,
int inOff,
int inLen)
throws javax.crypto.BadPaddingException
- Encrypts or decrypts data in a single-part operation, or finishes a
multiple-part operation. The data is encrypted or decrypted, depending on
how this cipher was initialized.
- Overrides:
doFinal
in class AsymmetricHybridCipher
- Parameters:
input
- the input bufferinOff
- the offset in input where the input startsinLen
- the input length- Returns:
- the new buffer with the result
- Throws:
javax.crypto.BadPaddingException
- if this cipher is in decryption mode, and (un)padding has
been requested, but the decrypted data is not bounded by
the appropriate padding bytes
encryptOutputSize
protected int encryptOutputSize(int inLen)
- Description copied from class:
AsymmetricHybridCipher
- Compute the output size of an update() or doFinal() operation of a hybrid
asymmetric cipher in encryption mode when given input of the specified
length.
- Overrides:
encryptOutputSize
in class AsymmetricHybridCipher
- Following copied from class:
org.bouncycastle.pqc.jcajce.provider.util.AsymmetricHybridCipher
- Parameters:
inLen
- the length of the input- Returns:
- the output size
decryptOutputSize
protected int decryptOutputSize(int inLen)
- Description copied from class:
AsymmetricHybridCipher
- Compute the output size of an update() or doFinal() operation of a hybrid
asymmetric cipher in decryption mode when given input of the specified
length.
- Overrides:
decryptOutputSize
in class AsymmetricHybridCipher
- Following copied from class:
org.bouncycastle.pqc.jcajce.provider.util.AsymmetricHybridCipher
- Parameters:
inLen
- the length of the input- Returns:
- the output size
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:
AsymmetricHybridCipher
- Initialize the AsymmetricHybridCipher with a certain key for data
encryption.
- Overrides:
initCipherEncrypt
in class AsymmetricHybridCipher
- Following copied from class:
org.bouncycastle.pqc.jcajce.provider.util.AsymmetricHybridCipher
- 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:
AsymmetricHybridCipher
- Initialize the AsymmetricHybridCipher with a certain key for data
encryption.
- Overrides:
initCipherDecrypt
in class AsymmetricHybridCipher
- Following copied from class:
org.bouncycastle.pqc.jcajce.provider.util.AsymmetricHybridCipher
- 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.
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.