JDKにおけるJCAの簡単な使用(四)---Mac暗号化


Macクラス
メッセージ認証コード(MAC)は、受信したメッセージを検証できるのは、正確な鍵を有する者のみである.
 
暗号化ハッシュ関数に基づくMAC機構をHMACと呼ぶ.HMACは、任意の暗号化ハッシュ関数(例えば、SHA−256)とともに使用され、秘密共有鍵と組み合わせることができる.
 
適用シーン:
インタフェース署名検査、パケット偽造要求を防止する.
 //macKey          ,HmacSHA1      
   SecretKeySpec keySpec = new SecretKeySpec(macKey, "HmacSHA1");
   Mac mac;
try {
    mac = Mac.getInstance("HmacSHA1");  
    mac.init(keySpec);
    byte[] result = mac.doFinal(sb.toString().getBytes("UTF-8"));
    return result;
} catch (Exception e) {
    e.printStackTrace();
}