public class McElieceFujisakiCipherSpi extends AsymmetricHybridCipher implements PKCSObjectIdentifiers, X509ObjectIdentifiers
Modifier and Type | Class and Description |
---|---|
static class |
McElieceFujisakiCipherSpi.McElieceFujisaki |
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_CMS3DESwrap, id_alg_CMSRC2wrap, id_alg_ESDH, id_alg_PWRI_KEK, id_alg_SSDH, 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_mgf1, id_PBES2, id_PBKDF2, id_pSpecified, id_rsa_KEM, id_RSAES_OAEP, id_RSASSA_PSS, id_smime, id_spq, id_spq_ets_unotice, id_spq_ets_uri, 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_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, sMIMECapabilitiesVersions, srsaOAEPEncryptionSET, x509Certificate, x509certType, x509Crl
commonName, countryName, crlAccessMethod, id_ad, id_ad_caIssuers, id_ad_ocsp, id_at_name, id_at_telephoneNumber, id_ce, id_ea_rsa, id_pe, id_pkix, id_SHA1, localityName, ocspAccessMethod, organization, organizationalUnitName, ripemd160, ripemd160WithRSAEncryption, stateOrProvinceName
Modifier | Constructor and Description |
---|---|
protected |
McElieceFujisakiCipherSpi(Digest digest,
McElieceFujisakiCipher cipher) |
Modifier and Type | Method and Description |
---|---|
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[] |
messageDecrypt(byte[] input) |
byte[] |
messageEncrypt(byte[] input) |
byte[] |
update(byte[] input,
int inOff,
int inLen)
Continue a multiple-part encryption or decryption operation.
|
doFinal, getBlockSize, getIV, getOutputSize, getParameters, initDecrypt, initDecrypt, initEncrypt, initEncrypt, initEncrypt, initEncrypt, setMode, setPadding, update
doFinal, doFinal, engineDoFinal, engineDoFinal, engineGetBlockSize, engineGetIV, engineGetKeySize, engineGetOutputSize, engineGetParameters, engineInit, engineInit, engineInit, engineSetMode, engineSetPadding, engineUpdate, engineUpdate, update
protected McElieceFujisakiCipherSpi(Digest digest, McElieceFujisakiCipher cipher)
public byte[] update(byte[] input, int inOff, int inLen)
update
in class AsymmetricHybridCipher
input
- byte array containing the next part of the inputinOff
- index in the array where the input startsinLen
- length of the inputpublic byte[] doFinal(byte[] input, int inOff, int inLen) throws javax.crypto.BadPaddingException
doFinal
in class AsymmetricHybridCipher
input
- the input bufferinOff
- the offset in input where the input startsinLen
- the input lengthjavax.crypto.BadPaddingException
- on deryption errors.protected int encryptOutputSize(int inLen)
AsymmetricHybridCipher
encryptOutputSize
in class AsymmetricHybridCipher
inLen
- the length of the inputprotected int decryptOutputSize(int inLen)
AsymmetricHybridCipher
decryptOutputSize
in class AsymmetricHybridCipher
inLen
- the length of the inputprotected void initCipherEncrypt(java.security.Key key, java.security.spec.AlgorithmParameterSpec params, java.security.SecureRandom sr) throws java.security.InvalidKeyException, java.security.InvalidAlgorithmParameterException
AsymmetricHybridCipher
initCipherEncrypt
in class AsymmetricHybridCipher
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
AsymmetricHybridCipher
initCipherDecrypt
in class AsymmetricHybridCipher
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.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.public byte[] messageEncrypt(byte[] input) throws javax.crypto.IllegalBlockSizeException, javax.crypto.BadPaddingException, java.security.NoSuchAlgorithmException
javax.crypto.IllegalBlockSizeException
javax.crypto.BadPaddingException
java.security.NoSuchAlgorithmException
public byte[] messageDecrypt(byte[] input) throws javax.crypto.IllegalBlockSizeException, javax.crypto.BadPaddingException, java.security.NoSuchAlgorithmException
javax.crypto.IllegalBlockSizeException
javax.crypto.BadPaddingException
java.security.NoSuchAlgorithmException