ひらがなヴィジュネル暗号ツール
※ブラウザ上で処理するため、サーバーに入力した文字を送信することはありません。
← 横にスクロールできます →
解読結果
鍵の見当を入れて確かめる・文字/列タップで連動※ブラウザ上で処理するため、サーバーに入力した文字を送信することはありません。
暗号文(結果)
ツールについて
このツールはひらがなのヴィジュネル暗号を作ったり解いたりするためのツールです。
ヴィジュネル暗号は、シーザー暗号(決まった数だけ文字をずらす暗号)を発展させたもので、鍵として決めた言葉の文字ごとに、ずらす量を変えていくのが特長です。
たとえば鍵が そら なら、1文字目は「そ」の分、2文字目は「ら」の分、3文字目はまた「そ」の分……と、ずらし量が交代しながら進みます。
1種類のずらしで済むシーザー暗号より、規則が読み取りにくくなります。
ヴィジュネル暗号ツール 変換ツール自体は世の中にありますが、その多くは英字(A〜Z)が前提で、ひらがなで作れて、しかも仕組みを見ながら解けるものは多くありません。
謎解き・リアル脱出ゲーム・ARG(代替現実ゲーム)で出題する暗号文を自分で作ったり、出会った暗号を確かめながら解いたりする場面を想定しています。
ツールの使い方
Step 1: 「解く」か「作る」かを選ぶ
一番上のタブで、解く(暗号文を鍵で読む)か 作る(文章を暗号文にする)かを選びます。
向きは自動判定せず、必ずご自身で選ぶ方式です。
Step 2: 文字体系を選ぶ(かな/英字)
その上のトグルで かな と 英字 A–Z を切り替えます。
英字モードは、標準的なアルファベットのヴィジュネル暗号を扱いたいときのための補助です。
文字体系を切り替えると、入力や鍵はリセットされます。
「作る」の使い方
平文と鍵を入れる
平文(かなの文章)と鍵(かなの言葉)を入力します。
例えば、平文 たからはここ、鍵 そら と入れると、暗号文 ほわきつねい が出ます。
入力するとすぐに結果へ反映されます。
暗号文と濁点マップを受け取る
結果として暗号文と必要なら 濁点・半濁点マップ が出ます。
このツールは清音(濁点・半濁点のつかないかな)だけで暗号を計算するため、ば や ぱ のような濁音・半濁音は、いったん は に直したうえで、「もとは濁点だった」という情報を別に記録します。
たとえば平文 ばら・鍵 か なら、暗号文は まわ、マップは ①に゛(1文字目に濁点)となります。
濁点が無ければマップは出ません。
マップはワンタップでコピーできます。
解き手に渡すものを確認する
暗号文の下に、解き手へ渡すものの案内が出ます。
渡すのは、暗号文・鍵の手がかり・(濁点があれば)濁点マップです。
鍵はそのまま教えず、謎かけなどでヒントとして示すと、解く楽しみのある問題になります。
「解く」の使い方
暗号文を入れて鍵長を決める
暗号文を入力 に暗号文を貼り付け、鍵長(列の数) を決めます。
鍵長は鍵の文字数のことで、−/+ ボタンやクイックボタン(2〜7)で変えられます(範囲は1〜12)。
鍵長を変えると、下の列の並びがすぐに組み替わります。
鍵長が合っていないと文章として読めないので、まず鍵長の見当をつけるのがコツです。
列ダイヤルと鍵欄で鍵を合わせる
暗号文は、鍵長ごとに縦の 列 に分けられ、各列が1本のシーザー暗号(同じ量のずらし)になります。
列の上にあるダイヤルを ▲/▼、上下ドラッグ、またはマウスホイールで回すと、その列のずらし量が変わり、解読結果 がすぐに更新されます。
鍵の見当がある場合は、鍵 の欄に直接入力しても構いません。
鍵欄と列ダイヤルは連動していて、どちらを動かしても同じ状態を表します。
連動ハイライトと列ロックを使う
列を操作したりタップしたりすると、その列が担当している文字が 解読結果 の中で強調されます(連動ハイライト)。
逆に解読結果の文字をタップすると、その文字を担当する列が強調されます。
「このダイヤルが、この文字を動かしている」という対応が一目で分かります。
また、鍵の一部だけ分かっているときは、その列を ロック して固定し、残りの列だけを回して探せます。
まずは例文で
各モードの 例文を入れる を押すと、見本が入ります。
解くモードでは、鍵の当て方を教える案内も表示されるので、初めてでも手順をなぞって体験できます。
機能の説明
列リール(解くモード)
暗号文を鍵長ごとに縦の列へ折り返し、各列を1本のダイヤルとして横に並べたものです。
各列の上部は回転ダイヤル風になっていて、今の鍵文字を大きく、その前後のかなを薄く表示します。
ダイヤルを回すと、その列に属する文字だけが変わります。
列が画面幅を超えるときは横スクロールで確認でき、スクロールできる場合は案内が出ます。
連動ハイライト
いま注目している列と、それが担当する解読結果の文字を、同時に強調します。
列をタップすれば、その列の担当文字が光り、解読結果の文字をタップすれば、その文字を担当する列が光ります。
列ダイヤルと文章のつながりを見失わないための仕組みです。
鍵長ダイヤルと鍵の二重入力
鍵長(列の数)は −/+ とクイックボタンで手早く変えられます。
鍵は、鍵 の欄への文字入力でも、各列のダイヤル操作でも指定でき、どちらも同じ鍵の状態を双方向に表します。
鍵欄が空のときは、まだ推定がない状態として扱います。
列ロック(部分ヒント)
鍵の一部だけ分かっているときに、その列を固定して探索から外せます。
分かっている列はロックしたまま、残りの列だけをダイヤルで回して当てにいけます。
濁点・半濁点マップ(作るモード)
清音化した濁音・半濁音の位置と記号を、①に゛、③に゜ のような形で示します。
これは、暗号文には載らない濁点の情報を、解き手へ帯域外のヒントとして渡すためのものです。
位置は清音のかなを1から数えた番号で表します。
解読結果とコピー・例文プリフィル
解くモードの 解読結果 は、いまの鍵で読み下した文章をそのまま表示し、ワンタップでコピーできます。
作るモードの暗号文もコピーできます。
各モードの例文で、すぐに動きを試せます。
ツールの仕様
このツールは、かなのヴィジュネル暗号について、主に次のように扱いを定めています。
変換の考え方(かな46文字の足し算)
清音のかなを あ から ん まで46文字の循環する並び(リング)とみなします(を・ん を含み、ゐ・ゑ は除きます)。
各文字の位置に、鍵の文字の位置を足し、46で一周させたものが暗号文の文字です。
式で書くと 暗号の位置 =(平文の位置 + 鍵の位置)÷46 の余り になります。
鍵は文字ごとに交代して使われ、解くときは同じ量を引き戻します。
かなの正規化(清音への統一)
入力のかなは、まず清音へそろえます。
カタカナはひらがなへ、濁音・半濁音は清音へ(記録は濁点マップへ)、小書き(っ・ゃ など)は大書きへ、長音符(ー)は直前の音の母音へ置き換えます。
この前処理を経てから、上の足し算を行います。
濁点・半濁点は暗号文に載りません
濁音・半濁音は清音に直してから暗号にするため、暗号文に濁点そのものは現れません。
そのぶんは濁点マップに退避し、解き手がマップを見て答えに ゛・゜ を補います。
これは、かなの謎解きでよく使われる「表は清音だけ・濁点は答え側に付す」という考え方に沿った仕様で、不具合ではありません。
小書き・長音の区別は戻りません
小書きと大書き、長音符と母音の違いは、清音へそろえる段階で失われ、復元できません。
たとえば がっこう は かつこう として扱われ、解読結果も かつこう になります(濁点マップで1文字目に濁点が付くことは分かります)。
解き手が文脈から がっこう を補う前提の割り切りです。
鍵も清音化されます
鍵にも同じ正規化がかかります。
たとえば鍵 かぎ は、実際には かき として働きます。
濁点入りの鍵を使うときは、作るモードで注意が表示されます。
リング外の文字(パススルー)
清音のかな以外(記号・空白・改行・英数字など)は、変換せず元の位置のまま通します。
このとき鍵は進めません(パススルーした文字の分だけ鍵がずれる、ということは起きません)。
英字モード(A–Z)
英字 A–Z では、標準的なアルファベットのヴィジュネル暗号として扱います。
大文字に揃え、英字以外はパススルーし、濁点マップはありません。
例えば平文 MEET・鍵 KEY なら暗号文は WICD です。
ちょっとした豆知識
ヴィジュネル暗号は、16世紀のフランスの外交官ブレーズ・ド・ヴィジュネルの名で知られる、複数のずらしを使う換字式暗号です。
鍵の言葉に沿ってずらし量が変わるため、長らく「解読できない暗号」と呼ばれた時期もありました。
のちに、鍵の長さを推定して同じずらしの列に分け、列ごとにシーザー暗号として攻める、という考え方が知られるようになります。
このツールの列ダイヤルは、その「鍵長で列に分けて、列ごとに合わせる」という発想を、かなでそのまま手で試せるようにしたものです。