Vigenere暗号分析

まず、攻撃者は、モノアルファベット置換を使用して、またはVigenere暗号を使用して、暗号文が取得されたと確信していると仮定します。 これら2つの方法のどちらを使用したかを調べるには、簡単なテストを実行できます。 モノアルファ置換が使用された場合、暗号文の統計指標は、オープンテキストが書かれている言語の対応する指標と変わりません。 分析のためにメッセージが1つしかない場合、統計指標の正確な一致は取得できません。 しかし、統計がプレーンテキストの統計を十分に正確に繰り返している場合は、単一アルファベットの置換が使用されたと想定できます。



逆に、すべてがVigenere暗号が使用されたことを示している場合、後で見るように、テキストのさらなる分析の成功は、キーワードの長さを決定できるかどうかに依存します。 この問題の解決策は、この暗号の次の機能に基づいています:2つの同一の平文シーケンスの最初の文字が互いにキーの長さの倍数の距離にある場合、これらのシーケンスは暗号化されたテキストの同じシーケンスで表されます。 たとえば、プレーンテキストに2つの同じ文字シーケンス(単語またはその組み合わせ)がある場合、それらが同じキーフラグメントを使用して暗号化されている場合、同じ暗号テキスト文字シーケンスが取得されます。 暗号化されたテキストのみを自由に使用できるアナリストは、文字のK(キーの長さの倍数)のシフトを伴う文字の繰り返しシーケンスを検出します。



さらなる分析は、この暗号の別の機能に基づいています。 キーワードの長さがNの場合、実際には、暗号はN個の単一アルファベットのワイルドカード暗号で構成されます。 たとえば、1番目、10番目、19番目などにあるキーワード詐欺文字を使用する場合 位置は同じ単一アルファベット暗号で暗号化されます。 これにより、平文文字の頻度分布の既知の特性を使用して、各モノアルファベット暗号を個別に解読することができます。



キー行の周期性は、メッセージ自体と同じ長さのキー行に非周期的なシーケンスを使用することで回避できます。 Vizhenerは、キーワードと平文自体の連結の結果としてキー行のシーケンスが取得される場合、自動キー選択を使用するシステムと呼ばれるアプローチを提案しました。 検討した例では、次のようになります。



キー:詐欺的なウェア

クリアテキスト:wearediscoveredsaveyourself

暗号文:ZICVTWQNGKZEIIGASXSTSLVVWLA



ただし、このスキームも脆弱です。 キー行と平文の両方で文字の分布頻度の値は同じになるため、この場合は統計的手法を適用できます。 次に、たとえば、キー文字bで暗号化された文字aは、これらの文字の頻度の積に等しい頻度で発生します。 暗号文の分析を成功させるのは、これらの規則性です。



このような暗号解析方法に対する最善の保護は、長さが平文の長さと同じであるが、統計に関して平文とは異なるキーワードを選択することです。 このようなシステムは、1918年にAT&Tエンジニアのギルバートバーナムによって提案されました。彼のシステムは、文字ではなく2進数で動作します。 簡単に言うと、次の式で表すことができます。



画像



したがって、暗号文は、プレーンテキストとキーに対してXOR演算をビットごとに実行することにより生成されます。 この操作のプロパティにより、復号化のために同様の操作を実行するだけで十分です。



画像



この技術の本質は、鍵の選択方法です。 バーナムは、キーワードの繰り返しを意味するループテープの使用を提案しました。そのため、彼のシステムは実際には非常に長いが、それでも繰り返しキーを操作する必要がありました。 このようなスキームは、非常に長いキー長のために暗号解析のタスクを非常に複雑にするという事実にもかかわらず、暗号化されたテキストの十分に長い断片、既知またはおそらく既知の平文の断片、またはその両方を一度に持つことにより、スキームをハッキングすることができます。



陸軍軍曹のジョセフ・モーボルニュは、バーナムの暗号化スキームを改良して、非常に信頼性の高いものにすることを提案しました。 Mobornは、繰り返しを拒否し、メッセージの長さと同じ長さのキーをランダムに生成することを提案しました。 使い捨てテープ(または1回限りのメモ帳を使用したスキーム)と呼ばれるこのようなスキームは、クラックすることはできません。 そのアプリケーションの結果として、出力はプレーンテキストと統計的な関係を持たないランダムなシーケンスになります。 この場合、暗号文は平文に関する情報を提供しないため、コードをクラックする方法はありません。



この方法の実用的なアプリケーションの複雑さは、送信者と受信者の両方が同じランダムキーを持ち、見知らぬ人からそれを保護できる必要があるという事実にあります。 したがって、Vernam暗号は他の暗号よりも優れているにもかかわらず、実際にはほとんど使用されません。



All Articles