Boolean Masking
ブールマスキングは、鍵に依存する中間値をランダムなシェアに分割するサイドチャネル防御である。実際に処理される値は鍵と統計的に独立になる。
目的
電力・電磁・キャッシュのサイドチャネルに抵抗する。ソフトウェア AES やハードウェア暗号実装の標準的な防御である。
メカニズム
中間値 x を x = x1 XOR x2 XOR ... XOR xm(m 個のランダムシェア)に分割し、各シェア上で独立に演算して再結合する。これにより電力・電磁漏えいは元の値と統計的に独立になる。一次マスキングは一次 DPA に、高次マスキングは高次 DPA に抵抗する。
ユースケース
- ソフトウェアAESのサイドチャネル防御
- スマートカードのDPA耐性
- ハードウェア暗号の強化