• ベストアンサー

映画「サマーウォーズ」で出てくる、オズのセキュリティーの暗号は数字の羅

映画「サマーウォーズ」で出てくる、オズのセキュリティーの暗号は数字の羅列でしたが、あれはどのようにして解いているんですか? 主人公が解く場面がありますが、最後はアルファベットで終わっています。 自分は数学は高校の頃から苦手で、専門的なことはまったくわかりませんが、不思議に思ったので質問させていただきました。

質問者が選んだベストアンサー

  • ベストアンサー
  • parts
  • ベストアンサー率62% (6366/10151)
回答No.1

まあ、暗号ですからね。一つのルールに沿っているとすればわかりやすいかもしれませんね。風の谷のナウシカでも合い言葉が出てきましたけどね。ああいった遊びも一つの暗号化のルールです。 では、ちょっと簡単に暗号を作ってみましょう。 例えば、010203と書かれた暗号があります。 この数字の連なりのルールは、A、B、Cという文字列に分解されますというルールを決めたとしましょう。 さて、数字の16はアルファベットで何になりますか? これは、簡単ですよね。 暗号というのは、こういうルールに従って作られたものです。このルールを知らないものにこの暗号を解けといっても、それを「あいう」ととらえるかもしれません。単なる「010203」という数字の羅列にしか認識できないかもしれません。それとも全く別の言語なのか?「いろは」になるかもしれない。ABCになる確率は低くなり、見た目では判断が付きにくくなるのです。これが、暗号化です。 この暗号化(エンコード)には他の用途もあります。 情報の圧縮というものです。あるルールに基づいて情報を小さなデータに変換します。例えば、AAAAAAAAという文字は、A8と入れればAが8文字とするといったルールです。8文字を2文字で表す手法です。 これを先ほどの数字変換アルファベットのルールでさらにエンコードし3桁目をその文字の反復回数としたら。018という3文字にすることもできるでしょう。こうするとさらにわかりにくくなりますよね。 暗号化には、決まった文字列を組み合わせそれを鍵として組み込んでしまい。複合(暗号化を解くときに)時にその文字列と対になる情報を入れないと戻せないという暗号化もあります。暗号というのは、そういうものです。 ぱっと見てそれにこんな文字は含まれていないだろうというほど意味合いが分からない情報になればなるほど暗号化は高い強度(安全性/信頼性)を持っているのです。 数学が苦手な人でも、これならわかりやすいかなという書き方をしましたが・・・いかがでしょうか?

その他の回答 (1)

回答No.2

物語の冒頭で主人公が「Shorの素因数分解アルゴリズム」なる論文を読んでいた点を考えると、RSAに類する暗号なんだろうと思います。つまり、あの数字を因数分解(またはそれを含めた計算を)しているんじゃないでしょうか。 多分スタッフの意図はそうじゃないかなと。あくまでフィクションですし、それっぽく演出してるだけだとは思いますけれども。 因数分解がなんで暗号に関係してるの?という話題について少し説明をしましょうか。 因数分解の中でも「ある数字 N は2つの素数 p, q の積であるが、この p,q を求めよ」という問題を考えます。例えば、「15を分解せよ」といわれたら、答えは「3と5」ですね。143 なら 13と11です。 では 1961 はどうでしょう?ぱっと出るでしょうか? ちょっと頭を切り換えて、 53 * 37 を計算してみてください。 そう、 1961 です。 かけ算はすぐ出来るけれど、答えの方から元の数(素因数)を求めるのはとても難しい。 しかも桁が上がるとその難しさはぐんぐん跳ね上がる。 でも片方だけでも元の数を知っていれば割り算でもう片方もすぐ分かる。 この性質を利用しているのがRSAを代表とする公開鍵暗号です。 至極かみ砕いて説明しますと、なにか秘密にしたい文章があるとします。ラブレターでもなんでもいいです。これをまずは数字に変換し、そこへなにかキーワードとなる数を用意してかけ算してやります。 (本文) * (キーワード) = (暗号化されたモノ) 受け渡しなどのやりとりについてはこの暗号化されたモノを使います。知らない人がこっそり暗号化されたモノを手に入れたとしても、なかなか本文をのぞき見ることが出来ません。これはさっき 1961 をなかなか 53 と 37 に分解できなかったのと同じです。 しかしキーワードを知っている人は割り算ですぐに本文を知ることが出来ますね。 本当はもっと手の込んだ計算をしますが感覚的にはこんな感じかなあと。 この素因数分解問題はコンピュータでも全然効率的に解くことが出来ない問題として知られていて(だからこそ暗号になるのですが)、「近未来技術である量子コンピュータなら出来るぜ!!」と証明したのがアメリカのShor(ショア)さん。主人公が読んでたあの論文ですね。ただ、量子コンピュータ自体まだまだ実験段階ですので、それこそ15が分解できた21が分解できたと言ってるレベルです。実用化はまだまだ先でしょうね。 話が長くなりましたが、主人公が素因数分解を含めた計算をしているのだとするとこれはまた大変なことで、映画に出来たような長大な数字(100桁とか1000桁とか)を因数分解するのには世界のスーパーコンピュータを結集してさえ何ヶ月も何年もかかると言われています。それを数分でしかも手書き&暗算で何問も解いてしまうのだから、私の気分の冷めることと言ったらなかったですね。知識が邪魔して素直に楽しめない良い例です。