プログラマーであれば一度は目にしたことがありそうなHMACですが、どうやって算出されているかを知ってる人は少ないかと思います。少なくとも私は頻繁に使うものの知りませんでした。 BIP32等ブロックチェーンの世界でも度々登場している他、API認証としても利用しています。メッセージに加えて、パスワードとなる暗号キーを用いてハッシュ値を生成するものという認識で、自分のサービスで使用する際はもっぱらユーザ認証目的で使用しています。 ブラックボックスとしている実際の算出方法は気にしたことがありませんでしたが、正しく理解するために調べた備考録としてこれを記します。 検索した所、HMACは1997年のRFC2104で定義されていましたが、これでは古すぎて今の利用のされ方と相違した定義になっていることも考えられます。そのためWikipediaで概要を確認した後RFC2104を読んでみます。 Wikiped