public SubjectKeyIdentifier getSubjectKeyIdentifier() { if (id instanceof ASN1TaggedObject && ((ASN1TaggedObject)id).getTagNo() == 0) { return SubjectKeyIdentifier.getInstance((ASN1TaggedObject)id, false); } return null; }
public SubjectKeyIdentifier getSubjectKeyIdentifier() { if (id instanceof ASN1TaggedObject && ((ASN1TaggedObject)id).getTagNo() == 0) { return SubjectKeyIdentifier.getInstance((ASN1TaggedObject)id, false); } return null; }
public static SubjectKeyIdentifier getInstance( ASN1TaggedObject obj, boolean explicit) { return getInstance(ASN1OctetString.getInstance(obj, explicit)); }
public static SubjectKeyIdentifier getInstance( ASN1TaggedObject obj, boolean explicit) { return getInstance(ASN1OctetString.getInstance(obj, explicit)); }
public static SubjectKeyIdentifier fromExtensions(Extensions extensions) { return SubjectKeyIdentifier.getInstance(extensions.getExtensionParsedValue(Extension.subjectKeyIdentifier)); }
public static SubjectKeyIdentifier fromExtensions(Extensions extensions) { return SubjectKeyIdentifier.getInstance(extensions.getExtensionParsedValue(Extension.subjectKeyIdentifier)); }
private String getSubjectKeyIndentifierStringValue(byte[] value) throws IOException { // @formatter:off /* * SubjectKeyIdentifier ::= KeyIdentifier * * KeyIdentifier ::= OCTET STRING */ // @formatter:on StringBuilder sb = new StringBuilder(); SubjectKeyIdentifier subjectKeyIdentifier = SubjectKeyIdentifier.getInstance(value); // Get key identifier from octet string byte[] keyIdentifierBytes = subjectKeyIdentifier.getKeyIdentifier(); sb.append(MessageFormat.format(res.getString("SubjectKeyIdentifier"), HexUtil.getHexString(keyIdentifierBytes))); sb.append(NEWLINE); return sb.toString(); }
private void prepopulateWithValue(byte[] value) throws IOException { SubjectKeyIdentifier subjectKeyIdentifier = SubjectKeyIdentifier.getInstance(value); jkiKeyIdentifier.setKeyIdentifier(subjectKeyIdentifier.getKeyIdentifier()); }
private String subjectKeyIdentifierExtractor(ASN1Primitive primitive) { SubjectKeyIdentifier subjectKeyIdentifier = SubjectKeyIdentifier.getInstance(primitive); return Hex.toHexString(subjectKeyIdentifier.getKeyIdentifier()); }
/** * Reads the value of the <code>SubjectKeyIdentifier</code> extension field of the certificate. * * @return Subject key identifier. * * @throws EncodingException On certificate field parse errors. */ public SubjectKeyIdentifier readSubjectKeyIdentifier() throws EncodingException { try { return SubjectKeyIdentifier.getInstance(read(ExtensionType.SubjectKeyIdentifier)); } catch (RuntimeException e) { throw new EncodingException("SubjectKeyIdentifier parse error", e); } }
private byte[] getSubjectKeyId(X509Certificate cert) throws IOException { byte[] extvalue = cert.getExtensionValue(X509Extensions.SubjectKeyIdentifier.getId()); if (extvalue == null) { return null; } ASN1OctetString str = ASN1OctetString .getInstance(new ASN1InputStream(new ByteArrayInputStream(extvalue)).readObject()); SubjectKeyIdentifier keyId = SubjectKeyIdentifier .getInstance(new ASN1InputStream(new ByteArrayInputStream(str.getOctets())).readObject()); return keyId.getKeyIdentifier(); }
public static byte[] getSubjectKeyIdentifierBytes(X509Certificate cert) { byte[] extensionValue = cert.getExtensionValue("2.5.29.14"); //NOPMD if (extensionValue != null) { byte[] subjectOctets = ASN1OctetString.getInstance(extensionValue).getOctets(); SubjectKeyIdentifier subjectKeyIdentifier = SubjectKeyIdentifier.getInstance(subjectOctets); return subjectKeyIdentifier.getKeyIdentifier(); } return null; }
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
return new OriginatorIdentifierOrKey(SubjectKeyIdentifier.getInstance(tagged, false));
private String getCertificateSKI(String alias, KeyStore keyStore) throws CryptoException, KeyStoreException { X509Certificate x509Cert = getCertificate(alias, keyStore); try { byte[] skiValue = x509Cert.getExtensionValue(Extension.subjectKeyIdentifier.getId()); byte[] octets = DEROctetString.getInstance(skiValue).getOctets(); byte[] skiBytes = SubjectKeyIdentifier.getInstance(octets).getKeyIdentifier(); return HexUtil.getHexString(skiBytes); } catch (Exception e) { return "-"; } }
@Override public byte[] getSubjectKeyIdentifier( X509Certificate cert ) { try { byte[] value = cert.getExtensionValue( X509Extensions.SubjectKeyIdentifier.getId() ); if ( value == null ) { return null; } byte[] octets = ( ( ASN1OctetString ) ASN1Object.fromByteArray( value ) ).getOctets(); return SubjectKeyIdentifier.getInstance( ASN1Object.fromByteArray( octets ) ).getKeyIdentifier(); } catch ( IOException ex ) { throw new CryptoFailure( "Unable to extract SubjectKeyIdentifier from X509Certificate extensions", ex ); } }
return AuthorityKeyIdentifier.getInstance(data); } else if (oid.equals(Extension.subjectKeyIdentifier)) { return SubjectKeyIdentifier.getInstance(data); } else if (oid.equals(Extension.basicConstraints)) { return BasicConstraints.getInstance(data);
/** * This method returns SKI bytes from certificate. * * @param certificateToken * {@code CertificateToken} * @param computeIfMissing * if the extension is missing and computeIfMissing = true, it will compute the SKI value from the Public * Key * @return ski bytes from the given certificate */ public static byte[] getSki(final CertificateToken certificateToken, boolean computeIfMissing) { try { byte[] sKI = certificateToken.getCertificate().getExtensionValue(Extension.subjectKeyIdentifier.getId()); if (Utils.isArrayNotEmpty(sKI)) { ASN1Primitive extension = JcaX509ExtensionUtils.parseExtensionValue(sKI); SubjectKeyIdentifier skiBC = SubjectKeyIdentifier.getInstance(extension); return skiBC.getKeyIdentifier(); } else if (computeIfMissing) { // If extension not present, we compute it from the certificate public key return computeSkiFromCert(certificateToken); } return null; } catch (IOException e) { throw new DSSException(e); } }
return AuthorityKeyIdentifier.getInstance(data); } else if (oid.equals(Extension.subjectKeyIdentifier)) { return SubjectKeyIdentifier.getInstance(data); } else if (oid.equals(Extension.basicConstraints)) { return BasicConstraints.getInstance(data);
/** * {@inheritDoc} */ @Override public void injectReferenceValue(X509Certificate value) throws PolicyProcessException { this.certificate = value; final DERObject exValue = getExtensionValue(value); if (exValue == null) { if (isRequired()) throw new PolicyRequiredException("Extention " + getExtentionIdentifier().getDisplay() + " is marked as required by is not present."); else { this.policyValue = PolicyValueFactory.getInstance(""); return; } } final SubjectKeyIdentifier keyId = SubjectKeyIdentifier.getInstance(exValue); keyId.getKeyIdentifier(); this.policyValue = PolicyValueFactory.getInstance(PolicyUtils.createByteStringRep(keyId.getKeyIdentifier())); }