org.bouncycastle.asn1.x509.ExtendedKeyUsage.<init>()方法的使用及代码示例

x33g5p2x  于2022-01-19 转载在 其他  
字(10.1k)|赞(0)|评价(0)|浏览(79)

本文整理了Java中org.bouncycastle.asn1.x509.ExtendedKeyUsage.<init>()方法的一些代码示例,展示了ExtendedKeyUsage.<init>()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ExtendedKeyUsage.<init>()方法的具体详情如下:
包路径:org.bouncycastle.asn1.x509.ExtendedKeyUsage
类名称:ExtendedKeyUsage
方法名:<init>

ExtendedKeyUsage.<init>介绍

暂无

代码示例

代码示例来源:origin: apache/zookeeper

Extension.extendedKeyUsage,
true,
new ExtendedKeyUsage(new KeyPurposeId[] { KeyPurposeId.id_kp_serverAuth, KeyPurposeId.id_kp_clientAuth }));

代码示例来源:origin: apache/nifi

certBuilder.addExtension(Extension.extendedKeyUsage, false, new ExtendedKeyUsage(new KeyPurposeId[]{KeyPurposeId.id_kp_clientAuth, KeyPurposeId.id_kp_serverAuth}));

代码示例来源:origin: apache/nifi

certBuilder.addExtension(Extension.extendedKeyUsage, false, new ExtendedKeyUsage(new KeyPurposeId[]{KeyPurposeId.id_kp_clientAuth, KeyPurposeId.id_kp_serverAuth}));

代码示例来源:origin: hyperledger/fabric-sdk-java

ExtendedKeyUsage keyUsage() {
    KeyPurposeId[] kpid = new KeyPurposeId[]{KeyPurposeId.id_kp_clientAuth};
    if (this.ordinal() == 1) {
      kpid[0] = KeyPurposeId.id_kp_serverAuth;
    }
    return new ExtendedKeyUsage(kpid);
  }
}

代码示例来源:origin: org.hyperledger.fabric-sdk-java/fabric-sdk-java

ExtendedKeyUsage keyUsage() {
    KeyPurposeId[] kpid = new KeyPurposeId[]{KeyPurposeId.id_kp_clientAuth};
    if (this.ordinal() == 1) {
      kpid[0] = KeyPurposeId.id_kp_serverAuth;
    }
    return new ExtendedKeyUsage(kpid);
  }
}

代码示例来源:origin: org.codeartisans.qipki/qipki-crypto

@Override
public ExtendedKeyUsage buildExtendedKeyUsage( Set<org.qipki.crypto.x509.ExtendedKeyUsage> extendedKeyUsages )
{
  return new ExtendedKeyUsage( org.qipki.crypto.x509.ExtendedKeyUsage.usage( extendedKeyUsages ) );
}

代码示例来源:origin: puppetlabs/ssl-utils

private static ExtendedKeyUsage listToExtendedKeyUsage(List<String> oidList) {
  List<KeyPurposeId> usages = new ArrayList<KeyPurposeId>();
  for (String oid : oidList) {
    usages.add(KeyPurposeId.getInstance(new ASN1ObjectIdentifier(oid)));
  }
  return new ExtendedKeyUsage(usages.toArray(new KeyPurposeId[usages.size()]));
}

代码示例来源:origin: puppetlabs/certificate-authority

private static ExtendedKeyUsage listToExtendedKeyUsage(List<String> oidList) {
  List<KeyPurposeId> usages = new ArrayList<KeyPurposeId>();
  for (String oid : oidList) {
    usages.add(KeyPurposeId.getInstance(new ASN1ObjectIdentifier(oid)));
  }
  return new ExtendedKeyUsage(usages.toArray(new KeyPurposeId[usages.size()]));
}

代码示例来源:origin: redfish64/TinyTravelTracker

/**
 * Return an ExtendedKeyUsage from the passed in object.
 *
 * @param obj an ExtendedKeyUsage, some form or encoding of one, or null.
 * @return  an ExtendedKeyUsage object, or null if null is passed in.
 */
public static ExtendedKeyUsage getInstance(
  Object obj)
{
  if (obj instanceof ExtendedKeyUsage) 
  {
    return (ExtendedKeyUsage)obj;
  }
  else if (obj != null)
  {
    return new ExtendedKeyUsage(ASN1Sequence.getInstance(obj));
  }
  return null;
}

代码示例来源:origin: org.bouncycastle/bcprov-debug-jdk15on

/**
 * Return an ExtendedKeyUsage from the passed in object.
 *
 * @param obj an ExtendedKeyUsage, some form or encoding of one, or null.
 * @return  an ExtendedKeyUsage object, or null if null is passed in.
 */
