Bouncy Castle Cryptography Library 1.71

Deprecated API

Deprecated Classes
org.bouncycastle.crypto.engines.AESFastEngine
          unfortunately this class is has a few side channel issues. In an environment where encryption/decryption may be closely observed it should not be used. 
org.bouncycastle.asn1.ASN1ApplicationSpecific
          Will be removed. Change application code to handle as ASN1TaggedObject only, testing for the expected tag class of BERTags.APPLICATION in relevant objects before using. If using a stream parser, handle application-tagged objects using ASN1TaggedObjectParser in the usual way, again testing for a tag class of BERTags.APPLICATION. 
org.bouncycastle.asn1.BERApplicationSpecific
          Will be removed. See comments for ASN1ApplicationSpecific. 
org.bouncycastle.asn1.BERApplicationSpecificParser
          Test for ASN1TaggedObjectParser with tag class of BERTags.APPLICATION instead. 
org.bouncycastle.asn1.BERTaggedObjectParser
          Will be made non-public. Test for and use only ASN1TaggedObjectParser. 
org.bouncycastle.pqc.math.linearalgebra.ByteUtils
          use org.bouncycastle.util.Arrays. 
org.bouncycastle.crypto.params.CCMParameters
          use AEADParameters 
org.bouncycastle.asn1.DERApplicationSpecific
          Will be removed. See comments for ASN1ApplicationSpecific. 
org.bouncycastle.asn1.util.DERDump
          use ASN1Dump. 
org.bouncycastle.asn1.x9.DHDomainParameters
          use DomainParameters 
org.bouncycastle.asn1.x9.DHValidationParms
          use ValidationParams 
org.bouncycastle.asn1.DLApplicationSpecific
          Will be removed. See comments for ASN1ApplicationSpecific. 
org.bouncycastle.asn1.sec.ECPrivateKeyStructure
          use ECPrivateKey 
org.bouncycastle.crypto.util.Pack
          use org.bouncycastle.util.pack 
org.bouncycastle.crypto.modes.PaddedBlockCipher
          use org.bouncycastle.crypto.paddings.PaddedBufferedBlockCipher instead. 
org.bouncycastle.asn1.pkcs.RSAPrivateKeyStructure
          use RSAPrivateKey 
org.bouncycastle.asn1.x509.RSAPublicKeyStructure
          use org.bouncycastle.asn1.pkcs.RSAPublicKey 
org.bouncycastle.asn1.x509.TBSCertificateStructure
          use TBSCertificate 
org.bouncycastle.asn1.x509.X509CertificateStructure
          use org.bouncycastle.asn1.x509.Certificate 
org.bouncycastle.asn1.x509.X509Extension
          use Extension 
org.bouncycastle.asn1.x509.X509Extensions
          use Extensions 
org.bouncycastle.asn1.x509.X509ExtensionsGenerator
          use org.bouncycastle.asn1.x509.ExtensionsGenerator 
org.bouncycastle.asn1.x509.X509Name
          use org.bouncycastle.asn1.x500.X500Name. 
org.bouncycastle.asn1.x509.X509NameTokenizer
          use X500NameTokenizer 
 

Deprecated Interfaces
org.bouncycastle.asn1.ASN1ApplicationSpecificParser
          Test for ASN1TaggedObjectParser with tag class of BERTags.APPLICATION instead. 
 

Deprecated Fields
org.bouncycastle.asn1.x509.ReasonFlags.AA_COMPROMISE
          use lower case version 
org.bouncycastle.asn1.x509.CRLReason.AA_COMPROMISE
          use lower case version 
org.bouncycastle.asn1.cmp.PKIFailureInfo.ADD_INFO_NOT_AVAILABLE
          use lower case version 
org.bouncycastle.asn1.x509.ReasonFlags.AFFILIATION_CHANGED
          use lower case version 
org.bouncycastle.asn1.x509.CRLReason.AFFILIATION_CHANGED
          use lower case version 
