Viginerのコードとその手がかり

このトピックは暗号化の歴史の観点からのみ興味深いものであり、説明された暗号は現代世界の情報を保護するのにほとんど役に立たないとすぐに言わなければなりません。 しかし、それにもかかわらず、このトピックで説明されているアルゴリズムは、特殊なオリンピックで役立ちます。



Blaise Vigninerにより、17世紀にかなり興味深い暗号化方式が提案されました。 暗号鍵は特別なフレーズです。 このフレーズは何度も繰り返され、暗号化されたテキストに上書きされます。 シークレットメッセージの各文字は、キーフレーズの文字で指定された特定の数だけソーステキストの各文字をシフトすることによって取得されます(文字Aはシフトを与えません、文字Bは1ポジション、Cを2シフトなどを意味します)。

たとえば、キーフレーズ「ABV」を使用して「SECRET」という単語を暗号化してみましょう。 文字Cはシフトされず、最初の文字Eは1ポジションシフトされ、Fに変わり、文字Kは2ポジションシフトされ、Mに変わります。メッセージの暗号化を続けると、「SZHMRZHF」になります。



3世紀の間、この暗号は事実上解読不能と見なされていました。 この暗号に侵入する最初の試みは、19世紀に行われました。 これらの試みはすべて、キーフレーズの長さを決定することに基づいていました。 長さがわかれば、暗号化されたテキスト全体をフラグメントに分割できます。各フラグメントは同じシフトでエンコードされます。 この例では、文字C、Pはゼロシフトでエンコードされ、E、Eは1シフトでエンコードされ、K、Tは2シフトでエンコードされます。テキストが十分に長い場合、周波数分析を適用して元のメッセージを明らかにできます。 この暗号の鍵は、キーフレーズの長さを検索することであることがわかります。



次に、この長さを見つけるための2つの方法を検討します。 最初の方法はフリードリッヒ・カシツキーによって提案されました。 Kasitskyの方法の基礎は、バイグラムの検索です。 暗号化されたメッセージ内で、キーフレーズの長さの倍数の距離で同じバイグラムが繰り返される場合、同じバイグラムが同じ位置で、暗号化されたテキスト内で発生します。 この距離を見つけ、その除数をすべて受け取った後、キーフレーズの長さの候補番号のセットを取得します。



カシツキーの方法を使用して、次のテキストを解読してみましょう:「OAITABNPKHYUPM'AEMAZCHAFRYUATSMATVUSHKGUNSHYDOAYVYTCHYHTYTENENHEAPNHDRESYUNYAZ」。 暗号化されたテキストには、MA(位置16および26)、YOU(位置44および49)、HX(位置57および62)の3つの繰り返しバイグラムが含まれます。 バイグラムMAは10ポジションの距離で繰り返され、バイグラムYOとHXは5ポジションの距離で繰り返されます。 ほとんどの場合、キーシーケンスの長さの位置は5です。検討中の方法には運が必要です。 「ランダムな」バイグラムがテキストに表示される場合があります。 それらの確率は「通常の」確率よりもはるかに低くなりますが、小さなテキストではデコードが大幅に複雑になる可能性があります。



テキストを最終的に復号化する前に、Friedmanによって提案されたキーの長さを決定する別の方法を検討します。 このメソッドの本質は、メッセージの循環シフトにあります。 この方法で受信したメッセージは元の暗号文の下に記録され、上下の行の一致する文字の数が計算されます。 これらの数値に基づいて、いわゆる 一致インデックス、一致の数とメッセージの合計の長さの比率に等しい。 ロシア語のテキストの場合、一致インデックスは約6%ですが、ランダムテキストの場合、このインデックスは1/32です。 約3%。 フリードマン法はこの事実に基づいています。 テキストは1,2,3などのシフトで書かれています。 位置および各シフトについて、一致のインデックスが計算されます。 取得するメッセージを循環的にシフトします。

シフト一致インデックス

2 0 0.000

3 5 0.068

4 2 0.027

5 8 0.110(!)

6 1 0.014

7 1 0.014

8 2 0.027

5のシフトでは、インデックスが急激に上昇するため、キーワードの長さは5に等しい可能性が最も高くなります。インデックスが急激に上昇する理由を理解するのは非常に簡単です。 すべての文字が同じ位置にシフトされる場合、一致インデックスはソーステキストと同じです。 Viginer暗号のインデックスを計算する場合、すべての場合(シフト長がキーの長さと等しい場合を除く)で、事実上ランダムなテキストを比較しています。



キーの長さを決定したら、文字の頻度の表を使用して、有名な子供の詩が暗号化されていることがわかります。

私たちのターニャは大声で泣いています:

ボールを川に落としました。

ターニャターニャ泣かないで

ボールは川でdrれません!

Bartoの作者の姓がパスワードとして使用されました。



この記事で新しいものを見つけてください。 そして、あなたが使用する知識は、利益のためだけのものであることを願っています。



All Articles