🔐 ヴィジュネル暗号:オンラインで暗号化・復号
プロフェッショナルな多表式換字暗号ツール。キーワードに基づく一連のシーザー暗号を織り交ぜてアルファベットテキストを暗号化する方法。「解読不能な暗号」は理解しやすく実装も簡単ですが、3世紀にわたりあらゆる解読の試みに耐えました。
⚙️ 暗号設定
🎯 暗号化プロセスの可視化
ヴィジュネル暗号がメッセージを暗号化する手順をステップバイステップで可視化します
最初の50文字を表示しています...
📊 ヴィジュネル方陣 (Tabula Recta)
インタラクティブな多表式換字表 - ヴィジュネル暗号の基礎
ヴィジュネル暗号とは?完全ガイド
ヴィジュネル暗号の理解
ヴィジュネル暗号は、キーワードの文字に基づいて一連のシーザー暗号を織り交ぜてアルファベットのテキストを暗号化する方法です。1553年にジョヴァン・バッティスタ・ベッラソによって発明されましたが、1586年にそれを記述したブレーズ・ド・ヴィジュネルにちなんで名付けられました。3世紀以上にわたり、あらゆる暗号解読の試みに耐えたため、「le chiffre indéchiffrable」(解読不能な暗号)として知られていました。 is a method of encrypting alphabetic text using a series of interwoven Caesar ciphers based on the letters of a keyword. It was invented by Giovan Battista Bellaso in 1553, but is named after Blaise de Vigenère, who described it in 1586. For over three centuries, it was known as "le chiffre indéchiffrable" (the indecipherable cipher) because it resisted all attempts at cryptanalysis.
ヴィジュネル暗号の仕組みは?
暗号化プロセスでは、平文全体で繰り返されるキーワードを使用します。キーワードの各文字が、対応する平文の文字のシフト量を決定します: that is repeated throughout the plaintext. Each letter of the keyword determines the shift for the corresponding plaintext letter:
- キーワードを選択:例:「KEY」 For example, "KEY"
- キーワードを平文と揃える:メッセージの長さに合わせてキーワードを繰り返す Repeat the keyword to match the length of your message
- シフト量を計算:各キーワードの文字を数値に変換する(A=0, B=1, ... Z=25) Convert each keyword letter to a number (A=0, B=1, ... Z=25)
- シーザー暗号を適用:各平文の文字を対応するキーワードの文字の値だけシフトする Shift each plaintext letter by the corresponding keyword letter value
- 折り返し:モジュロ26を使用してZからAに戻る Use modulo 26 to wrap from Z back to A
ヴィジュネル暗号の数式
ヴィジュネル暗号の暗号化と復号の数式:
P = 平文の文字の位置、C = 暗号文の文字の位置、K = 鍵の文字の位置
ヴィジュネル暗号の変種
標準ヴィジュネル
加算を使用する伝統的な方法
ビューフォート暗号
減算を使用:C = (K - P) mod 26
ヴァリアントビューフォート
逆数バージョン:C = (P - K) mod 26
オートキー暗号
メッセージ自体を鍵の一部として使用し、セキュリティを強化
トリテミウス暗号
各位置で異なるシフトを使用する累進鍵
ヴィジュネル暗号での暗号化方法
- 入力フィールドに平文メッセージを入力します
- 強力なキーワードを選択します(長いほど良い)
- 好みの暗号方式を選択します
- 大文字/小文字と文字の処理オプションを設定します
- 「暗号化」をクリックしてメッセージを暗号化します
- 暗号文の結果をコピーまたはダウンロードします
ヴィジュネル暗号の復号方法
- 入力フィールドに暗号文を貼り付けます
- 暗号化に使用された正しいキーワードを入力します
- 暗号化に使用されたのと同じ暗号方式を選択します
- 「復号」をクリックしてメッセージを復号します
- 出力フィールドで元の平文を表示します
ヴィジュネル暗号の解読
単純な換字暗号よりもはるかに強力ですが、ヴィジュネル暗号は次の方法で解読できます:
- カシスキー検査:繰り返されるシーケンスを見つけて鍵の長さを特定する Finding repeated sequences to determine key length
- フリードマン検定:統計分析を使用して鍵の長さを推定する Statistical analysis to estimate key length
- 一致指数:頻度分布を測定して鍵の長さを見つける Measuring frequency distribution to find key length
- 頻度分析:鍵の長さがわかれば、複数のシーザー暗号として扱う Once key length is known, treating as multiple Caesar ciphers
ヴィジュネル暗号の安全性
安全性の強度は以下に依存します:
- 鍵の長さ:鍵が長いほど指数関数的に安全性が高まる Longer keys are exponentially more secure
- 鍵のランダム性:真にランダムな鍵は予測が困難 Truly random keys are harder to predict
- メッセージの長さ:短いメッセージは暗号解読が困難 Shorter messages are harder to cryptanalyze
- 鍵の再利用:複数のメッセージに同じ鍵を再利用しない Never reuse the same key for multiple messages
注意:歴史的に重要であるものの、ヴィジュネル暗号は現代において機密情報を保護するためには安全ではありません。真のセキュリティが必要な場合は、AESや他の現代的な暗号化標準を使用してください。 While historically significant, Vigenère cipher is not secure for protecting sensitive information in modern times. Use AES or other modern encryption standards for real security needs.
現代の応用
今日、ヴィジュネル暗号は以下の目的で使用されています:
- 教育目的および暗号学の基礎学習
- パズルやゲームの作成(脱出ゲーム、ARG)
- 歴史的文書の分析と研究
- 多表式換字の原理の理解
- プログラミングとアルゴリズム実装の教育
- 強力なセキュリティが不要な場合の単純な難読化
🏛️ 歴史的重要性
ヴィジュネル暗号は1553年にジョヴァン・バッティスタ・ベッラソによって発明され、300年間破られることはありませんでした。「le chiffre indéchiffrable」(解読不能な暗号)というニックネームを得て、19世紀半ばにチャールズ・バベッジとフリードリヒ・カシスキーが独立して解読法を開発するまで、外交および軍事通信で広く使用されました。
⚙️ 仕組み
ヴィジュネル暗号は、繰り返されるキーワードを使用して複数のシーザー暗号シフトを作成します。キーワードの各文字が、対応する平文の文字のシフト量を決定します。例えば、鍵「KEY」(K=10, E=4, Y=24)を使用すると、最初の文字は10、2番目は4、3番目は24シフトし、その後パターンが繰り返されます。
🧮 数学的基礎
暗号化: Ci = (Pi + Ki) mod 26
復号: Pi = (Ci - Ki + 26) mod 26
ここで P = 平文の文字の位置 (A=0...Z=25)、C = 暗号文の文字の位置、K = 鍵の文字の位置、mod = 剰余演算 Ci = (Pi + Ki) mod 26
Decryption: Pi = (Ci - Ki + 26) mod 26
Where P = plaintext letter position (A=0...Z=25), C = ciphertext letter position, K = key letter position, mod = modulo operation
🔐 安全性分析
長所:単純な頻度分析に耐性があり、複数のシーザーシフトが複雑さを増し、長い鍵がより良いセキュリティを提供する。
短所:カシスキー検査に脆弱で、十分な暗号文があれば解読可能、鍵の繰り返しがパターンを生み出し、現代の機密データには適さない。 Resistant to simple frequency analysis, multiple Caesar shifts increase complexity, longer keys provide better security.
Weaknesses: Vulnerable to Kasiski examination, can be broken with sufficient ciphertext, key repetition creates patterns, not suitable for modern sensitive data.
🎯 暗号方式の変種の説明
標準ヴィジュネル: C = (P + K) mod 26 - 伝統的な加算ベースの暗号化
ビューフォート暗号: C = (K - P) mod 26 - 減算ベースの変種、自己逆
オートキー暗号:最初のキーワードの後、平文を鍵の一部として使用し、鍵の繰り返しを排除
トリテミウス暗号:増加するシフト(0, 1, 2, 3...)を持つ累進鍵 C = (P + K) mod 26 - Traditional addition-based encryption
Beaufort Cipher: C = (K - P) mod 26 - Subtraction-based variant, self-reciprocal
Autokey Cipher: Uses plaintext as part of the key after initial keyword, eliminating key repetition
Trithemius Cipher: Progressive key with incrementing shifts (0, 1, 2, 3...)
📚 実用的なヒント
最良の結果を得るために:メッセージ長の少なくとも1/3の長さの鍵を使用し、辞書にある単語を鍵として避ける、ランダムな鍵が最大のセキュリティを提供し、異なるメッセージに鍵を再利用しない。絶対的なセキュリティのためには、ワンタイムパッド(鍵長 = メッセージ長)を使用する。
よくある間違い:短く予測可能な鍵の使用、同じ鍵の複数回再利用、名前や日付を鍵として使用する。 Use keys at least 1/3 the message length, avoid dictionary words as keys, random keys provide maximum security, never reuse keys for different messages. For absolute security, use one-time pad (key length = message length).
Common Mistakes: Using short or predictable keys, reusing the same key multiple times, using names or dates as keys.