org.bouncycastle.asn1.x509.X509Extensions.AuditIdentity
          use X509Extension value. 
org.bouncycastle.asn1.x509.X509Extensions.AuthorityInfoAccess
          use X509Extension value. 
org.bouncycastle.asn1.x509.X509Extensions.AuthorityKeyIdentifier
          use X509Extension value. 
org.bouncycastle.asn1.cmp.PKIFailureInfo.BAD_ALG
          use lower case version 
org.bouncycastle.asn1.cmp.PKIFailureInfo.BAD_CERT_ID
          use lower case version 
org.bouncycastle.asn1.cmp.PKIFailureInfo.BAD_DATA_FORMAT
          use lower case version 
org.bouncycastle.asn1.cmp.PKIFailureInfo.BAD_MESSAGE_CHECK
          use lower case version 
org.bouncycastle.asn1.cmp.PKIFailureInfo.BAD_POP
          use lower case version 
org.bouncycastle.asn1.cmp.PKIFailureInfo.BAD_REQUEST
          use lower case version 
org.bouncycastle.asn1.cmp.PKIFailureInfo.BAD_TIME
          use lower case version 
org.bouncycastle.asn1.x509.X509Extensions.BasicConstraints
          use X509Extension value. 
org.bouncycastle.asn1.x509.X509Extensions.BiometricInfo
          use X509Extension value. 
org.bouncycastle.asn1.x509.X509Name.C
          use a X500NameStyle 
org.bouncycastle.asn1.x509.ReasonFlags.CA_COMPROMISE
          use lower case version 
org.bouncycastle.asn1.x509.CRLReason.CA_COMPROMISE
          use lower case version 
org.bouncycastle.asn1.x509.ReasonFlags.CERTIFICATE_HOLD
          use lower case version 
org.bouncycastle.asn1.x509.CRLReason.CERTIFICATE_HOLD
          use lower case version 
org.bouncycastle.asn1.x509.X509Extensions.CertificateIssuer
          use X509Extension value. 
org.bouncycastle.asn1.x509.X509Extensions.CertificatePolicies
          use X509Extension value. 
org.bouncycastle.asn1.x509.ReasonFlags.CESSATION_OF_OPERATION
          use lower case version 
org.bouncycastle.asn1.x509.CRLReason.CESSATION_OF_OPERATION
          use lower case version 
org.bouncycastle.asn1.x509.X509Name.CN
          use a X500NameStyle 
org.bouncycastle.asn1.x509.X509Extensions.CRLDistributionPoints
          use X509Extension value. 
org.bouncycastle.asn1.x509.X509Extensions.CRLNumber
          use X509Extension value. 
org.bouncycastle.asn1.x509.X509Extensions.DeltaCRLIndicator
          use X509Extension value. 
org.bouncycastle.asn1.x509.X509Name.EmailAddress
          use a X500NameStyle 
org.bouncycastle.asn1.x509.X509Extensions.ExtendedKeyUsage
          use X509Extension value. 
org.bouncycastle.asn1.x509.X509Extensions.FreshestCRL
          use X509Extension value. 
org.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers.id_aa_commitmentType
          use id_aa_ets_commitmentType instead 
org.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers.id_aa_otherSigCert
          use id_aa_ets_otherSigCert instead 
org.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers.id_aa_signerLocation
          use id_aa_ets_signerLocation instead 
org.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers.id_aa_sigPolicyId
          use id_aa_ets_sigPolicyId instead 
org.bouncycastle.asn1.cmp.PKIFailureInfo.INCORRECT_DATA
          use lower case version 
org.bouncycastle.asn1.x509.X509Extensions.InhibitAnyPolicy
          use X509Extension value. 
org.bouncycastle.asn1.x509.X509Extensions.InstructionCode
          use X509Extension value. 
org.bouncycastle.asn1.x509.X509Extensions.InvalidityDate
          use X509Extension value. 
