教育用ソフトウェアで使用するために Twofish アルゴリズムを実装しています。私は UI に QT を使用し、Wikipedia と Bruce Schneier の Twofish 論文からの調査を使用していますが、ホワイトニング サブキーの生成に固執しました。ラウンド サブキーを生成する方法は理解できましたが、ホワイトニング サブキーを生成する方法は見つかりませんでした。
k = 2 (128 ビット キー、128/64 = 2) を使用しているので、2k = 4; M_e と M_0 のサイズは 2 です。元のキーからそれらを埋め、16 ラウンドのラウンド キーをそれぞれ 2 つのキーで計算しています。
したがって、40 個のサブキーではなく、32 個しか得られません。
美白のために8を逃したのはどこですか?私は論文を読み直しましたが、それらのアルゴリズムが見つかりませんでした。または、ラウンドのものの前または後の最初または最後の N キーのようにそれらがどのように生成されるかについての提案も見つかりませんでした。
ホワイトニングキーを生成するにはどうすればよいですか?