public static ExtendedKeyUsage getInstance(
  Object obj)
{
  if (obj instanceof ExtendedKeyUsage) 
  {
    return (ExtendedKeyUsage)obj;
  }
  else if (obj != null)
  {
    return new ExtendedKeyUsage(ASN1Sequence.getInstance(obj));
  }
  return null;
}

代码示例来源:origin: org.xwiki.commons/xwiki-commons-crypto-pkix

/**
   * Convert a set of extended key usages to Bouncy Castle extended key usage.
   *
   * @param usages the set of authorized usages.
   * @return a bit mask
   */
  public static ExtendedKeyUsage getExtendedKeyUsage(Set<String> usages)
  {
    KeyPurposeId[] keyUsages = new KeyPurposeId[usages.size()];
    int i = 0;

    for (String usage : usages) {
      keyUsages[i++] = KeyPurposeId.getInstance(new ASN1ObjectIdentifier(usage));
    }

    return new ExtendedKeyUsage(keyUsages);
  }
}

代码示例来源:origin: org.xipki/security

public static ExtendedKeyUsage createExtendedUsage(Collection<ASN1ObjectIdentifier> usages) {
 if (CollectionUtil.isEmpty(usages)) {
  return null;
 }
 List<ASN1ObjectIdentifier> list = new ArrayList<>(usages);
 List<ASN1ObjectIdentifier> sortedUsages = sortOidList(list);
 KeyPurposeId[] kps = new KeyPurposeId[sortedUsages.size()];
 int idx = 0;
 for (ASN1ObjectIdentifier oid : sortedUsages) {
  kps[idx++] = KeyPurposeId.getInstance(oid);
 }
 return new ExtendedKeyUsage(kps);
}

代码示例来源:origin: org.xipki.tk/security

public static ExtendedKeyUsage createExtendedUsage(
    final Collection<ASN1ObjectIdentifier> usages) {
  if (CollectionUtil.isEmpty(usages)) {
    return null;
  }
  List<ASN1ObjectIdentifier> list = new ArrayList<>(usages);
  List<ASN1ObjectIdentifier> sortedUsages = sortOidList(list);
  KeyPurposeId[] kps = new KeyPurposeId[sortedUsages.size()];
  int idx = 0;
  for (ASN1ObjectIdentifier oid : sortedUsages) {
    kps[idx++] = KeyPurposeId.getInstance(oid);
  }
  return new ExtendedKeyUsage(kps);
}

代码示例来源:origin: vmware/admiral

private static List<ExtensionHolder> getClientExtensions() {
  List<ExtensionHolder> extensions = new ArrayList<>();
  extensions.add(new ExtensionHolder(Extension.basicConstraints, true,
      new BasicConstraints(false)));
  extensions.add(new ExtensionHolder(Extension.keyUsage, true,
      new KeyUsage(KeyUsage.digitalSignature)));
  extensions.add(new ExtensionHolder(Extension.extendedKeyUsage, true,
      new ExtendedKeyUsage(KeyPurposeId.id_kp_clientAuth)));
  return extensions;
}

代码示例来源:origin: igniterealtime/Spark

public X509Certificate createSelfSignedCertificate(KeyPair keyPair) throws NoSuchAlgorithmException, NoSuchProviderException, CertIOException, OperatorCreationException, CertificateException {

    long serial = System.currentTimeMillis();
    SubjectPublicKeyInfo keyInfo = SubjectPublicKeyInfo.getInstance(keyPair.getPublic().getEncoded());
    X500Name name = new X500Name(createX500NameString());
    X509v3CertificateBuilder certBuilder = new X509v3CertificateBuilder(name, 
                                      BigInteger.valueOf(serial), 
                                      new Date(System.currentTimeMillis() - 1000000000), 
                                      new Date(System.currentTimeMillis() + 1000000000),
                                      name, 
                                      keyInfo
                                      );
    certBuilder.addExtension(Extension.basicConstraints, true, new BasicConstraints(true)); 
    certBuilder.addExtension(Extension.keyUsage,         true, new KeyUsage(KeyUsage.digitalSignature | KeyUsage.keyEncipherment));
    certBuilder.addExtension(Extension.extendedKeyUsage, true, new ExtendedKeyUsage(KeyPurposeId.id_kp_clientAuth));
  
    JcaContentSignerBuilder csBuilder = new JcaContentSignerBuilder("SHA256withRSA");
    ContentSigner signer = csBuilder.build(keyPair.getPrivate());
    X509CertificateHolder certHolder = certBuilder.build(signer);
    X509Certificate cert = new JcaX509CertificateConverter().getCertificate(certHolder);
    
    return cert;
  }
}

代码示例来源:origin: vmware/admiral