org.bouncycastle.asn1.x509.X509Extensions.IssuerAlternativeName
          use X509Extension value. 
org.bouncycastle.asn1.x509.X509Extensions.IssuingDistributionPoint
          use X509Extension value. 
org.bouncycastle.asn1.x509.ReasonFlags.KEY_COMPROMISE
          use lower case version 
org.bouncycastle.asn1.x509.CRLReason.KEY_COMPROMISE
          use lower case version 
org.bouncycastle.asn1.x509.X509Extensions.KeyUsage
          use X509Extension value. 
org.bouncycastle.asn1.x509.X509Extensions.LogoType
          use X509Extension value. 
org.bouncycastle.asn1.cmp.PKIFailureInfo.MISSING_TIME_STAMP
          use lower case version 
org.bouncycastle.asn1.x509.X509Extensions.NameConstraints
          use X509Extension value. 
org.bouncycastle.asn1.x509.X509Extensions.NoRevAvail
          use X509Extension value. 
org.bouncycastle.asn1.x509.X509Name.O
          use a X500NameStyle 
org.bouncycastle.asn1.x509.X509Name.OIDLookUp
          use DefaultSymbols 
org.bouncycastle.asn1.x509.X509Name.OU
          use a X500NameStyle 
org.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers.pbewithSHAAnd40BitRC2_CBC
          use pbeWithSHAAnd40BitRC2_CBC 
org.bouncycastle.asn1.x509.X509Extensions.PolicyConstraints
          use X509Extension value. 
org.bouncycastle.asn1.x509.X509Extensions.PolicyMappings
          use X509Extension value. 
org.bouncycastle.asn1.x509.X509Extensions.PrivateKeyUsagePeriod
          use X509Extension value. 
org.bouncycastle.asn1.x509.ReasonFlags.PRIVILEGE_WITHDRAWN
          use lower case version 
org.bouncycastle.asn1.x509.CRLReason.PRIVILEGE_WITHDRAWN
          use lower case version 
org.bouncycastle.asn1.x509.X509Extensions.QCStatements
          use X509Extension value. 
org.bouncycastle.asn1.x509.X509Extensions.ReasonCode
          use X509Extension value. 
org.bouncycastle.asn1.x509.CRLReason.REMOVE_FROM_CRL
          use lower case version 
org.bouncycastle.asn1.x509.X509AttributeIdentifiers.RoleSyntax
          use id_at_role 
org.bouncycastle.crypto.engines.Salsa20Engine.sigma
            
org.bouncycastle.asn1.x500.style.BCStyle.SN
          use SERIALNUMBER or SURNAME 
org.bouncycastle.crypto.encodings.PKCS1Encoding.STRICT_LENGTH_ENABLED_PROPERTY
          use NOT_STRICT_LENGTH_ENABLED_PROPERTY 
org.bouncycastle.asn1.x509.X509Extensions.SubjectAlternativeName
          use X509Extension value. 
org.bouncycastle.asn1.x509.X509Extensions.SubjectDirectoryAttributes
          use X509Extension value. 
org.bouncycastle.asn1.x509.X509Extensions.SubjectInfoAccess
          use X509Extension value. 
org.bouncycastle.asn1.x509.X509Extensions.SubjectKeyIdentifier
          use X509Extension value. 
org.bouncycastle.asn1.x509.ReasonFlags.SUPERSEDED
          use lower case version 
org.bouncycastle.asn1.x509.CRLReason.SUPERSEDED
          use lower case version 
org.bouncycastle.asn1.x509.X509Name.SymbolLookUp
          use DefaultLookUp 
org.bouncycastle.asn1.cmp.PKIFailureInfo.SYSTEM_FAILURE
          use lower case version 
org.bouncycastle.asn1.x509.X509Name.T
          use a X500NameStyle 
org.bouncycastle.asn1.x509.X509Extensions.TargetInformation
          use X509Extension value. 
