チャットAIに暗号を解読させてみたら…… 予想外な“意味のある単語”を導き出した結果に「良いオチ」「かわいい」(1/2 ページ)
まんまと罠に引っかかったChatGPT君。
OpenAIによる話題の対話型AI(人工知能)「ChatGPT」に暗号を解読させてみたところ、いろいろと興味深い結果になっています。投稿したのは、大学院生でYouTuberのCHARTMANさん(@CHARTMANq/YouTube)。感動からオチまで詰まってる。
使用した暗号は、シンプルでよく知られたシーザー暗号。これはシフト暗号とも呼ばれ、暗号化前のテキストの各文字を、辞書順で決められた文字数だけずらして(シフトして)暗号文とするもの。たとえば、“左に3文字分”シフトする場合、アルファベットの「D」は「A」に置き換わります。
投稿主さんは、ChatGPTとのチャットで上記を簡単に説明しつつ、シーザー暗号を用いた「暗号:“dgplq”」について、「答えとして最も適切だと考えられる単語を、その根拠と共に教えてください」と出題しました。
するとChatGPTは、シーザー暗号の解読に必要な「(左/右に)何文字分ずらしたか」の情報が与えられていないことを指摘。しかしそれでは終わらず、文字の頻出傾向の度合いを分析し手がかりとして利用する暗号解読法「頻度分析」を使って解読を進めてくれます。さすが最新AI……!
(前略)
「そこで、頻度分析という手法を使います。英語の文章においては、ある文字が出現する頻度には法則があります。例えば、最もよく出現する文字は「e」であり、次によく出現する文字は「t」です。このような頻度の法則を使って、暗号文中でよく出現する文字を頻出文字と仮定し、それが「e」になるようにずらして復号します」
ChatGPTは、実際に暗号「“dgplq”」の「d」から順に「e」に置き換えて、そのシフト数から全体をずらしてみて意味のある単語になるかを確認していきます。そして出した答えがこちら。
「次に、「g」を「e」に置き換える置換を行うと、「dgplq」が「benjo」という単語に変換されます。したがって、このシーザー暗号の復号結果は「benjo」と考えられます」
ChatGPTが導き出した意味のある単語「benjo」は恐らく「便所」のことだと思われますが、英語の文章における出現頻度を手がかりとしたはずが、最終的に日本語に落ち着くのがなんともじわじわきます。途中までしっかり説明していてかっこよかったのに……!
投稿主さんによると「暗号:“dgplq”」の答えは、左に3文字ずらした「admin」。上記の問題は、「(adminがbenjoになるというネタを)知っててわざとこの問題出した」とのことで、狙って罠にかけたのだとか。なお、毎回同じように引っかかるわけではなく、突然“謎の理論”を展開し、「したがって、この暗号の元の単語は、“apple”である可能性が高いと思われます」と無理やり結論づける場合もあったそうです。
Twitterでは「ふふってなったw」「解読方法は知ってるのにbenjoでこれや! ってなるのすき」と笑いを呼び、「いやAIなら26通りくらいやれよ」なんてツッコミも。また「ちゃんと意味ある単語で止まるのある意味かしこい」や、「AIがジョークであえてbenjoにした説を推したい」といった声もみられました。まさか意図的なオチだった……?
以前には人間との“しりとり”に敗北するなど、ポンコツかわいい印象になってきたChatGPTですが、今回の返答の最後には「頻度分析による復号法は、ある程度の長さの文章であれば比較的簡単に復号できる方法ですが、短い暗号文では正確な結果が得られないこともあります」と予防線を張っており、しっかり者(?)な面も垣間見えます。
シーザー暗号の復号(やり取り全文)
投稿主さん
“シーザー暗号”は、暗号化したい単語の各文字を全て辞書順で決められた文字数だけずらして暗号文とする暗号です。次のシーザー暗号を復号したいと思います。答えとして最も適切だと考えられる単語を、その根拠と共に教えてください。
暗号:“dgplq”
ChatGPT
シーザー暗号では、何文字分ずらしたかによって復号の結果が変わります。しかしこの暗号には何文字分ずらされたのかの情報が与えられていません。そこで、頻度分析という手法を使います。英語の文章においては、ある文字が出現する頻度には法則があります。例えば、最もよく出現する文字は「e」であり、次によく出現する文字は「t」です。このような頻度の法則を使って、暗号文中でよく出現する文字を頻出文字と仮定し、それが「e」になるようにずらして復号します。
暗号文「dgplq」に含まれる文字は、「d」「g」「p」「l」「q」です。頻出文字の仮定に基づいて、これらの文字を「e」に置き換えてみます。「d」を「e」に置き換えるには、1文字進める必要があります。この場合、「dgplq」は「ehqmr」となります。しかしながら、この結果は意味を成しません。次に、「g」を「e」に置き換える置換を行うと、「dgplq」が「benjo」という単語に変換されます。
したがって、このシーザー暗号の復号結果は「benjo」と考えられます。頻度分析による復号法は、ある程度の長さの文章であれば比較的簡単に復号できる方法ですが、短い暗号文では正確な結果が得られないこともあります。
画像提供:@CHARTMANqさん
関連記事
- 「任天堂のマリオになりきって自己紹介して」→チャットAI「イッヒヒヒ!俺はマリオだ!」ニセ物が錬成されてツッコミ多数
- AIによる「ニンダイ発表予想」が大胆通り越して大喜利で爆笑 「風のタクト リマスター リマスター」「パルプフィクション2」
- AIに書かせた小説『やめろメロス』がヤバすぎた…… 予想外なカオス展開に「地獄絵図」「人の心がなさすぎる」
- ギャラ交渉メールの代筆をAIに依頼→たたき台に十分な原稿が完成 「面倒ごとはもうAIに任せてもいいのでは」と話題
- あわわわわ……! AIに理不尽な質問→矛盾点を指摘するやりとりが怖くて泣いちゃう 「嘘をついたということですね」「申し訳ありません」
- 話題のAI「ChatGPT」に今川焼きの作り方を入力 → “とんでもない名称”が爆誕してしまう 「今川焼きでも大判焼きでもなかった」「これに統一しよう」
- AIに“勝利”した人現る 話題のAI「ChatGPT」としりとりをした結果に「今年一番笑った」「腹痛いw」
Copyright © ITmedia, Inc. All Rights Reserved.