ストリーム暗号とは何ですか?
ストリーム暗号は、暗号化する必要があるソースがランダムに見えるキーシーケンスに対して処理されるデータ暗号化で使用されるアルゴリズムの一種です。 このタイプの暗号は、テキストが処理されているため、暗号化が変化する可能性があるという意味でやや柔軟です。 暗号化は操作の現在の状態にも依存するため、これらは時々状態暗号と呼ばれます。 一度に64ビットのデータの塊で動作するブロック暗号とは対照的に、ストリーム暗号は1ビットで動作できます。 このため、ストリームは処理能力が非常に少ない高速で処理できます。
最初のストリーム暗号は、1917年にギルバートバーナムによって考案されました。バーナムは後に、一度の鍵を使用するために1回限りの鍵を使用するストリーム暗号の一種である一度のパッドとして知られる暗号を作成するのにも役立ちました。 1回限りのパッドでは、生成されたキーは、暗号化する必要があるデータと同じ長さであり、完全にランダムであり、どこでも使用されることはありませんeLSE、したがって名前。
通常はプレーンテキストと呼ばれる暗号化されるデータに対して処理された場合、結果の暗号文はキーなしで復号化することは不可能です。 1回限りのパッドは、ほとんどのシナリオで対処するのが難しいため、非常に排他的な状況にのみ使用されます。 それでも、ストリーム暗号は通常有用であると見なされるため、キーは短縮されて擬似ランダムになりました。つまり、統計的にランダムですが、実際にはそうではありません。
Stream Cipherには、その場で暗号化する機能があります。 このようにして、単純なストリーム暗号がペンや紙の上の人々によって実行されるのは簡単ですが、ブロック暗号は通常、処理するためにコンピューターを使用する必要があります。 プレーンテキストは、キーストリームとともに暗号化プロセスを介して流れます。キーを構成する擬似ランダムシーケンスでは、変換され、反対側にciphertextとして出ます。
私たちulaly、この暗号化は、個々のビットでの排他的または(XOR)操作を介して、暗号を通過する際に発生します。 単純なXOR暗号は、その基礎として論理的な分離の一種を使用します。これは、どちらのオペランドが真であるが両方ではない場合に結果が真であると本質的に述べています。 たとえば、暗号化プロセスを少し移動するとゼロまたは1つであり、ペアのキーストリームビットが一致しない場合、結果の出力は1つです。 ビットとペアのキーストリームビットが一致する場合、両方が1つであるか、両方がゼロである場合、結果はゼロです。 1つとゼロの暗号化されたストリームは、同じキーストリームを使用して、ビットを元の平文に戻すために、伝送の反対側に復号化されます。
ストリーム暗号には2つのタイプがあります。 同期方法を使用して、キーストリームはプレーンテキストまたは暗号文とは別に作成され、マージして暗号化または復号化を提供します。 この方法では、送信端の送信と受信端の両方が発行は、同じキーとキー内の同じ位置で動作している場合に同期したままでなければなりません。 問題が発生した場合、復号化は最初からやり直す必要があるか、新しい出発点を示す暗号文に断続的に配置されたフラグがある場合があります。 一方、自己同期の暗号は、暗号文のいくつかの以前の数字に基づいてキーストリームを更新します。
RC4と呼ばれる最も頻繁に使用されるストリーム暗号の1つは、RSA DataSecurity®によって作成されました。 多くのソフトウェア製品のライセンスと使用されており、安全なインターネット通信で使用される安全なソケットレイヤー(SSL)プロトコルと、ワイヤレスデバイスで使用される有線同等のプライバシー(WEP)暗号化が使用されています。 よく使用される別の暗号はOryxとして知られており、暗号化する必要がある細胞電話データ送信での使用が見つかりました。 IBM®は、シールとして知られるストリーム暗号化方法も開発しました。これは、ハードディスク暗号化で使用されていることがわかりました。/p>