No:
647
タイトル:
GEAR戦士撫子 新Part642
お名前:
プロフェッサー圧縮
投稿日:
2025/03/19 08:11:50
単表示
返信
まずは1.SubBytesから。
これは由緒正しい換字法です。
AESで使う暗号表はS-BOXといい、8ビットの一対一変換表となっています。
8ビットで表現できる値は0-255なので、256個の変換表です。
この暗号表は固定となっています。
他の変換が3種も後に控えてますので、利便性を取った形になります。
◇ ◇ ◇
次は2.ShiftRowsを行います。
これはブロックの4x4表を上から順にローテートする処理です。
但しローテートは2行目から始まり、1行目は何もしません。
更に3行目と4行目ではローテート量が違い、
2行目:右に1つ
3行目:右に2つ
4行目:右に3つ
となっています。
◇ ◇ ◇
次に3.MixColumnsを行います。
これは列単位にする特殊な演算で、逆の手順を踏めば元に戻せるようになっています。
まあ暗号は復号ではなければならないので、ある意味当然ではあります。
正直この手順要らなくないですかと思わないこともないのですが・・・・・・
多分数学的な意味があるのでしょう。多分きっとMaybe.
◇ ◇ ◇
最後に4.AddRoundKeyを行います。
これは最初に作った32文字単位の暗号鍵と演算をし、暗号鍵がないと解けないようにします。
ブロックの数だけこの4処理を繰り返し、最後のプロックは1.2.4.の処理だけをして締めます。
これがAES暗号方式です。