org.bouncycastle.asn1.x509.SubjectPublicKeyInfo.getPublicKeyData()方法的使用及代码示例

x33g5p2x  于2022-01-30 转载在 其他  
字(8.4k)|赞(0)|评价(0)|浏览(173)

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

SubjectPublicKeyInfo.getPublicKeyData介绍

[英]for when the public key is raw bits.
[中]当公钥是原始位时。

代码示例

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

private byte[] getKeyHashFromCertHolder(X509CertificateHolder certHolder) throws IOException
{
  // https://tools.ietf.org/html/rfc2560#section-4.2.1
  // KeyHash ::= OCTET STRING -- SHA-1 hash of responder's public key
  //         -- (i.e., the SHA-1 hash of the value of the
  //         -- BIT STRING subjectPublicKey [excluding
  //         -- the tag, length, and number of unused
  //         -- bits] in the responder's certificate)
  // code below inspired by org.bouncycastle.cert.ocsp.CertificateID.createCertID()
  // tested with SO52757037-Signed3-OCSP-with-KeyHash.pdf
  SubjectPublicKeyInfo info = certHolder.getSubjectPublicKeyInfo();
  try
  {
    return MessageDigest.getInstance("SHA-1").digest(info.getPublicKeyData().getBytes());
  }
  catch (NoSuchAlgorithmException ex)
  {
    // should not happen
    LOG.error("SHA-1 Algorithm not found", ex);
    return new byte[0];
  }
}

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

private static byte[] getRawKey(SubjectPublicKeyInfo keyInfo, Object defaultParams, int expectedSize)
  {
    /*
     * TODO[RFC 8422]
     * - Require defaultParams == null?
     * - Require keyInfo.getAlgorithm().getParameters() == null?
     */
    byte[] result = keyInfo.getPublicKeyData().getOctets();
    if (expectedSize != result.length)
    {
      throw new RuntimeException("public key encoding has incorrect length");
    }
    return result;
  }
}

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

AsymmetricKeyParameter getPublicKeyParameters(SubjectPublicKeyInfo keyInfo, Object defaultParams)
    throws IOException
  {
    return new NHPublicKeyParameters(keyInfo.getPublicKeyData().getBytes());
  }
}

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

private DERBitString getPublicKeyDetails(BCECGOST3410_2012PublicKey pub)
{
  SubjectPublicKeyInfo info = SubjectPublicKeyInfo.getInstance(pub.getEncoded());
  return info.getPublicKeyData();
}

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

private byte[] encodeEcPublicKeyAsBitString(ECPublicKey ecPublicKey) {
  SubjectPublicKeyInfo publicKeyInfo = SubjectPublicKeyInfo.getInstance(ecPublicKey.getEncoded());
  byte[] bytes = publicKeyInfo.getPublicKeyData().getBytes();
  return bytes;
}

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

private DERBitString getPublicKeyDetails(BCECGOST3410PublicKey pub)
{
  try
  {
    SubjectPublicKeyInfo info = SubjectPublicKeyInfo.getInstance(ASN1Primitive.fromByteArray(pub.getEncoded()));
    return info.getPublicKeyData();
  }
  catch (IOException e)
  {   // should never happen
    return null;
  }
}

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

private DERBitString getPublicKeyDetails(BCDSTU4145PublicKey pub)
{
  try
  {
    SubjectPublicKeyInfo info = SubjectPublicKeyInfo.getInstance(ASN1Primitive.fromByteArray(pub.getEncoded()));
    return info.getPublicKeyData();
  }
  catch (IOException e)
  {   // should never happen
    return null;
  }
}

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

private DERBitString getPublicKeyDetails(BCECPublicKey pub)
{
  try
  {
    SubjectPublicKeyInfo info = SubjectPublicKeyInfo.getInstance(ASN1Primitive.fromByteArray(pub.getEncoded()));
    return info.getPublicKeyData();
  }
  catch (IOException e)
  {   // should never happen
    return null;
  }
}

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

private static NHPublicKeyParameters getPublicKey(byte[] enc)
  {
    SubjectPublicKeyInfo pki = SubjectPublicKeyInfo.getInstance(enc);

    return new NHPublicKeyParameters(pki.getPublicKeyData().getOctets());
  }
}

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

private DERBitString getPublicKeyDetails(JCEECPublicKey   pub)
{
  try
  {
    SubjectPublicKeyInfo info = SubjectPublicKeyInfo.getInstance(ASN1Primitive.fromByteArray(pub.getEncoded()));
    return info.getPublicKeyData();
  }
  catch (IOException e)
  {   // should never happen
    return null;
  }
}

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

private void populateFromPubKeyInfo(SubjectPublicKeyInfo keyInfo)
{
  if (EdECObjectIdentifiers.id_X448.equals(keyInfo.getAlgorithm().getAlgorithm()))
  {
    xdhPublicKey = new X448PublicKeyParameters(keyInfo.getPublicKeyData().getOctets(), 0);
  }
  else
  {
    xdhPublicKey = new X25519PublicKeyParameters(keyInfo.getPublicKeyData().getOctets(), 0);
  }
}

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

