メディア

マイコンに搭載されているAESって何?Q&Aで学ぶマイコン講座(82)(5/6 ページ)

» 2023年07月07日 10時00分 公開

InvSubBytes

 Subbytesの逆変換処理です。Subbytesと同様の処理ですが、S-Boxの代わりにInverse S-Boxを使用します(図9

<strong>図9:InvSubBytes</strong>[クリックで拡大] 図9:InvSubBytes[クリックで拡大]

InvShiftRows

 ShiftRowsの逆変換処理です。4バイト単位の行を右シフトします。行数ごとにシフト量が1つインクリメントされます(図10

<strong>図10:InvShiftRows</strong>[クリックで拡大] 図10:InvShiftRows[クリックで拡大]

InvMixColumns

 MixColumnsの逆変換処理です。4バイトの列を行列演算によって別の4バイトに変換します。State配列を列ごとに操作し、各列を4項の多項式として扱います。列はガロア体GF(2^8)上の多項式で、

 で与えられる固定多項式を掛け合わせます。計算された値は、出力先のそれぞれの列に出力されます(図11

<strong>図11:InvMixColumns</strong>[クリックで拡大] 図11:InvMixColumns[クリックで拡大]

 出力結果の1列をs’(x)、入力の1列をs(x)とし、下記のように定義されます。

これを列ごとに展開します。

 この乗算の結果、列中の4バイトは下記の通りとなります。

Copyright © ITmedia, Inc. All Rights Reserved.

RSSフィード

公式SNS

EDN 海外ネットワーク

All material on this site Copyright © ITmedia, Inc. All Rights Reserved.
This site contains articles under license from AspenCore LLC.