Sample code for 30+ languages & platforms
Java

Hash Algorithms: SHA-1, HAVAL, MD2, MD5, SHA-256, SHA-384, SHA-512

See more Encryption Examples

How to create hashes (message digests) for strings.

Chilkat Java Downloads

Chilkat2 Java
import com.chilkatsoft.chilkat2.Crypt2;

public class ChilkatExample {

    public static void main(String[] args) {
        // This example requires the Chilkat API to have been previously unlocked.
        // See Global Unlock Sample for sample code.

        Crypt2 crypt = new Crypt2();

        String s = "The quick brown fox jumps over the lazy dog";

        crypt.setHashAlgorithm("sha1");
        crypt.setEncodingMode("hex");

        // Other possible EncodingMode settings are:
        // "quoted-printable", "base64","url", and many more..

        String hash = crypt.hashStringENC(s);
        System.out.println("SHA1: " + hash);

        // Hash using MD2
        crypt.setHashAlgorithm("md2");
        hash = crypt.hashStringENC(s);
        System.out.println("MD2: " + hash);

        // Hash using MD5
        crypt.setHashAlgorithm("md5");
        hash = crypt.hashStringENC(s);
        System.out.println("MD5: " + hash);

        // Note: SHA-2 is a set of cryptographic hash functions (SHA-224, SHA-256, SHA-384, SHA-512)

        // Hash using SHA-256
        crypt.setHashAlgorithm("sha256");
        hash = crypt.hashStringENC(s);
        System.out.println("SHA256: " + hash);

        // Hash using SHA-384
        crypt.setHashAlgorithm("sha384");
        hash = crypt.hashStringENC(s);
        System.out.println("SHA384: " + hash);

        // Hash using SHA-512
        crypt.setHashAlgorithm("sha512");
        hash = crypt.hashStringENC(s);
        System.out.println("SHA512: " + hash);

        // Hash using HAVAL
        // There are two additional properties relevant to HAVAL:
        // HavalRounds, and KeyLength.
        // HavalRounds can have values of 3, 4, or 5.
        // KeyLength can have values of 128, 160, 192, 224, or 256
        crypt.setHashAlgorithm("haval");
        crypt.setHavalRounds(5);
        crypt.setKeyLength(256);
        hash = crypt.hashStringENC(s);
        System.out.println("Haval: " + hash);

        // Hashes for "The quick brown fox jumps over the lazy dog"

        // SHA1:
        // 2FD4E1C67A2D28FCED849EE1BB76E7391B93EB12

        // MD2:
        // 03D85A0D629D2C442E987525319FC471

        // MD5:
        // 9E107D9D372BB6826BD81D3542A419D6

        // SHA256:
        // D7A8FBB307D7809469CA9ABCB0082E4F8D5651E46D3CDB762D02D0BF37C9E592

        // SHA384:
        // CA737F1014A48F4C0B6DD43CB177B0AFD9E5169367544C494011E3317DBF9A509CB1E5DC1E85A941BBEE3D7F2AFBC9B1

        // SHA512:
        // 07E547D9586F6A73F73FBAC0435ED76951218FB7D0C8D788A309D785436BBB642E93A252A954F23912547D1E8A3B5ED6E1BFD7097821233FA0538F3DB854FEE6

        // Haval:
        // B89C551CDFE2E06DBD4CEA2BE1BC7D557416C58EBB4D07CBC94E49F710C55BE4
    }
}