MDSマトリックス

MDS行列最大距離分離可能)は、暗号学において有用な応用を持つ特定の拡散特性を持つ関数を表す行列です。技術的には、有限体上の行列がMDS行列であるとは、それがから へ線形変換変換行列であって、の形式の2つの異なる-組が 個以上の成分で一致しないような場合を指します。同様に、すべての-組の集合はMDS符号、すなわちシングルトン境界に達する線形符号です

を単位行列結合して得られる行列としますこのとき、行列がMDSであるための必要十分条件は、から行を削除して得られるすべての部分行列が非特異行列であることです。これは、行列のすべての部分行列式が非ゼロであることと等価です。したがって、2元行列(つまり、体上の2つの要素を持つ行列)は、すべての要素 を持つ1行または1列のみでない限り、MDSにはなりません

リード・ソロモン符号はMDS プロパティを持ち、暗号化アルゴリズムで使用される MDS 行列を取得するために頻繁に使用されます。

セルジュ・ヴォードネーは、暗号プリミティブにおいてMDS行列を用いることで、彼が「多重順列」と呼ぶもの、つまり同じ性質を持つ必ずしも線形ではない関数を生成することを提案した。 [1]これらの関数は、彼が「完全拡散」と呼ぶ性質を持つ。つまり、入力を変更すると少なくとも出力が変化する。彼は、不完全拡散を利用して多重順列ではない関数を暗号解読する方法を示した

MDS 行列は、 AESSHARKSquareTwofishAnubisKHAZAD、 Manta 、HierocryptKalynaCamellia 、 HADESMiMCなどのブロック暗号、およびストリーム暗号MUGI暗号ハッシュ関数Whirlpool、 Poseidonの拡散に使用されます。

参考文献

  1. ^ Vaudenay, Serge (1995), Preneel, Bart (ed.), "On the need for multipermutations: Cryptanalysis of MD4 and SAFER", Fast Software Encryption , Lecture Notes in Computer Science, vol. 1008, Berlin, Heidelberg: Springer Berlin Heidelberg, pp.  286– 297, doi : 10.1007/3-540-60590-8_22 , ISBN 978-3-540-60590-4
Retrieved from "https://en.wikipedia.org/w/index.php?title=MDS_matrix&oldid=1302715974"