暗号学において、イラクブロック暗号は、1999年7月頃に匿名のFTPアップロードによってC言語のソースコード形式で公開され、Usenet上で広く配布されたブロック暗号である。これは、 256ビットのブロックと160ビットの鍵で動作する、 5ラウンドの不均衡なファイステル暗号である。
ソースコードによると、このアルゴリズムは32バイト(256ビット)のブロック単位で動作する。これはDESや3DES(8バイト)の4倍、TwofishやAES(16バイト)の2倍の大きさである。また、鍵のサイズは160ビットから2048ビットまで変化させることができることも示されている。
アルゴリズムのソースコードを詳細に分析すると、鍵に依存する256バイトのSボックスを使用していることがわかります(Blowfishと同様に、最初の固定Sテーブルを使用して、鍵とともに暗号化/復号化に使用される2番目のSボックスを生成します)。また、このアルゴリズムは、鍵に依存し、固定Pテーブルから初期化される16列×16行のPボックスも使用しています。各ラウンドではPボックスから1行と16列を使用するため、アルゴリズムは最大16ラウンドまで実行できます。
あるコメントでは、イラク起源であると示唆されています。しかし、S-1ブロック暗号と同様に、一般的には偽物と見なされており、S-1よりも品質は劣ります。コメントではイラク起源であると示唆されていますが、すべてのコメント、変数名、関数名、および印刷された文字列はアラビア語ではなく英語です。コードはかなり非効率的で(無意味な操作も含まれています)、暗号のセキュリティに欠陥がある可能性があります(証明はありません)。
鍵スケジュールが一定であるため、この暗号はスライド攻撃に対して脆弱です。ただし、1つのスライドペアを作成するのに2 64個の選択テキストが必要になる場合があり、攻撃は実行不可能になります。また、固定点が多いですが、ハッシュモードを除いて、必ずしも問題ではありません。現在、公開されている攻撃はありません。S-1と同様に、セキュリティ上の欠陥を最初に発見したのはDavid Wagnerでした。[ 1 ]