private static List<ExtensionHolder> getServerExtensions(X509Certificate issuerCertificate)
    throws CertificateEncodingException, NoSuchAlgorithmException, IOException {
  List<ExtensionHolder> extensions = new ArrayList<>();
  // SSO forces us to allow data encipherment
  extensions.add(new ExtensionHolder(Extension.keyUsage, true, new KeyUsage(
      KeyUsage.digitalSignature
          | KeyUsage.keyEncipherment
          | KeyUsage.dataEncipherment)));
  extensions.add(new ExtensionHolder(Extension.extendedKeyUsage, true,
      new ExtendedKeyUsage(KeyPurposeId.id_kp_serverAuth)));
  Extension authorityKeyExtension = new Extension(Extension.authorityKeyIdentifier, false,
      new DEROctetString(new JcaX509ExtensionUtils()
          .createAuthorityKeyIdentifier(issuerCertificate)));
  extensions.add(new ExtensionHolder(authorityKeyExtension.getExtnId(),
      authorityKeyExtension.isCritical(), authorityKeyExtension.getParsedValue()));
  return extensions;
}

代码示例来源:origin: kaikramer/keystore-explorer

private void addExtKeyUsage(X509ExtensionSet extensionSet, String ekuOid) throws IOException {
  ExtendedKeyUsage eku = new ExtendedKeyUsage(
      new KeyPurposeId[] { KeyPurposeId.getInstance(new ASN1ObjectIdentifier(ekuOid)) });
  byte[] ekuEncoded = wrapInOctetString(eku.getEncoded());
  extensionSet.addExtension(X509ExtensionType.EXTENDED_KEY_USAGE.oid(), false, ekuEncoded);
}

代码示例来源:origin: org.apache.nifi/nifi-security-utils

certBuilder.addExtension(Extension.extendedKeyUsage, false, new ExtendedKeyUsage(new KeyPurposeId[]{KeyPurposeId.id_kp_clientAuth, KeyPurposeId.id_kp_serverAuth}));

代码示例来源:origin: DeviceConnect/DeviceConnect-Android

private X509Certificate generateX509V3Certificate(final KeyPair keyPair,
                         final X500Principal subject,
                         final X500Principal issuer,
                         final Date notBefore,
                         final Date notAfter,
                         final BigInteger serialNumber,
                         final GeneralNames generalNames,
                         final boolean isCA) throws GeneralSecurityException {
  Security.addProvider(new BouncyCastleProvider());
  X509V3CertificateGenerator generator = new X509V3CertificateGenerator();
  generator.setSerialNumber(serialNumber);
  generator.setIssuerDN(issuer);
  generator.setSubjectDN(subject);
  generator.setNotBefore(notBefore);
  generator.setNotAfter(notAfter);
  generator.setPublicKey(keyPair.getPublic());
  generator.setSignatureAlgorithm("SHA256WithRSAEncryption");
  generator.addExtension(X509Extensions.BasicConstraints, true, new BasicConstraints(isCA));
  generator.addExtension(X509Extensions.KeyUsage, true, new KeyUsage(160));
  generator.addExtension(X509Extensions.ExtendedKeyUsage, true, new ExtendedKeyUsage(KeyPurposeId.id_kp_serverAuth));
  if (generalNames != null) {
    generator.addExtension(X509Extensions.SubjectAlternativeName, false, generalNames);
  }
  return generator.generateX509Certificate(keyPair.getPrivate(), "BC");
}

代码示例来源:origin: mesosphere/dcos-commons

private byte[] createCSR() throws IOException, OperatorCreationException {
  KeyPair keyPair = KEY_PAIR_GENERATOR.generateKeyPair();
  X500Name name = new X500NameBuilder()
      .addRDN(BCStyle.CN, "issuer")
      .build();
  ExtensionsGenerator extensionsGenerator = new ExtensionsGenerator();
  extensionsGenerator.addExtension(
      Extension.keyUsage, true, new KeyUsage(KeyUsage.digitalSignature));
  extensionsGenerator.addExtension(
      Extension.extendedKeyUsage,
      true,
      new ExtendedKeyUsage(
          new KeyPurposeId[] {
              KeyPurposeId.id_kp_clientAuth,
              KeyPurposeId.id_kp_serverAuth }
      ));
  GeneralNames subAtlNames = new GeneralNames(
      new GeneralName[]{
          new GeneralName(GeneralName.dNSName, "test.com"),
          new GeneralName(GeneralName.iPAddress, TEST_IP_ADDR),
      }
  );
  extensionsGenerator.addExtension(
      Extension.subjectAlternativeName, true, subAtlNames);
  ContentSigner signer = new JcaContentSignerBuilder("SHA256withRSA").build(keyPair.getPrivate());
  PKCS10CertificationRequestBuilder csrBuilder = new JcaPKCS10CertificationRequestBuilder(name, keyPair.getPublic())
      .addAttribute(PKCSObjectIdentifiers.pkcs_9_at_extensionRequest, extensionsGenerator.generate());
  return PEMUtils.toPEM(csrBuilder.build(signer));
}

相关文章