Updated BCDSA to latest bouncycastle version
This commit is contained in:
parent
f584446f85
commit
7537b91929
@ -15,10 +15,48 @@
|
|||||||
*/
|
*/
|
||||||
package dorkbox.util.crypto;
|
package dorkbox.util.crypto;
|
||||||
|
|
||||||
import dorkbox.util.Base64Fast;
|
import java.io.BufferedWriter;
|
||||||
import dorkbox.util.crypto.signers.BcECDSAContentSignerBuilder;
|
import java.io.ByteArrayInputStream;
|
||||||
import dorkbox.util.crypto.signers.BcECDSAContentVerifierProviderBuilder;
|
import java.io.FileWriter;
|
||||||
import org.bouncycastle.asn1.*;
|
import java.io.IOException;
|
||||||
|
import java.io.InputStream;
|
||||||
|
import java.io.OutputStream;
|
||||||
|
import java.io.Writer;
|
||||||
|
import java.lang.reflect.Method;
|
||||||
|
import java.math.BigInteger;
|
||||||
|
import java.security.InvalidKeyException;
|
||||||
|
import java.security.KeyFactory;
|
||||||
|
import java.security.NoSuchAlgorithmException;
|
||||||
|
import java.security.NoSuchProviderException;
|
||||||
|
import java.security.PrivateKey;
|
||||||
|
import java.security.Provider;
|
||||||
|
import java.security.PublicKey;
|
||||||
|
import java.security.Security;
|
||||||
|
import java.security.SignatureException;
|
||||||
|
import java.security.cert.CertificateEncodingException;
|
||||||
|
import java.security.cert.CertificateException;
|
||||||
|
import java.security.cert.X509Certificate;
|
||||||
|
import java.security.spec.DSAPublicKeySpec;
|
||||||
|
import java.security.spec.InvalidKeySpecException;
|
||||||
|
import java.security.spec.RSAPrivateCrtKeySpec;
|
||||||
|
import java.security.spec.RSAPublicKeySpec;
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.Enumeration;
|
||||||
|
|
||||||
|
import org.bouncycastle.asn1.ASN1EncodableVector;
|
||||||
|
import org.bouncycastle.asn1.ASN1Encoding;
|
||||||
|
import org.bouncycastle.asn1.ASN1InputStream;
|
||||||
|
import org.bouncycastle.asn1.ASN1Integer;
|
||||||
|
import org.bouncycastle.asn1.ASN1ObjectIdentifier;
|
||||||
|
import org.bouncycastle.asn1.ASN1Primitive;
|
||||||
|
import org.bouncycastle.asn1.ASN1Sequence;
|
||||||
|
import org.bouncycastle.asn1.ASN1Set;
|
||||||
|
import org.bouncycastle.asn1.ASN1TaggedObject;
|
||||||
|
import org.bouncycastle.asn1.BERSet;
|
||||||
|
import org.bouncycastle.asn1.DERBMPString;
|
||||||
|
import org.bouncycastle.asn1.DEROctetString;
|
||||||
|
import org.bouncycastle.asn1.DERSequence;
|
||||||
|
import org.bouncycastle.asn1.DERSet;
|
||||||
import org.bouncycastle.asn1.cms.CMSObjectIdentifiers;
|
import org.bouncycastle.asn1.cms.CMSObjectIdentifiers;
|
||||||
import org.bouncycastle.asn1.cms.ContentInfo;
|
import org.bouncycastle.asn1.cms.ContentInfo;
|
||||||
import org.bouncycastle.asn1.cms.IssuerAndSerialNumber;
|
import org.bouncycastle.asn1.cms.IssuerAndSerialNumber;
|
||||||
@ -80,33 +118,9 @@ import org.bouncycastle.operator.bc.BcRSAContentVerifierProviderBuilder;
|
|||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
import java.io.BufferedWriter;
|
import dorkbox.util.Base64Fast;
|
||||||
import java.io.ByteArrayInputStream;
|
import dorkbox.util.crypto.signers.BcECDSAContentSignerBuilder;
|
||||||
import java.io.FileWriter;
|
import dorkbox.util.crypto.signers.BcECDSAContentVerifierProviderBuilder;
|
||||||
import java.io.IOException;
|
|
||||||
import java.io.InputStream;
|
|
||||||
import java.io.OutputStream;
|
|
||||||
import java.io.Writer;
|
|
||||||
import java.lang.reflect.Method;
|
|
||||||
import java.math.BigInteger;
|
|
||||||
import java.security.InvalidKeyException;
|
|
||||||
import java.security.KeyFactory;
|
|
||||||
import java.security.NoSuchAlgorithmException;
|
|
||||||
import java.security.NoSuchProviderException;
|
|
||||||
import java.security.PrivateKey;
|
|
||||||
import java.security.Provider;
|
|
||||||
import java.security.PublicKey;
|
|
||||||
import java.security.Security;
|
|
||||||
import java.security.SignatureException;
|
|
||||||
import java.security.cert.CertificateEncodingException;
|
|
||||||
import java.security.cert.CertificateException;
|
|
||||||
import java.security.cert.X509Certificate;
|
|
||||||
import java.security.spec.DSAParameterSpec;
|
|
||||||
import java.security.spec.InvalidKeySpecException;
|
|
||||||
import java.security.spec.RSAPrivateCrtKeySpec;
|
|
||||||
import java.security.spec.RSAPublicKeySpec;
|
|
||||||
import java.util.Date;
|
|
||||||
import java.util.Enumeration;
|
|
||||||
|
|
||||||
public class CryptoX509 {
|
public class CryptoX509 {
|
||||||
|
|
||||||
@ -488,10 +502,12 @@ public class CryptoX509 {
|
|||||||
if (optionalOriginalPublicKey != null) {
|
if (optionalOriginalPublicKey != null) {
|
||||||
// absolutely RETARDED that we have package private constructors .. but fortunately, we can get around that
|
// absolutely RETARDED that we have package private constructors .. but fortunately, we can get around that
|
||||||
DSAParameters parameters = optionalOriginalPublicKey.getParameters();
|
DSAParameters parameters = optionalOriginalPublicKey.getParameters();
|
||||||
BCDSAPublicKey origPublicKey = BCDSAPublicKeyAccessor.newInstance(optionalOriginalPublicKey.getY(),
|
DSAPublicKeySpec dsaPublicKeySpec = new DSAPublicKeySpec(optionalOriginalPublicKey.getY(),
|
||||||
new DSAParameterSpec(parameters.getP(),
|
parameters.getP(),
|
||||||
parameters.getQ(),
|
parameters.getQ(),
|
||||||
parameters.getG()));
|
parameters.getG());
|
||||||
|
|
||||||
|
BCDSAPublicKey origPublicKey = BCDSAPublicKeyAccessor.newInstance(dsaPublicKeySpec);
|
||||||
boolean equals = origPublicKey.equals(publicKey2);
|
boolean equals = origPublicKey.equals(publicKey2);
|
||||||
if (!equals) {
|
if (!equals) {
|
||||||
return false;
|
return false;
|
||||||
|
@ -15,11 +15,10 @@
|
|||||||
*/
|
*/
|
||||||
package org.bouncycastle.jcajce.provider.asymmetric.dsa;
|
package org.bouncycastle.jcajce.provider.asymmetric.dsa;
|
||||||
|
|
||||||
import java.math.BigInteger;
|
import java.security.spec.DSAPublicKeySpec;
|
||||||
import java.security.spec.DSAParameterSpec;
|
|
||||||
|
|
||||||
public class BCDSAPublicKeyAccessor {
|
public class BCDSAPublicKeyAccessor {
|
||||||
public static BCDSAPublicKey newInstance(BigInteger bigInteger, DSAParameterSpec dsaParameterSpec) {
|
public static BCDSAPublicKey newInstance(DSAPublicKeySpec dsaPublicKeySpec) {
|
||||||
return new BCDSAPublicKey(bigInteger, dsaParameterSpec);
|
return new BCDSAPublicKey(dsaPublicKeySpec);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user