org.bouncycastle.crypto.engines.Salsa20Engine.tau
            
org.bouncycastle.asn1.cmp.PKIFailureInfo.TIME_NOT_AVAILABLE
          use lower case version 
org.bouncycastle.crypto.signers.X931Signer.TRAILER_IMPLICIT
          use ISOTrailers 
org.bouncycastle.crypto.signers.ISO9796d2Signer.TRAILER_IMPLICIT
          use ISOTrailers 
org.bouncycastle.crypto.signers.ISO9796d2PSSSigner.TRAILER_IMPLICIT
          use ISOTrailers 
org.bouncycastle.crypto.signers.X931Signer.TRAILER_RIPEMD128
          use ISOTrailers 
org.bouncycastle.crypto.signers.ISO9796d2Signer.TRAILER_RIPEMD128
          use ISOTrailers 
org.bouncycastle.crypto.signers.ISO9796d2PSSSigner.TRAILER_RIPEMD128
          use ISOTrailers 
org.bouncycastle.crypto.signers.X931Signer.TRAILER_RIPEMD160
          use ISOTrailers 
org.bouncycastle.crypto.signers.ISO9796d2Signer.TRAILER_RIPEMD160
          use ISOTrailers 
org.bouncycastle.crypto.signers.ISO9796d2PSSSigner.TRAILER_RIPEMD160
          use ISOTrailers 
org.bouncycastle.crypto.signers.X931Signer.TRAILER_SHA1
          use ISOTrailers 
org.bouncycastle.crypto.signers.ISO9796d2Signer.TRAILER_SHA1
          use ISOTrailers 
org.bouncycastle.crypto.signers.ISO9796d2PSSSigner.TRAILER_SHA1
          use ISOTrailers 
org.bouncycastle.crypto.signers.X931Signer.TRAILER_SHA224
          use ISOTrailers 
org.bouncycastle.crypto.signers.X931Signer.TRAILER_SHA256
          use ISOTrailers 
org.bouncycastle.crypto.signers.ISO9796d2Signer.TRAILER_SHA256
          use ISOTrailers 
org.bouncycastle.crypto.signers.ISO9796d2PSSSigner.TRAILER_SHA256
          use ISOTrailers 
org.bouncycastle.crypto.signers.X931Signer.TRAILER_SHA384
          use ISOTrailers 
org.bouncycastle.crypto.signers.ISO9796d2Signer.TRAILER_SHA384
          use ISOTrailers 
org.bouncycastle.crypto.signers.ISO9796d2PSSSigner.TRAILER_SHA384
          use ISOTrailers 
org.bouncycastle.crypto.signers.X931Signer.TRAILER_SHA512
          use ISOTrailers 
org.bouncycastle.crypto.signers.ISO9796d2Signer.TRAILER_SHA512
          use ISOTrailers 
org.bouncycastle.crypto.signers.ISO9796d2PSSSigner.TRAILER_SHA512
          use ISOTrailers 
org.bouncycastle.crypto.signers.X931Signer.TRAILER_WHIRLPOOL
          use ISOTrailers 
org.bouncycastle.crypto.signers.ISO9796d2Signer.TRAILER_WHIRLPOOL
          use ISOTrailers 
org.bouncycastle.crypto.signers.ISO9796d2PSSSigner.TRAILER_WHIRLPOOL
          use ISOTrailers 
org.bouncycastle.asn1.cmp.PKIFailureInfo.UNACCEPTED_EXTENSION
          use lower case version 
org.bouncycastle.asn1.cmp.PKIFailureInfo.UNACCEPTED_POLICY
          use lower case version 
org.bouncycastle.asn1.x509.CRLReason.UNSPECIFIED
          use lower case version 
org.bouncycastle.asn1.x509.ReasonFlags.UNUSED
          use lower case version 
org.bouncycastle.asn1.cmp.PKIFailureInfo.WRONG_AUTHORITY
          use lower case version 
