Package org.conscrypt

Class OpenSSLMessageDigestJDK

    • Field Detail

      • evp_md

        private final long evp_md
        Holds the EVP_MD for the hashing algorithm, e.g. EVP_get_digestbyname("sha1");
      • size

        private final int size
        Holds the output size of the message digest.
      • singleByte

        private final byte[] singleByte
        Holds a dummy buffer for writing single bytes to the digest.
      • digestInitializedInContext

        private boolean digestInitializedInContext
        Whether the digest struct has been initialized inside EVP_MD_CTX.
    • Constructor Detail

      • OpenSSLMessageDigestJDK

        private OpenSSLMessageDigestJDK​(long evp_md,
                                        int size)
                                 throws java.security.NoSuchAlgorithmException
        Creates a new OpenSSLMessageDigest instance for the given algorithm name.
        Throws:
        java.security.NoSuchAlgorithmException
      • OpenSSLMessageDigestJDK

        private OpenSSLMessageDigestJDK​(long evp_md,
                                        int size,
                                        NativeRef.EVP_MD_CTX ctx,
                                        boolean digestInitializedInContext)
    • Method Detail

      • ensureDigestInitializedInContext

        private void ensureDigestInitializedInContext()
      • engineReset

        protected void engineReset()
        Specified by:
        engineReset in class java.security.MessageDigestSpi
      • engineGetDigestLength

        protected int engineGetDigestLength()
        Overrides:
        engineGetDigestLength in class java.security.MessageDigestSpi
      • engineUpdate

        protected void engineUpdate​(byte input)
        Specified by:
        engineUpdate in class java.security.MessageDigestSpi
      • engineUpdate

        protected void engineUpdate​(byte[] input,
                                    int offset,
                                    int len)
        Specified by:
        engineUpdate in class java.security.MessageDigestSpi
      • engineUpdate

        protected void engineUpdate​(java.nio.ByteBuffer input)
        Overrides:
        engineUpdate in class java.security.MessageDigestSpi
      • engineDigest

        protected byte[] engineDigest()
        Specified by:
        engineDigest in class java.security.MessageDigestSpi
      • clone

        public java.lang.Object clone()
        Overrides:
        clone in class java.security.MessageDigestSpi