本文整理了Java中sun.security.x509.X509CertInfo
类的一些代码示例,展示了X509CertInfo
类的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。X509CertInfo
类的具体详情如下:
包路径:sun.security.x509.X509CertInfo
类名称:X509CertInfo
暂无
代码示例来源:origin: redisson/redisson
X509CertInfo info = new X509CertInfo();
X500Name owner = new X500Name("CN=" + fqdn);
info.set(X509CertInfo.VERSION, new CertificateVersion(CertificateVersion.V3));
info.set(X509CertInfo.SERIAL_NUMBER, new CertificateSerialNumber(new BigInteger(64, random)));
try {
info.set(X509CertInfo.SUBJECT, new CertificateSubjectName(owner));
} catch (CertificateException ignore) {
info.set(X509CertInfo.SUBJECT, owner);
info.set(X509CertInfo.ISSUER, new CertificateIssuerName(owner));
} catch (CertificateException ignore) {
info.set(X509CertInfo.ISSUER, owner);
info.set(X509CertInfo.VALIDITY, new CertificateValidity(notBefore, notAfter));
info.set(X509CertInfo.KEY, new CertificateX509Key(keypair.getPublic()));
info.set(X509CertInfo.ALGORITHM_ID,
new CertificateAlgorithmId(new AlgorithmId(AlgorithmId.sha256WithRSAEncryption_oid)));
info.set(CertificateAlgorithmId.NAME + '.' + CertificateAlgorithmId.ALGORITHM, cert.get(X509CertImpl.SIG_ALG));
cert = new X509CertImpl(info);
cert.sign(key, "SHA256withRSA");
代码示例来源:origin: OpenAttestation/OpenAttestation
/**
*
* @param dn like "CN=Dave, OU=JavaSoft, O=Sun Microsystems, C=US"
* @return
*/
public X509Builder subjectName(String dn) {
try {
certificateSubjectName = new CertificateSubjectName(new X500Name(dn));
info.set(X509CertInfo.SUBJECT, certificateSubjectName); // CertificateException, IOException
}
catch(Exception e) {
fault(e, "subjectName(%s)", dn);
}
return this;
}
代码示例来源:origin: stackoverflow.com
PrivateKey privkey = pair.getPrivate();
X509CertInfo info = new X509CertInfo();
Date from = new Date();
//Validity for next one year
Date to = new Date(from.getTime() + (365) * 86400000l);
CertificateValidity interval = new CertificateValidity(from, to);
BigInteger sn = new BigInteger(64, new SecureRandom());
X500Name owner = new X500Name(dn);
info.set(X509CertInfo.VALIDITY, interval);
info.set(X509CertInfo.SERIAL_NUMBER, new CertificateSerialNumber(sn));
info.set(X509CertInfo.SUBJECT, new CertificateSubjectName(owner));
info.set(X509CertInfo.ISSUER, new CertificateIssuerName(owner));
info.set(X509CertInfo.KEY, new CertificateX509Key(pair.getPublic()));
info.set(X509CertInfo.VERSION, new CertificateVersion(CertificateVersion.V3));
AlgorithmId algo = new AlgorithmId(AlgorithmId.md5WithRSAEncryption_oid);
info.set(X509CertInfo.ALGORITHM_ID, new CertificateAlgorithmId(algo));
// Sign the cert
X509CertImpl cert = new X509CertImpl(info);
cert.sign(privkey, algorithm);
//cert object is ready to use
代码示例来源:origin: stackoverflow.com
X500Name issuer = (X500Name) signerCertInfo.get(X509CertInfo.SUBJECT + "." + CertificateSubjectName.DN_NAME);
X509CertInfo certInfo = new X509CertInfo();
certInfo.set(X509CertInfo.VALIDITY, interval);
certInfo.set(X509CertInfo.SERIAL_NUMBER, new CertificateSerialNumber(new Random().nextInt() & 0x7fffffff));
certInfo.set(X509CertInfo.VERSION, new CertificateVersion(CertificateVersion.V3));
try {
certInfo.set(X509CertInfo.ALGORITHM_ID, new CertificateAlgorithmId(AlgorithmId.get(SIGNATURE_ALGORITHM)));
} catch (NoSuchAlgorithmException e) {
throw new RuntimeException(e);
certInfo.set(X509CertInfo.ISSUER, new CertificateIssuerName(issuer));
certInfo.set(X509CertInfo.KEY, new CertificateX509Key(csr.getSubjectPublicKeyInfo()));
certInfo.set(X509CertInfo.SUBJECT, new CertificateSubjectName(csr.getSubjectName()));
代码示例来源:origin: OpenAttestation/OpenAttestation
public X509Builder issuerName(String dn) {
try {
certificateIssuerName = new CertificateIssuerName(new X500Name(dn));
info.set(X509CertInfo.ISSUER, certificateIssuerName); // CertificateException, IOException
}
catch(Exception e) {
fault(e, "issuerName(%s)", dn);
}
return this;
}
代码示例来源:origin: OpenAttestation/OpenAttestation
public X509Builder issuerName(CertificateIssuerName certificateIssuerName) {
try {
this.certificateIssuerName = certificateIssuerName;
info.set(X509CertInfo.ISSUER, certificateIssuerName); // CertificateException, IOException
}
catch(Exception e) {
fault(e, "issuerName(%s)", certificateIssuerName==null?"null":certificateIssuerName.toString());
}
return this;
}
代码示例来源:origin: OpenAttestation/OpenAttestation
public X509Builder algorithm(AlgorithmId algorithmId) {
try {
this.algorithm = algorithmId; // new AlgorithmId(AlgorithmId.sha256WithRSAEncryption_oid); // md5WithRSAEncryption_oid
info.set(X509CertInfo.ALGORITHM_ID, new CertificateAlgorithmId(algorithm));
// info.set(CertificateAlgorithmId.NAME + "." + CertificateAlgorithmId.ALGORITHM, algorithm); // was present in older monolith version of the certificate factory, but it seems we don't really need it
}
catch(Exception e) {
fault(e, "algorithm(%s)", algorithmId.getName());
}
return this;
}
代码示例来源:origin: OpenAttestation/OpenAttestation
public X509Builder valid(Date from, Date to) {
try {
certificateValidity = new CertificateValidity(from, to);
info.set(X509CertInfo.VALIDITY, certificateValidity); // CertificateException, IOException
}
catch(Exception e) {
fault(e, "valid(%s,%s)", from==null?"null":from.toString(), to==null?"null":to.toString());
}
return this;
}
代码示例来源:origin: OpenAttestation/OpenAttestation
public X509Builder subjectName(X500Name subjectName) {
try {
certificateSubjectName = new CertificateSubjectName(subjectName);
info.set(X509CertInfo.SUBJECT, certificateSubjectName); // CertificateException, IOException
}
catch(Exception e) {
fault(e, "subjectName(%s)", subjectName==null?"null":subjectName.getRFC2253Name());
}
return this;
}
代码示例来源:origin: OpenAttestation/OpenAttestation
public X509Builder randomSerial() {
try {
BigInteger sn = new BigInteger(64, new SecureRandom());
certificateSerialNumber = new CertificateSerialNumber(sn);
info.set(X509CertInfo.SERIAL_NUMBER, certificateSerialNumber);
}
catch(Exception e) {
fault(e, "randomSerial");
}
return this;
}
代码示例来源:origin: OpenAttestation/OpenAttestation
public X509Builder subjectPublicKey(PublicKey publicKey) {
try {
subjectPublicKey = new CertificateX509Key(publicKey);
info.set(X509CertInfo.KEY, subjectPublicKey); // CertificateException, IOException
}
catch(Exception e) {
fault(e, "subjectPublicKey(%s)", publicKey==null?"null":String.format("%d bytes, %s %s",publicKey.getEncoded().length,publicKey.getAlgorithm(),publicKey.getFormat()));
}
return this;
}
代码示例来源:origin: Azure/azure-iot-sdk-java
private static X509Certificate createSignedCertificate(X509Certificate certificate, X509Certificate issuerCertificate,
PrivateKey issuerPrivateKey, boolean isLeaf)
throws CertificateException, IOException, NoSuchProviderException,
NoSuchAlgorithmException, InvalidKeyException, SignatureException
{
Principal issuer = issuerCertificate.getSubjectDN();
String issuerSigAlg = issuerCertificate.getSigAlgName();
byte[] inCertBytes = certificate.getTBSCertificate();
X509CertInfo info = new X509CertInfo(inCertBytes);
info.set(X509CertInfo.ISSUER, issuer);
if (!isLeaf)
{
CertificateExtensions exts = new CertificateExtensions();
BasicConstraintsExtension bce = new BasicConstraintsExtension(true, -1);
exts.set(BasicConstraintsExtension.NAME, new BasicConstraintsExtension(false, bce.getExtensionValue()));
info.set(X509CertInfo.EXTENSIONS, exts);
}
X509CertImpl outCert = new X509CertImpl(info);
outCert.sign(issuerPrivateKey, issuerSigAlg);
return outCert;
}
代码示例来源:origin: OpenAttestation/OpenAttestation
public X509Builder issuerName(X500Name issuerName) {
try {
certificateIssuerName = new CertificateIssuerName(issuerName);
info.set(X509CertInfo.ISSUER, certificateIssuerName); // CertificateException, IOException
}
catch(Exception e) {
fault(e, "issuerName(%s)", issuerName.getRFC2253Name());
}
return this;
}
代码示例来源:origin: OpenAttestation/OpenAttestation
public X509Builder certificateValidity(CertificateValidity certificateValidity) {
try {
this.certificateValidity = certificateValidity;
info.set(X509CertInfo.VALIDITY, certificateValidity); // CertificateException, IOException
}
catch(Exception e) {
fault(e, "certificateValidity(%s)", certificateValidity==null?"null":certificateValidity.toString());
}
return this;
}
代码示例来源:origin: OpenAttestation/OpenAttestation
public X509Builder certificateVersion(CertificateVersion version) {
try {
if( certificateVersion == null ) {
this.certificateVersion = version;
info.set(X509CertInfo.VERSION, certificateVersion); // CertificateException, IOException
}
else {
if( version != null && !certificateVersion.toString().equals(version.toString()) ) {
fault("certificateVersion(%s) conflicts with previously set certificateVersion(%s)", version.toString(), certificateVersion.toString());
}
}
}
catch(Exception e) {
fault(e, "certificateVersion(%d)", version==null?"null":version.toString());
}
return this;
}
代码示例来源:origin: OpenAttestation/OpenAttestation
public X509Builder extKeyUsage(ObjectIdentifier oid) {
try {
v3();
if( extendedKeyUsageExtensionList == null ) { extendedKeyUsageExtensionList = new Vector<ObjectIdentifier>(); }
extendedKeyUsageExtensionList.add(oid);
extendedKeyUsageExtension = new ExtendedKeyUsageExtension(extendedKeyUsageExtensionIsCritical, extendedKeyUsageExtensionList);
if( certificateExtensions == null ) { certificateExtensions = new CertificateExtensions(); }
certificateExtensions.set(extendedKeyUsageExtension.getExtensionId().toString(), extendedKeyUsageExtension);
info.set(X509CertInfo.EXTENSIONS, certificateExtensions);
}
catch(Exception e) {
fault(e, "extKeyUsage(%s)", oid.toString());
}
return this;
}
代码示例来源:origin: OpenAttestation/OpenAttestation
public X509Builder expires(long expiration, TimeUnit units) {
try {
Date from = new Date();
Date to = new Date(from.getTime() + TimeUnit.MILLISECONDS.convert(expiration, units));
certificateValidity = new CertificateValidity(from, to);
info.set(X509CertInfo.VALIDITY, certificateValidity); // CertificateException, IOException
}
catch(Exception e) {
fault(e, "expires(%d,%s)", expiration, units==null?"null":units.name());
}
return this;
}
代码示例来源:origin: wildfly/wildfly
X509CertInfo info = new X509CertInfo();
X500Name owner = new X500Name("CN=" + fqdn);
info.set(X509CertInfo.VERSION, new CertificateVersion(CertificateVersion.V3));
info.set(X509CertInfo.SERIAL_NUMBER, new CertificateSerialNumber(new BigInteger(64, random)));
try {
info.set(X509CertInfo.SUBJECT, new CertificateSubjectName(owner));
} catch (CertificateException ignore) {
info.set(X509CertInfo.SUBJECT, owner);
info.set(X509CertInfo.ISSUER, new CertificateIssuerName(owner));
} catch (CertificateException ignore) {
info.set(X509CertInfo.ISSUER, owner);
info.set(X509CertInfo.VALIDITY, new CertificateValidity(notBefore, notAfter));
info.set(X509CertInfo.KEY, new CertificateX509Key(keypair.getPublic()));
info.set(X509CertInfo.ALGORITHM_ID,
new CertificateAlgorithmId(new AlgorithmId(AlgorithmId.sha1WithRSAEncryption_oid)));
info.set(CertificateAlgorithmId.NAME + '.' + CertificateAlgorithmId.ALGORITHM, cert.get(X509CertImpl.SIG_ALG));
cert = new X509CertImpl(info);
cert.sign(key, "SHA1withRSA");
代码示例来源:origin: OpenAttestation/OpenAttestation
public X509Builder dnsAlternativeName(String dns) {
try {
v3();
String alternativeName = dns;
if (dns.startsWith("dns:")) {
alternativeName = dns.substring(4);
}
DNSName dnsName = new DNSName(alternativeName);
if( alternativeNames == null ) { alternativeNames = new GeneralNames(); }
alternativeNames.add(new GeneralName(dnsName));
SubjectAlternativeNameExtension san = new SubjectAlternativeNameExtension(alternativeNames);
if( certificateExtensions == null ) { certificateExtensions = new CertificateExtensions(); }
certificateExtensions.set(san.getExtensionId().toString(), san);
info.set(X509CertInfo.EXTENSIONS, certificateExtensions);
}
catch(Exception e) {
fault(e, "dnsAlternativeName(%s)", dns);
}
return this;
}
代码示例来源:origin: stackoverflow.com
X509CertInfo info = new X509CertInfo();
Date from = new Date();
Date to = new Date(from.getTime() + days * 86400000l);
CertificateValidity interval = new CertificateValidity(from, to);
BigInteger sn = new BigInteger(64, new SecureRandom());
X500Name owner = new X500Name(dn);
info.set(X509CertInfo.VALIDITY, interval);
info.set(X509CertInfo.SERIAL_NUMBER, new CertificateSerialNumber(sn));
info.set(X509CertInfo.SUBJECT, new CertificateSubjectName(owner));
info.set(X509CertInfo.ISSUER, new CertificateIssuerName(owner));
info.set(X509CertInfo.KEY, new CertificateX509Key(pair.getPublic()));
info.set(X509CertInfo.VERSION, new CertificateVersion(CertificateVersion.V3));
AlgorithmId algo = new AlgorithmId(AlgorithmId.md5WithRSAEncryption_oid);
info.set(X509CertInfo.ALGORITHM_ID, new CertificateAlgorithmId(algo));
info.set(CertificateAlgorithmId.NAME + "." + CertificateAlgorithmId.ALGORITHM, algo);
cert = new X509CertImpl(info);
cert.sign(privkey, algorithm);
内容来源于网络,如有侵权,请联系作者删除!