org.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers.x509certType
          use x509Certificate instead 
org.bouncycastle.asn1.bc.BCObjectIdentifiers.xmss_mt_with_SHA256
          use xmss_mt_SHA256ph 
org.bouncycastle.pqc.asn1.PQCObjectIdentifiers.xmss_mt_with_SHA256
          use xmss_mt_SHA256ph 
org.bouncycastle.asn1.bc.BCObjectIdentifiers.xmss_mt_with_SHA512
          use xmss_mt_SHA512ph 
org.bouncycastle.pqc.asn1.PQCObjectIdentifiers.xmss_mt_with_SHA512
          use xmss_mt_SHA512ph 
org.bouncycastle.asn1.bc.BCObjectIdentifiers.xmss_mt_with_SHAKE128
          use xmss_mt_SHAKE128ph 
org.bouncycastle.pqc.asn1.PQCObjectIdentifiers.xmss_mt_with_SHAKE128
          use xmss_mt_SHAKE128ph 
org.bouncycastle.asn1.bc.BCObjectIdentifiers.xmss_mt_with_SHAKE256
          use xmss_mt_SHAKE256ph 
org.bouncycastle.pqc.asn1.PQCObjectIdentifiers.xmss_mt_with_SHAKE256
          use xmss_mt_SHAKE256ph 
org.bouncycastle.asn1.bc.BCObjectIdentifiers.xmss_with_SHA256
          use xmss_SHA256ph 
org.bouncycastle.pqc.asn1.PQCObjectIdentifiers.xmss_with_SHA256
          use xmss_SHA256ph 
org.bouncycastle.asn1.bc.BCObjectIdentifiers.xmss_with_SHA512
          use xmss_SHA512ph 
org.bouncycastle.pqc.asn1.PQCObjectIdentifiers.xmss_with_SHA512
          use xmss_SHA512ph 
org.bouncycastle.asn1.bc.BCObjectIdentifiers.xmss_with_SHAKE128
          use xmss_SHAKE128ph 
org.bouncycastle.pqc.asn1.PQCObjectIdentifiers.xmss_with_SHAKE128
          use xmss_SHAKE128ph 
org.bouncycastle.asn1.bc.BCObjectIdentifiers.xmss_with_SHAKE256
          use xmss_SHAKE256ph 
org.bouncycastle.pqc.asn1.PQCObjectIdentifiers.xmss_with_SHAKE256
          use xmss_SHAKE256ph 
 

Deprecated Methods
org.bouncycastle.util.Fingerprint.calculateFingerprintSHA512_160(byte[])
          use the SHAKE based version. 
org.bouncycastle.asn1.x509.SubjectPublicKeyInfo.getAlgorithmId()
          use getAlgorithm() 
org.bouncycastle.crypto.signers.RSADigestSigner.getAlgorithmName()
            
org.bouncycastle.asn1.cms.TimeStampAndCRL.getCertificateList()
          use getCRL() 
org.bouncycastle.asn1.mozilla.PublicKeyAndChallenge.getChallenge()
          Use PublicKeyAndChallenge.getChallengeIA5() instead. 
org.bouncycastle.asn1.cmc.RevokeRequest.getComment()
          Use RevokeRequest.getCommentUTF8() instead. 
org.bouncycastle.asn1.ess.ContentHints.getContentDescription()
          Use ContentHints.getContentDescriptionUTF8() instead. 
org.bouncycastle.asn1.esf.SignerLocation.getCountryName()
          use getCountry() 
org.bouncycastle.asn1.ocsp.CrlID.getCrlUrl()
          Use CrlID.getCrlUrlIA5() instead. 
org.bouncycastle.asn1.cms.TimeStampedDataParser.getDataUri()
          Use TimeStampedDataParser.getDataUriIA5() instead. 
