叡智の三猿

三猿×情報セキュリティ×はてな で発信します。

せんぬきと暗号の七月

せんぬき暗号

わたしが子どもの頃、学校でこんなクイズが流行りました。

f:id:slowtrain2013:20200511190710p:plain
暗号クイズ
いまでも、こんなクイズはあるのかな〜

右下の「栓抜き」がヒントです。 ”せ” と ”ん” を抜きます。そうすると「せやんせま」は「やま」となるので答えはー

f:id:slowtrain2013:20200511191451p:plain:w300
ですね。

これがわたしの記憶のなかにあるはじめての暗号生活です。

なんちゃって暗号

社会人のはじめ頃、OJT(On the Job Traininng)として、小さな社内ツールを開発しました。そのとき、利用者のパスワード情報をそのままリレーショナルデータベースに格納するのではなく、暗号化して格納しようと考えました(データベースをそのまま参照されたら、パスワードが分かってしまうので・・・)。

そのとき使った方法は「換字式暗号(文字を別な文字に変える暗号方式)」というやり方です。

これは古代ローマ時代、軍人カエサルが活躍した「ガリア戦記」にて用いられた暗号方式です(「カエサル暗号」ともいいます)。これは下の図のように文字を3文字後ろにずらして暗号化します。

f:id:slowtrain2013:20200511195646p:plain
換字式暗号(カエサル暗号)

ただ「換字式暗号」だけですと余りにも単純すぎます。ですので、この方式で作られた暗号を「転置式暗号(文字の位置を並べ替えする暗号方式)」を用いて逆さまにしました。

そうすると、例えば実際のパスワードが ”carp” であればこのように暗号化されます。

f:id:slowtrain2013:20200511201307p:plain:w300
パスワードの暗号化
"carp" が "sudf" となります。それなりに暗号化ぽくなっていますが、実際は危険(解読されやすい)な暗号方式です。

「選択平文攻撃」という攻撃方法があります。これは、攻撃者が選択したある平文を何らかの方法で正規のユーザーに暗号化させ、元の平文と得られた暗号文から暗号鍵を推測し、同じ暗号鍵を用いて作られた暗号を解読しようとする方法です。

こういう「なんちゃって暗号」は簡単に破られてしまいます。学習の為に実施するのであれば、問題ありませんが、実務では推奨されない暗号化方式です。

CRYPTREC暗号リスト

現在、安全な暗号化方式についての情報は、CRYPTRECが、公募された暗号技術および業界で広く使われている暗号技術を評価し、電子政府における調達のための暗号リストである「CRYPTREC暗号リスト(電子政府推奨暗号リスト)」を公表しています。

f:id:slowtrain2013:20200628140656p:plain
電子政府推奨暗号リスト
また、IPA「暗号モジュール試験及び評価制度(JCMVP)」を運用しています。これは、電子政府推奨暗号リストによって推奨されている暗号化・ハッシュ・電子署名等が適切に暗号モジュールに適用されていること、格納している暗号鍵等の重要情報が確実に保護されているかを第三者が評価・認証する制度です。
www.ipa.go.jp

July

ところで「せんぬき」の形や機能もいろいろあります。

気がつけばカエサルの七月(July)!お家で野外で栓抜きでパッとビールあけてグッといきたい感覚(^。^)

多機能型
ひとつで栓抜きのほか、缶切り、コルク抜き、プルタブ・プルトップと4役が使えるパターンです。これで引き出し(カトラリーケース)のスペースを有効活用出来ますね。

持ち運び型
軽くて小さくてキーホルダーとして使える栓抜きです。たとえばピクニックでビールを調達したとき、サクッと使うとなんかカッコいいですよね。

インテリア型
冷蔵庫に強力磁石でくっつけて使うタイプです。アメリカンプロバスケのデザインで家飲みをオシャレに演出しそうな雰囲気です。