private MessageDigest getMessageDigest(DigestAlgorithm digestAlgorithm) { try { return MessageDigest.getInstance(digestAlgorithm.getOid(), BouncyCastleProvider.PROVIDER_NAME); } catch (GeneralSecurityException e) { throw new DSSException("Cannot generate a MessageDigest", e); } }
/** * Returns a new instance of MessageDigest for a given digest algorithm * * @param digestAlgorithm * the digest algoritm * @return a new instance of MessageDigest */ public static MessageDigest getMessageDigest(final DigestAlgorithm digestAlgorithm) { try { final String digestAlgorithmOid = digestAlgorithm.getOid(); return MessageDigest.getInstance(digestAlgorithmOid, BouncyCastleProvider.PROVIDER_NAME); } catch (GeneralSecurityException e) { throw new DSSException("Digest algorithm '" + digestAlgorithm.getName() + "' error: " + e.getMessage(), e); } }
/** * Gets the ASN.1 algorithm identifier structure corresponding to a digest algorithm * * @param digestAlgorithm * the digest algorithm to encode * @return the ASN.1 algorithm identifier structure */ public static AlgorithmIdentifier getAlgorithmIdentifier(DigestAlgorithm digestAlgorithm) { /* * The recommendation (cf. RFC 3380 section 2.1) is to omit the parameter for SHA-1, but some implementations * still expect a * NULL there. Therefore we always include a NULL parameter even with SHA-1, despite the recommendation, because * the RFC * states that implementations SHOULD support it as well anyway */ final ASN1ObjectIdentifier asn1ObjectIdentifier = new ASN1ObjectIdentifier(digestAlgorithm.getOid()); return new AlgorithmIdentifier(asn1ObjectIdentifier, DERNull.INSTANCE); }
ASN1ObjectIdentifier asn1ObjectIdentifier = new ASN1ObjectIdentifier(digestAlgorithm.getOid()); TimeStampRequest timeStampRequest = null; if (nonceSource == null) {