org.bouncycastle.asn1.cms.TimeStampedData.getDataUri()
          Use TimeStampedData.getDataUriIA5() instead. 
org.bouncycastle.asn1.cms.MetaData.getFileName()
          Use MetaData.getFileNameUTF8() instead. 
org.bouncycastle.asn1.cryptopro.GOST3410ParamSetParameters.getLKeySize()
          use getKeySize 
org.bouncycastle.asn1.esf.SignerLocation.getLocalityName()
          use getLocality() 
org.bouncycastle.asn1.cms.MetaData.getMediaType()
          Use MetaData.getMediaTypeIA5() instead. 
org.bouncycastle.asn1.ASN1TaggedObject.getObject()
          Tagged objects now include the tag class. This method will raise an exception if it is not BERTags.CONTEXT_SPECIFIC. Use ASN1TaggedObject.getBaseUniversal(boolean, int) only after confirming the expected tag class. 
org.bouncycastle.asn1.BERTaggedObjectParser.getObjectParser(int, boolean)
          See ASN1TaggedObjectParser.getObjectParser(int, boolean). 
org.bouncycastle.asn1.ASN1TaggedObjectParser.getObjectParser(int, boolean)
          This parser now includes the tag class. This method will raise an exception if it is not BERTags.CONTEXT_SPECIFIC. Use ASN1Util#parseContextBaseUniversal(ASN1TaggedObjectParser, int, int, boolean, int) as a direct replacement, or use ASN1TaggedObjectParser.parseBaseUniversal(boolean, int) only after confirming the expected tag class (e.g. ASN1Util.tryParseContextBaseUniversal(ASN1TaggedObjectParser, int, boolean, int). 
org.bouncycastle.asn1.ASN1TaggedObject.getObjectParser(int, boolean)
          See ASN1TaggedObjectParser.getObjectParser(int, boolean). 
org.bouncycastle.asn1.BEROctetString.getObjects()
          Will be removed. 
org.bouncycastle.asn1.sec.ECPrivateKey.getParameters()
          Use ECPrivateKey.getParametersObject() instead and getInstance methods or similar to get the object at the desired type. 
org.bouncycastle.asn1.crmf.CertReqMsg.getPop()
          use getPopo 
org.bouncycastle.asn1.x509.SubjectPublicKeyInfo.getPublicKey()
          use parsePublicKey 
org.bouncycastle.asn1.x509.qualified.BiometricData.getSourceDataUri()
          Use BiometricData.getSourceDataUriIA5() instead. 
org.bouncycastle.asn1.cmc.CMCStatusInfoV2.getStatusString()
          Use CMCStatusInfoV2.getStatusStringUTF8() instead. 
org.bouncycastle.asn1.cmc.CMCStatusInfo.getStatusString()
          Use CMCStatusInfo.getStatusStringUTF8() instead. 
org.bouncycastle.asn1.cmp.PKIFreeText.getStringAt(int)
          Use PKIFreeText.getStringAtUTF8(int) instead. 
org.bouncycastle.asn1.esf.SPuri.getUri()
          Use SPuri.getUriIA5() instead. 
org.bouncycastle.asn1.cmp.CMPCertificate.getX509v2AttrCert()
          use getOtherCert and getOtherTag to make sure message is really what it should be. 
org.bouncycastle.pqc.math.linearalgebra.IntegerFunctions.log(double)
          use MathFunctions.log(double) instead 
org.bouncycastle.pqc.math.linearalgebra.IntegerFunctions.log(long)
          use MathFunctions.log(long) instead 
org.bouncycastle.util.Pack.longToBigEndian(long, byte[], int, int)
          Will be removed 
org.bouncycastle.asn1.crmf.CertTemplateBuilder.setExtensions(X509Extensions)
          use method taking Extensions 
org.bouncycastle.asn1.x509.V3TBSCertificateGenerator.setExtensions(X509Extensions)
          use method taking Extensions 
