Sample code for 30+ languages & platforms
Java

Workaround for the deprecated Crypt2.MacBytes method

Shows how to replace the deprecated MacBytes method. (Chilkat is moving away from the use of CkByteData.)

Chilkat Java Downloads

Java
import com.chilkatsoft.*;

public class ChilkatExample {

  static {
    try {
        System.loadLibrary("chilkat");
    } catch (UnsatisfiedLinkError e) {
      System.err.println("Native code library failed to load.\n" + e);
      System.exit(1);
    }
  }

  public static void main(String argv[])
  {
    boolean success = false;

    CkCrypt2 crypt = new CkCrypt2();

    //  Do HMAC using SHA-256.
    crypt.put_MacAlgorithm("hmac");
    crypt.put_HashAlgorithm("sha256");

    String keyHex = "000102030405060708090A0B0C0D0E0F";
    success = crypt.SetMacKeyEncoded(keyHex,"hex");

    String path = "c:/someDir/example.dat";

    //  ------------------------------------------------------------------------
    //  The MacBytes method is deprecated:

    CkByteData inData = new CkByteData();
    inData.loadFile(path);

    CkByteData outData = new CkByteData();

    success = crypt.MacBytes(inData,outData);

    //  ------------------------------------------------------------------------
    //  Workaround.
    //  (Chilkat is moving away from using CkByteData)

    CkBinData bdIn = new CkBinData();
    bdIn.LoadFile(path);

    //  Set to any supported Chilkat encoding: base64, hex, base64url, hex_lower, etc.
    crypt.put_EncodingMode("base64");
    String mac_base64 = crypt.macBdENC(bdIn);

    System.out.println(mac_base64);
  }
}