haskell-ja > Archives > 2013/02/01

2013/02/01 04:21:32 UTCcutsea110
#
kazuさんの http://d.hatena.ne.jp/kazu-yamamoto/20080918/1221720037 を読みましたがなんだか不思議な気になってきた。
#
mess = "the magic words are squemish ossifrage"
#
として、rsa129encode messとしても問題の暗号rsa129message(200805...)が得られますよね。
#
でもってrsa129decode rsa129messageでも複合できます。
#
rsa129decode . rsa129encode = id
#
になっているのでrsaEncryptやrsaDecryptの出番がなさそうに見える。
#
実際RSA129の問題を解くのに必要なのはrsa129decodeのアルゴリズムだけじゃないですか?
#
もちろん let cipher = rsaEncrypt rsa129d rsa129n $ rsa129encode messとして
#
rsa129decode $ rsaDecrypt rsa129e rsa129n cipherとしてもmess(平文)が得られるので
#
そこはいいのかもしれないけど、どうもrsaEncrypt/rsaDecryptが無関係になっているような気がする。
#
RSA129は問題を出すとしたら本当は let cipher = rsaEncrypt rsa129d rsa129n $ rsa129encode messを問題にだすべきだったんじゃないんでしょうか?
#
rsaDecript rsa129e rsa129n cipherした結果を出題してしまっているように見えます。
#
(だからrsa129decode掛けただけで平文に戻ってしまっているような)
2013/02/01 04:38:17 UTCcutsea110
#
あーrsa129messageは平文なのか。
#
なんかrsa129cipherが登場してなかったりして気になってたけど、わかった。
#
「17年間と解読されなかった暗号文は、こうです」で示すべきはrsa129cipher = 96869...で、これをrsaDecrypt rsa129d rsa129n rsa129cipherして2008...が得られて、こいつをrsa129decodeしたら平文が得られますよ。
#
ですね。
#
それならrsa129dの情報が必要なのでナットク。
#
というわけで古い記事だったので今頃な気もしたけどコメントポストした。
2013/02/01 05:11:01 UTCkazu
#
ありがとうございます。直しました。
#
実は、このコードにはオチがあるんですが、そのオチへのリンクを記事の最後に追加しておきました。