org.bouncycastle.asn1.x509.V2AttributeCertificateInfoGenerator.setExtensions(X509Extensions)
          use method taking Extensions 
org.bouncycastle.asn1.x509.V3TBSCertificateGenerator.setIssuer(X509Name)
          use X500Name method 
org.bouncycastle.asn1.x509.V2TBSCertListGenerator.setIssuer(X509Name)
          use X500Name method 
org.bouncycastle.asn1.x509.V1TBSCertificateGenerator.setIssuer(X509Name)
          use X500Name method 
org.bouncycastle.asn1.x509.V3TBSCertificateGenerator.setSubject(X509Name)
          use X500Name method 
org.bouncycastle.asn1.x509.V1TBSCertificateGenerator.setSubject(X509Name)
          use X500Name method 
org.bouncycastle.crypto.params.Ed25519PrivateKeyParameters.sign(int, Ed25519PublicKeyParameters, byte[], byte[], int, int, byte[], int)
          use overload that doesn't take a public key 
org.bouncycastle.crypto.params.Ed448PrivateKeyParameters.sign(int, Ed448PublicKeyParameters, byte[], byte[], int, int, byte[], int)
          use overload that doesn't take a public key 
 

Deprecated Constructors
org.bouncycastle.crypto.AsymmetricCipherKeyPair(CipherParameters, CipherParameters)
          use AsymmetricKeyParameter 
org.bouncycastle.asn1.x509.AuthorityKeyIdentifier(SubjectPublicKeyInfo)
          create the extension using org.bouncycastle.cert.X509ExtensionUtils 
org.bouncycastle.asn1.x509.AuthorityKeyIdentifier(SubjectPublicKeyInfo, GeneralNames, BigInteger)
          create the extension using org.bouncycastle.cert.X509ExtensionUtils 
org.bouncycastle.asn1.BERTaggedObject(int)
          Will be removed. 
org.bouncycastle.crypto.macs.BlockCipherMac(BlockCipher)
          use CBCBlockCipherMac 
org.bouncycastle.crypto.macs.BlockCipherMac(BlockCipher, int)
          use CBCBlockCipherMac 
org.bouncycastle.asn1.pkcs.CertificationRequest(ASN1Sequence)
          use getInstance() 
org.bouncycastle.asn1.pkcs.CertificationRequestInfo(X509Name, SubjectPublicKeyInfo, ASN1Set)
          use X500Name method. 
org.bouncycastle.asn1.cmp.CMPCertificate(AttributeCertificate)
          use (type. otherCert) constructor 
org.bouncycastle.asn1.DERExternal(ASN1EncodableVector)
          Use DERExternal.DERExternal(DERSequence) instead. 
org.bouncycastle.asn1.DLExternal(ASN1EncodableVector)
          Use DLExternal.DLExternal(DLSequence) instead. 
org.bouncycastle.math.ec.ECCurve.F2m(int, int, BigInteger, BigInteger)
          use constructor taking order/cofactor 
org.bouncycastle.math.ec.ECCurve.F2m(int, int, int, int, BigInteger, BigInteger)
          use constructor taking order/cofactor 
org.bouncycastle.math.ec.ECCurve.Fp(BigInteger, BigInteger, BigInteger)
          use constructor taking order/cofactor 
org.bouncycastle.asn1.sec.ECPrivateKey(BigInteger)
          use constructor which takes orderBitLength to guarantee correct encoding. 
org.bouncycastle.asn1.sec.ECPrivateKey(BigInteger, ASN1BitString, ASN1Encodable)
          use constructor which takes orderBitLength to guarantee correct encoding. 
org.bouncycastle.asn1.sec.ECPrivateKey(BigInteger, ASN1Encodable)
          use constructor which takes orderBitLength to guarantee correct encoding. 
org.bouncycastle.asn1.x509.ExtendedKeyUsage(Vector)
          use KeyPurposeId[] constructor. 
