調べて分かる道具箱

もらった暗号を読む

受け取った暗号文を読む

どの方式で作られたか

送ってくれた人に合言葉を聞いて、そのまま入れてください。 この暗号は合言葉を繰り返して使う方式です。 聞いた言葉をそのまま入れてください。

読めた文章

(もらった暗号文を貼りつけてください)

合言葉が違うと、読める文章にならないだけで、 「違います」とは出ません。暗号はそういうもので、正しい鍵かどうかを暗号自身は知らないからです。 意味の通る文になったら、それが当たりです。

よくある質問

合言葉を教えてもらっていません。読めますか?

この道具では読めません。ただし、この暗号は合言葉を知らなくても破れます。「あそびの暗号」のページの下のほうに、文字の出る回数を数えて破る道具があります。短い文章だと外れやすいので、長い文章のほうがよく当たります。

合言葉を入れたのに、意味のわからない文字が出ます

合言葉か、方式のどちらかが違っています。暗号は「正しい鍵かどうか」を自分では知らないので、違う鍵を入れても「違います」とは出ず、ただ意味のない文字が出るだけです。送ってくれた人に、合言葉と、どちらの方式で作ったかをもう一度聞いてください。

「いくつずらしたか」にマイナスを付けるのですか?

付けません。送ってくれた人が「3ずらしたよ」と言ったら、そのまま3と入れてください。戻すためにマイナスにするのはこの道具がやります。読む人に符号を反転させると、間違いのもとになるからです。

貼りつけた暗号文はどこかに送られますか?

送りません。読む計算は全部あなたのブラウザの中で終わります。この道具に限らず、このサイトは入力した内容をサーバーへ送りません。

数字や、見たことのない漢字がそのまま残っています

この暗号は輪の中でずらすので、行き先を作れない字はそのまま残ります。数字と、常用漢字表に無い漢字(人名用漢字・旧字体)と絵文字、それに空白と改行がそれです。だから元の文章にもそのまま入っていたはずです。濁点のついた字(が・ぱ)・小さい字(っ・ゃ)・常用漢字・記号は2026年8月からそれぞれの輪でずらすようになったので、読んだあとも濁点の字は濁点の字、漢字は漢字のままになります。

お友達からもらった暗号文を貼りつけて、合言葉を入れると元の文章が出ます。

合言葉は、リンクには入っていません

暗号文と合言葉を一緒に渡してしまうと、それはもう暗号ではありません。 封筒に手紙と鍵を一緒に入れて送るようなもので、拾った人がそのまま読めてしまいます。

だからこのしくみでは、リンクに入るのは暗号文と、どの方式かの2つだけです。合言葉は口で伝えます。「合言葉はカワウマだよ」と直接言う、という意味です。

面倒に思えるかもしれませんが、これはこの遊びの手順そのものです。 昔の暗号でも、鍵をどうやって相手に渡すかが、いちばん難しいところでした。 暗号を作る方法より、鍵の渡し方のほうが長く問題であり続けたのです。

合言葉が違っても、「違います」とは出ません

暗号は、入れられた鍵が正しいかどうかを自分では知りません。どんな鍵でも計算はできてしまうので、違う鍵を入れると意味のない文字が出るだけです。

だから読む人は、出てきた文章の意味が通るかどうかで当たりを判断します。 これは弱点のように見えて、実は暗号を破る側にとっても同じ壁になります ── 鍵を片っ端から試す人も、「読める文章になったかどうか」を自分で見分けなければいけないからです。

リンクがやたら長くならないのは、字に番号をふっているから

インターネットの住所(URL)に日本語を入れると、1文字が9文字にふくらみます。 「あ」は %E3%81%82 という9文字になるのです。 27文字の手紙なら、それだけで243文字。長すぎて、アプリによってはリンクとして扱ってもらえません。

そこでこの道具は、字に番号をふって、ひとつの大きな数にまとめています。 暗号文に出てくる字は、五十音・カタカナ・英数字・記号の253種類だと決まっているからです。

「あい」の2文字でやってみると、こうなります。

  1. 字を番号にする。「あ」は0番目、「い」は1番目
  2. 253進法の数にまとめる。1 から始めて、字が来るたびに253倍して、その字の番号を足す。1 × 253 + 0 = 253(「あ」)、つぎに253 × 253 + 1 = 64010(「い」)
  3. その数を、コンピュータが扱う形に直す。64010 は2バイト
  4. URLに入れられる字に直す。できあがりは-go の3文字

「あい」が %E3%81%82%E3%81%84(18文字)から-go(3文字)になりました。

なぜ 0 ではなく 1 から始めるのでしょう

手順2で、いきなり 1 から始めているのが気になったかもしれません。 これは「あ」で始まる文章を守るためです。

「あ」は表の0番目です。もし 0 から始めると、 「あい」は 0 × 253 + 0 = 0、つぎに 0 × 253 + 1 = 1 で、ただの 1 になってしまいます。「い」1文字のときとまったく同じ数です。先頭の「あ」が、数のうえで消えてしまうのです。

ふだんの数でも同じことが起きています。0072 と書いても72 になり、頭の 0 は残りません。 だから先に 1 を置いて、その後ろに字を積んでいきます。戻すときはこの 1 が出てきたところでやめるので、「あ」が何個続いていても数えられます。

なぜ短くできるのか

ふだん使っている10進法は、数字が 0 から9 の10種類しかないから10進法です。 同じ理屈で、使う字が253種類なら253進法が使えます。

日本語をそのまま書くときに使っている UTF-8 というしくみは、世界中の10万字以上を表せるように作られています。 そのぶん「あ」1文字に3バイト(24ビット)使います。

でもこの暗号に出てくる字は253種類しかありません。253種類なら、1文字あたり8ビットに満たない量で足ります── 24ビットの3分の1以下です。「世界中の字が表せる」という力に払っていた代金を、使わないと決めることで返してもらった、というわけです。

漢字や絵文字が混ざると、この253種類の表に無いので番号にできません。 そのときは別のやり方に切り替わります。リンクが少し長くなるだけで、読めなくはなりません。

この暗号は、秘密を守れません

ここで扱っているのは遊びの暗号です。合言葉を知らない人でも、 文字の出る回数を数えるだけで破れます。 どうやって破るのかはあそびの暗号のページで、実際にやってみせています。

人に見られたら困ることは、この暗号に入れないでください。