private void populateFromPubKeyInfo(SubjectPublicKeyInfo keyInfo)
{
  if (EdECObjectIdentifiers.id_Ed448.equals(keyInfo.getAlgorithm().getAlgorithm()))
  {
    eddsaPublicKey = new Ed448PublicKeyParameters(keyInfo.getPublicKeyData().getOctets(), 0);
  }
  else
  {
    eddsaPublicKey = new Ed25519PublicKeyParameters(keyInfo.getPublicKeyData().getOctets(), 0);
  }
}

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

AsymmetricKeyParameter getPublicKeyParameters(SubjectPublicKeyInfo keyInfo, Object defaultParams)
    throws IOException
  {
    return new QTESLAPublicKeyParameters(Utils.qTeslaLookupSecurityCategory(keyInfo.getAlgorithm()), keyInfo.getPublicKeyData().getOctets());
  }
}

代码示例来源:origin: org.xipki.pki/ca-qa

private void checkExtensionSubjectKeyIdentifier(final StringBuilder failureMsg,
    final byte[] extensionValue, final SubjectPublicKeyInfo subjectPublicKeyInfo) {
  // subjectKeyIdentifier
  SubjectKeyIdentifier asn1 = SubjectKeyIdentifier.getInstance(extensionValue);
  byte[] ski = asn1.getKeyIdentifier();
  byte[] pkData = subjectPublicKeyInfo.getPublicKeyData().getBytes();
  byte[] expectedSki = HashAlgoType.SHA1.hash(pkData);
  if (!Arrays.equals(expectedSki, ski)) {
    addViolation(failureMsg, "SKI", hex(ski), hex(expectedSki));
  }
} // method checkExtensionSubjectKeyIdentifier

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

private static byte[] getDigest(SubjectPublicKeyInfo spki)
{
  Digest digest = DigestFactory.createSHA1();
  byte[]  resBuf = new byte[digest.getDigestSize()];
  byte[] bytes = spki.getPublicKeyData().getBytes();
  digest.update(bytes, 0, bytes.length);
  digest.doFinal(resBuf, 0);
  return resBuf;
}

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

AsymmetricKeyParameter getPublicKeyParameters(SubjectPublicKeyInfo keyInfo, Object defaultParams)
    throws IOException
  {
    return new SPHINCSPublicKeyParameters(keyInfo.getPublicKeyData().getBytes(),
            Utils.sphincs256LookupTreeAlgName(SPHINCS256KeyParams.getInstance(keyInfo.getAlgorithm().getParameters())));
  }
}

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

public IssuerHash(final HashAlgoType hashAlgo, final Certificate issuerCert)
    throws IOException {
  this.hashAlgo = ParamUtil.requireNonNull("hashAlgo", hashAlgo);
  ParamUtil.requireNonNull("issuerCert", issuerCert);
  byte[] encodedName = issuerCert.getSubject().getEncoded();
  byte[] encodedKey = issuerCert.getSubjectPublicKeyInfo().getPublicKeyData().getBytes();
  this.issuerNameHash = HashCalculator.hash(hashAlgo, encodedName);
  this.issuerKeyHash = HashCalculator.hash(hashAlgo, encodedKey);
}

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

public IssuerHash(HashAlgo hashAlgo, Certificate issuerCert) throws IOException {
 this.hashAlgo = Args.notNull(hashAlgo, "hashAlgo");
 Args.notNull(issuerCert, "issuerCert");
 byte[] encodedName = issuerCert.getSubject().getEncoded();
 byte[] encodedKey = issuerCert.getSubjectPublicKeyInfo().getPublicKeyData().getBytes();
 this.issuerNameHash = HashCalculator.hash(hashAlgo, encodedName);
 this.issuerKeyHash = HashCalculator.hash(hashAlgo, encodedKey);
}

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

/**
 * create an AuthorityKeyIdentifier with the GeneralNames tag and
 * the serial number provided as well.
 * @deprecated create the extension using org.bouncycastle.cert.X509ExtensionUtils
 */
public AuthorityKeyIdentifier(
  SubjectPublicKeyInfo    spki,
  GeneralNames            name,
  BigInteger              serialNumber)
{
  Digest  digest = new SHA1Digest();
  byte[]  resBuf = new byte[digest.getDigestSize()];
  byte[] bytes = spki.getPublicKeyData().getBytes();
  digest.update(bytes, 0, bytes.length);
  digest.doFinal(resBuf, 0);
  this.keyidentifier = new DEROctetString(resBuf);
  this.certissuer = GeneralNames.getInstance(name.toASN1Primitive());
  this.certserno = new ASN1Integer(serialNumber);
}

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

/**
 * create an AuthorityKeyIdentifier with the GeneralNames tag and
 * the serial number provided as well.
 * @deprecated create the extension using org.bouncycastle.cert.X509ExtensionUtils
 */
public AuthorityKeyIdentifier(
  SubjectPublicKeyInfo    spki,
  GeneralNames            name,
  BigInteger              serialNumber)
{
  Digest  digest = new SHA1Digest();
  byte[]  resBuf = new byte[digest.getDigestSize()];
  byte[] bytes = spki.getPublicKeyData().getBytes();
  digest.update(bytes, 0, bytes.length);
  digest.doFinal(resBuf, 0);
  this.keyidentifier = new DEROctetString(resBuf);
  this.certissuer = GeneralNames.getInstance(name.toASN1Primitive());
  this.certserno = new ASN1Integer(serialNumber);
}

相关文章