Chapter Twenty

第20話



今回は暗号化VIと復号化VIを紹介する。

暗号化VIのフロントパネルの入力、出力は当然ながらプロトタイプと同じだ。この例では256ビットの鍵を使っている。暗号化の速度は遅いので、長い文章を暗号化するのには向かないが、秘密鍵を暗号化したり、メッセージダイジェストの署名には利用できるかもしれない。


ダイアグラムも基本的にはプロトタイプと同じだが、平分をブロック化するところは変更する必要がある。平分のブロック化のアルゴリズムはMD5というメッセージダイジェストアルゴリズムに使われているものを参考にした。ブロックの整数倍の長さになるように、平分の後に先頭ビットが1でその後に0が続く適当な長さの文字列とオリジナルの平分の文字数(固定長)を連結した。

計算に使うU32nの配列の大きさは鍵の長さによって変える必要があるのでストリングで与えられた10進数の桁数から推定することにした。U32nの配列の大きさを1から32まで変えて何桁の10進数になるか調べてみたところ、偶然か、何か理由があるのか知らないが、配列の大きさの10倍の桁数に収まっていたので、Nの桁数を10で割った数より1だけ大きい配列を使うことにした。

平分のブロック化は、Nの桁数を10で割った数の整数倍となるようにした。計算に使うときは取り出したブロックの先頭に中身が0の要素を一個追加することにした。

受け取った暗号文を復号したら「今日は台風がふてくされている、、、」といった内容だったらがっかりするだろうが、、、

復号は暗号文をU32nに変換して、復号鍵を使えばよい。計算後のU32nを暗号化の時と逆の手順でオリジナルの平文部分を取り出せば出来上がりだ。

長い間付き合ってもらった暗号の話題も今回で終了だ。VIを作りながら進行しているので冗長な部分も多いし、ダイアグラムの絵だけでは分かりにくいこともある。機会があれば整理してみるつもりだ。
最後に参考文献をあげておこう。
~~**~~**~~**~~**~~**~~**~~**~~**~~**~~**~~**~~**~~
PGP--暗号メールと電子署名/Simson Garfinkel著 山本和彦監修(発行元オライリージャパン、発売元オーム社)
情報セキュリティの科学/太田和夫ほか著(講談社ブルーバックス)
ネットワークセキュリティ/チャーリー・カウフマンほか著 石橋啓一郎ほか訳(発行元プレンティスホール出版、発売元トッパン)
暗号理論入門/岡本英司著(共立出版)
素数の不思議/堀場芳数著(講談社ブルーバックス)
電子マネー入門/岩村充著)(日本経済新聞社日経文庫)
~~**~~**~~**~~**~~**~~**~~**~~**~~**~~**~~**~~**~~

See you!


Nigel Yamaguchi

戻る