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

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

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

SubjectPublicKeyInfo.getAlgorithmId介绍

暂无

代码示例

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

protected static AlgorithmIdentifier getAlgorithmIdentifier(
  PublicKey key)
  throws CertPathValidatorException
{
  try
  {
    ASN1InputStream aIn = new ASN1InputStream(key.getEncoded());
    SubjectPublicKeyInfo info = SubjectPublicKeyInfo.getInstance(aIn.readObject());
    return info.getAlgorithmId();
  }
  catch (Exception e)
  {
    throw new ExtCertPathValidatorException("Subject public key cannot be decoded.", e);
  }
}

代码示例来源:origin: fr.opensagres.xdocreport.itext-gae/itext-gae

private KeyTransRecipientInfo computeRecipientInfo(X509Certificate x509certificate, byte[] abyte0)
    throws GeneralSecurityException, IOException
  {
    ASN1InputStream asn1inputstream = 
      new ASN1InputStream(new ByteArrayInputStream(x509certificate.getTBSCertificate()));
    TBSCertificateStructure tbscertificatestructure = 
      TBSCertificateStructure.getInstance(asn1inputstream.readObject());
    AlgorithmIdentifier algorithmidentifier = tbscertificatestructure.getSubjectPublicKeyInfo().getAlgorithmId();
    IssuerAndSerialNumber issuerandserialnumber = 
      new IssuerAndSerialNumber(
        tbscertificatestructure.getIssuer(), 
        tbscertificatestructure.getSerialNumber().getValue());
    Cipher cipher = Cipher.getInstance(algorithmidentifier.getObjectId().getId());        
    cipher.init(1, x509certificate);
    DEROctetString deroctetstring = new DEROctetString(cipher.doFinal(abyte0));
    RecipientIdentifier recipId = new RecipientIdentifier(issuerandserialnumber);
    return new KeyTransRecipientInfo( recipId, algorithmidentifier, deroctetstring);
  }
}

代码示例来源:origin: es.gob.afirma/afirma-crypto-pdf-itext

private KeyTransRecipientInfo computeRecipientInfo(final X509Certificate x509certificate, final byte[] abyte0)
    throws GeneralSecurityException, IOException
  {
    final ASN1InputStream asn1inputstream =
      new ASN1InputStream(new ByteArrayInputStream(x509certificate.getTBSCertificate()));
    final TBSCertificateStructure tbscertificatestructure =
      TBSCertificateStructure.getInstance(asn1inputstream.readObject());
    final AlgorithmIdentifier algorithmidentifier = tbscertificatestructure.getSubjectPublicKeyInfo().getAlgorithmId();
    final IssuerAndSerialNumber issuerandserialnumber =
      new IssuerAndSerialNumber(
        tbscertificatestructure.getIssuer(),
        tbscertificatestructure.getSerialNumber().getValue());
    final Cipher cipher = Cipher.getInstance(algorithmidentifier.getObjectId().getId());
    cipher.init(1, x509certificate);
    final DEROctetString deroctetstring = new DEROctetString(cipher.doFinal(abyte0));
    final RecipientIdentifier recipId = new RecipientIdentifier(issuerandserialnumber);
    return new KeyTransRecipientInfo( recipId, algorithmidentifier, deroctetstring);
  }
}

代码示例来源:origin: com.github.librepdf/openpdf

private KeyTransRecipientInfo computeRecipientInfo(
   X509Certificate x509certificate, byte[] abyte0)
   throws GeneralSecurityException, IOException {
  ASN1InputStream asn1inputstream = new ASN1InputStream(
    new ByteArrayInputStream(x509certificate.getTBSCertificate()));
  TBSCertificateStructure tbscertificatestructure = TBSCertificateStructure
    .getInstance(asn1inputstream.readObject());
  AlgorithmIdentifier algorithmidentifier = tbscertificatestructure
    .getSubjectPublicKeyInfo().getAlgorithmId();
  IssuerAndSerialNumber issuerandserialnumber = new IssuerAndSerialNumber(
    tbscertificatestructure.getIssuer(), tbscertificatestructure
      .getSerialNumber().getValue());
  Cipher cipher = Cipher.getInstance(algorithmidentifier.getAlgorithm()
    .getId());
  cipher.init(1, x509certificate);
  DEROctetString deroctetstring = new DEROctetString(cipher.doFinal(abyte0));
  RecipientIdentifier recipId = new RecipientIdentifier(issuerandserialnumber);
  return new KeyTransRecipientInfo(recipId, algorithmidentifier,
    deroctetstring);
 }
}

代码示例来源:origin: com.google.code.jscep/jscep-api

private RecipientInfo toRecipientInfo(X509Certificate cert, SecretKey key) throws CertificateEncodingException, IOException, NoSuchAlgorithmException, NoSuchPaddingException, InvalidKeyException, IllegalBlockSizeException {
    PublicKey pubKey = cert.getPublicKey();
    TBSCertificateStructure tbs = TBSCertificateStructure.getInstance(ASN1Object.fromByteArray(cert.getTBSCertificate()));
    AlgorithmIdentifier keyEncAlg = tbs.getSubjectPublicKeyInfo().getAlgorithmId();

    Cipher keyCipher = Cipher.getInstance("RSA");
    keyCipher.init(Cipher.WRAP_MODE, pubKey);
    ASN1OctetString encKey = new DEROctetString(keyCipher.wrap(key));
    
    ASN1InputStream aIn = new ASN1InputStream(cert.getTBSCertificate());
    tbs = TBSCertificateStructure.getInstance(aIn.readObject());
    IssuerAndSerialNumber encSid = new IssuerAndSerialNumber(tbs.getIssuer(), tbs.getSerialNumber().getValue());
    
    return new RecipientInfo(new KeyTransRecipientInfo(new RecipientIdentifier(encSid), keyEncAlg, encKey));
  }
}

代码示例来源:origin: DirectProject/nhin-d

/**
 * {@inheritDoc}
 */
@Override
public void injectReferenceValue(X509Certificate value) throws PolicyProcessException 
{
  this.certificate = value;
  
  DERObject tbsValue = null;
  
  try
  {
    tbsValue = this.getDERObject(certificate.getTBSCertificate());
  }
  ///CLOVER:OFF
  catch (Exception e)
  {
    throw new PolicyProcessException("Exception parsing TBS certificate fields.", e);
  }
  ///CLOVER:ON
  
  final TBSCertificateStructure tbsStruct = TBSCertificateStructure.getInstance(tbsValue);
  this.policyValue = PolicyValueFactory.getInstance(tbsStruct.getSubjectPublicKeyInfo().
      getAlgorithmId().getObjectId().toString());
}

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

ASN1Sequence seq = ASN1Sequence.getInstance(info.getAlgorithmId().getParameters());
ASN1ObjectIdentifier id = info.getAlgorithmId().getAlgorithm();

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

private void populateFromPubKeyInfo(SubjectPublicKeyInfo info)
  if (info.getAlgorithmId().getAlgorithm().equals(CryptoProObjectIdentifiers.gostR3410_2001))
    gostParams = new GOST3410PublicKeyAlgParameters((ASN1Sequence)info.getAlgorithmId().getParameters());
    X962Parameters params = new X962Parameters((ASN1Primitive)info.getAlgorithmId().getParameters());
    ECCurve                 curve;
    EllipticCurve           ellipticCurve;

相关文章