近年, IoT デバイスの普及に伴い, 計算資源の限られた環境下でも安全かつ高速に動作する軽量暗号技術の重要性が高まっている. 米国国家安全保障局(NSA)により開発された SPECK や, 韓国の国家保安研究所 (NSR) により開発された CHAM は ARX 構造を採用した軽量ブロック暗号であり, その実装効率の高さからリソース制約のあるデバイスに適した暗号方式として注目されているため, その安全性評価は重要な研究課題である. これらに対する強力な攻撃手法として, 差分線形 (DL) 識別器を用いた解析手法がある. ブロック暗号はラウンド関数と呼ばれる内部変換処理を繰り返すことで暗号化を行う反復構造を有しており, 繰り返し回数をラウンド数と呼ぶ. CHAM64/128 では 88 ラウンド, SPECK64 では伴長 96ビットで 26 ラウンド, 128 ビットで 27 ラウンドが採用されている. 近年の DL 識別器では複数回のラウンド関数を 3 つの部分に分け, 前部を差分特性, 後部を線形特性で近似し, その間を差分線形近似する識別器が提案されている. Gong らは ARX 暗号が中間部で差分とマスクが収束・拡散する "砂時計的 (Hourglass-like) 構造" を有していることを利用した解析を提案した. この構造を利用した SPECK64 や CHAM64/128 に対する最適識別器の詳細な再探索や, 差分特性・線形特性に対する実験的な評価は今後の課題である. また, Beierle らは差分特性を満たす入出力ペア (Right Pair) の集合が特定の構造を持つことに着目し, その性質を利用して攻撃に必要なデータ計算量を従来の O(p^(−2)) から O(p^(−1)) へと削減する手法を提案した. しかし, この手法が SPECK や CHAM の具体的な識別器に対してどの程度適用可能かについての詳細な検証は十分になされていない. 本研究では, SPECK64 および CHAM64/128 を対象に, 砂時計的構造に着目した差分線形解析の改良を行った. CHAM64/128 において, 砂時計的構造の特性である連続する 2 ビットのマスクが高い相関を維持しやすい点を利用し, 新たな 46 ラウンド識別器を構築し, 攻撃に必要な時間計算量を既存の O(2^57.94) から O(2^56.52) へと削減することに成功した. さらに, Beierle らの提案に基づき, 差分特性を満たすペア (Right Pair) を利用した計算量削減の検証を行った. その結果, いくつかの識別器において, 攻撃に必要なデータ計算量を従来の O(p^(−2)) から O(p^(−1)) へと削減可能であることを実証した. これらの結果は, ARX 暗号における砂時計的構造の有効性を実証するとともに, より精密な安全性評価の必要性を示している.

Top