「暗号化してからMAC」がなぜ重要か? セキュリティの基本原則を理解する
ARANK

はじめに暗号理論に秀でよ。これは学べば学ぶほど退屈な代物だ。ただ、HMACしてから暗号化と、暗号化してからHMACの違いがわからないようでは、到底エースセキュリティエンジニアとはいえない。 Hash-based Message Authentication Code の略で、日本語では「ハッシュベースのメッセージ認証コード」と呼ばれます。「HMACする」とは、この技術を使ってメッセージ認証コード(MAC値)を生成することを指します。その目的は、主に以下の2つです。データの完全性(Integrity)の検証: データが通信の途中で改ざんされていないかを確認する。送信者の認証(Authentication): データが本当に期待される送信者から送られてきたものかを確認する。HMACは、メッセージ(データ本体)と、送信者と受信者だけが知っている共通鍵という2つの材料から、ハッシュ関数というアルゴリズムを使って固定長の文字列(MAC値)を生成します。受信者は、受け取ったメッセージと自分たちが持っている共通鍵を使って、同じようにMAC値を計算します。そして、送られてきたMAC値と自分で計算したMAC値がピッタリ一致すれば、「このデータは改ざんされておらず、本物の相手から来たものだ」と判断でき…

zenn.dev
Related Topics: Mac Cryptography Security