org.bouncycastle.util.Fingerprint(byte[], boolean)
          use the SHAKE only version. 
org.bouncycastle.asn1.x509.GeneralName(X509Name)
          use X500Name constructor. 
org.bouncycastle.asn1.cms.IssuerAndSerialNumber(ASN1Sequence)
          use getInstance() method. 
org.bouncycastle.asn1.cms.IssuerAndSerialNumber(X509CertificateStructure)
          use constructor taking Certificate 
org.bouncycastle.asn1.cms.IssuerAndSerialNumber(X509Name, ASN1Integer)
          use X500Name constructor 
org.bouncycastle.asn1.cms.IssuerAndSerialNumber(X509Name, BigInteger)
          use X500Name constructor 
org.bouncycastle.crypto.macs.OldHMac(Digest)
          uses incorrect pad for SHA-512 and SHA-384 use HMac. 
org.bouncycastle.asn1.cms.OriginatorIdentifierOrKey(ASN1OctetString)
          use version taking a SubjectKeyIdentifier 
org.bouncycastle.asn1.cms.OriginatorIdentifierOrKey(ASN1Primitive)
          use more specific version 
org.bouncycastle.asn1.x509.PolicyMappings(Hashtable)
          use CertPolicyId constructors. 
org.bouncycastle.asn1.x509.PolicyQualifierInfo(ASN1Sequence)
          use PolicyQualifierInfo.getInstance() 
org.bouncycastle.asn1.ocsp.ResponseData(ResponderID, ASN1GeneralizedTime, ASN1Sequence, X509Extensions)
          use method taking Extensions 
org.bouncycastle.asn1.cmp.RevDetails(CertTemplate, X509Extensions)
          use method taking Extensions 
org.bouncycastle.asn1.ocsp.SingleResponse(CertID, CertStatus, ASN1GeneralizedTime, ASN1GeneralizedTime, X509Extensions)
          use method taking ASN1GeneralizedTime and Extensions 
org.bouncycastle.asn1.x509.SubjectPublicKeyInfo(ASN1Sequence)
          use SubjectPublicKeyInfo.getInstance() 
org.bouncycastle.asn1.ocsp.TBSRequest(GeneralName, ASN1Sequence, X509Extensions)
          use method taking Extensions 
org.bouncycastle.asn1.x500.X500Name(X500NameStyle, X500Name)
          use the getInstance() method that takes a style. 
org.bouncycastle.asn1.x509.X509Extensions(Vector, Hashtable)
          use Extensions 
org.bouncycastle.asn1.x509.X509Extensions(Vector, Vector)
          use Extensions 
org.bouncycastle.asn1.x509.X509Name(ASN1Sequence)
          use X500Name.getInstance() 
org.bouncycastle.asn1.x509.X509Name(boolean, Hashtable, String)
          use X500Name, X500NameBuilder 
org.bouncycastle.asn1.x509.X509Name(boolean, String)
          use X500Name, X500NameBuilder 
org.bouncycastle.asn1.x509.X509Name(boolean, String, X509NameEntryConverter)
          use X500Name, X500NameBuilder 
org.bouncycastle.asn1.x509.X509Name(Hashtable)
          use an ordered constructor! The hashtable ordering is rarely correct 
org.bouncycastle.asn1.x509.X509Name(String)
          use X500Name, X500NameBuilder 
org.bouncycastle.asn1.x509.X509Name(String, X509NameEntryConverter)
          use X500Name, X500NameBuilder 
org.bouncycastle.asn1.x509.X509Name(Vector, Hashtable, X509NameEntryConverter)
          use X500Name, X500NameBuilder 
org.bouncycastle.asn1.x509.X509Name(Vector, Vector)
          use X500Name, X500NameBuilder 
org.bouncycastle.asn1.x509.X509Name(Vector, Vector, X509NameEntryConverter)
          use X500Name, X500NameBuilder 
 


Bouncy Castle Cryptography Library 1.71