対称暗号化アルゴリズムの種類

コンピュータデータを暗号化するためのアルゴリズムには、主に2つの種類があります。対称と非対称です。 各暗号化タイプには、それぞれ長所と短所があります。 対称アルゴリズムは、単一のキーまたはパスワードを使用してプレーンテキストデータを判読不能な暗号文に変換します。 彼らは同じ鍵を使って暗号文を復号します。 これらのアルゴリズムは比較的単純で迅速ですが、第三者が鍵を傍受した場合、メッセージを復号化できます。 信頼できる電子商取引およびコンピュータファイルセキュリティの必要性により、研究者はいくつかのタイプの暗号化アルゴリズムを開発するようになりました。

DESとトリプルDES

Triple Data Encryption Standard、つまりTriple DESアルゴリズムは、1976年に標準として導入されたオリジナルのDESアルゴリズムから発展しました(参考文献2、3ページ)。 DESは、56ビットの64ビットキーを使用して、固定サイズのデータ​​ブロック内のメッセージを暗号化します。 1970年代には安全であると考えられていましたが、計算速度の向上は、1990年代後半にDES暗号化を破る高度な攻撃をもたらしました(参考文献2、6ページ)。 研究者はDESが脆弱であると判断したため、ソフトウェア開発者は代わりに新しい標準のTriple DESを使用します。 新しい規格では、2つまたは3つの64ビットキーを使用し、各メッセージに対して3回暗号化を実行することで、アルゴリズムの強度を高めています。 各パスの結果は、次のパスのソースとして使用されます。

RC2

Ron Rivestは、DESに代わるものとして1980年代後半にRC2アルゴリズムを開発しました。 RC2は64ビットブロックのデータを暗号化し、8ビット単位で8から128ビットの可変キーサイズを持ちます。 Lotus Developmentは、同社のLotus Notesソフトウェア用のRC2を作成するためのRivestの支援を求めました。 暗号化アルゴリズムの強みの大部分はその鍵の長さにあるため、研究者らはRC2を妥協しすぎると考えています(参考文献3)。

フグとトゥイッシュ

セキュリティ研究者のBruce Schneierは、1990年代初頭に対称アルゴリズム「Blowfish」を開発しました(参考文献3)。 RC2と同様に、Blowfishはメッセージを同じサイズの64ビットブロックに分割し、ブロックを暗号化します。 その鍵サイズは32から448ビットの範囲です。 SchneierはBlowfishをパブリックドメインのアルゴリズムとしてリリースし、データを暗号化したい人なら誰でも自由に利用できるようになりました。 Blowfishを改良するために、彼は後にTwofishを開発しました。これは128ビットのブロックと最大256ビットの長さのキーを使用します。 Twofishは現在利用可能な最も速い固定ブロックアルゴリズムの1つです、そしてそれは理論的な脆弱性を持っていますが、まだ誰もそれを壊していません。

ケンブリッジの研究者Ross Anderson、Eli Biham、Lars Knudsenは2000年にSerpentアルゴリズムを開発しました(参考文献4)。 研究者らは、他のアルゴリズムには暗号化をショートカット攻撃に対して脆弱にする理論上の欠陥があると考えていました。 彼らは可能な限りこれらの欠陥から解放された暗号化アルゴリズムを開発しようとしました。 蛇は彼らの努力の結果でした。 128ビットブロックと256ビットキーを使用します(参考文献5)。 BlowfishとTwofishと同様に、Serpentアルゴリズムはパブリックドメインです。 研究者は、「安全係数」、または攻撃に対する信頼性について非常に高いスコアをサーペントに与えました。

人気の投稿