Generating a Message Authentication Code (MAC) - Java Security

Java examples for Security:Mac

Description

Generating a Message Authentication Code (MAC)

Demo Code

import java.io.UnsupportedEncodingException;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;

import javax.crypto.KeyGenerator;
import javax.crypto.Mac;
import javax.crypto.SecretKey;

public class Main {
  public static void main(String[] args) throws Exception {
    try {//www .j  av  a2  s  .co  m
      KeyGenerator keyGen = KeyGenerator.getInstance("HmacMD5");
      SecretKey key = keyGen.generateKey();

      Mac mac = Mac.getInstance(key.getAlgorithm());
      mac.init(key);

      String str = "This message will be digested";

      byte[] utf8 = str.getBytes("UTF8");
      byte[] digest = mac.doFinal(utf8);

      String digestB64 = new sun.misc.BASE64Encoder().encode(digest);
    } catch (InvalidKeyException e) {
    } catch (NoSuchAlgorithmException e) {
    } catch (UnsupportedEncodingException e) {
    }
  }
}

Related Tutorials