暗号化アルゴリズムとは?種類・定義・意味をわかりやすく解説

暗号化アルゴリズムとは、暗号化の手順・ルールのことです。

暗号化アルゴリズム=暗号化の手順・ルール

暗号化アルゴリズムとは、暗号化の手順・ルールのことです。暗号化アルゴリズムにはいくつかの種類があり、仕組みや安全性が異なります。また、暗号化アルゴリズムだけでは暗号化できません。暗号化アルゴリズムに応じた鍵が必要になります。

暗号化や鍵については、下記の記事をご覧ください。

暗号化・復号とは?仕組み・種類・定義をわかりやすく解説

ポイント
  • 暗号化アルゴリズムとは、暗号化の手順・ルールのこと
  • 暗号化には、暗号化アルゴリズムに応じた鍵が必要

暗号化アルゴリズムの種類・一覧

主な暗号化アルゴリズムは、鍵の扱い方によって「共通鍵暗号方式」と「公開鍵暗号方式」の2つに大別されます。

共通鍵暗号方式=共通の鍵を使用する暗号方式

共通鍵暗号方式は、暗号化も復号も共通の鍵を使用する方式です。このため、鍵は送信側と受信側のみが知るものにします。

共通鍵暗号方式の暗号化アルゴリズムの例
  • DES(読み方:デス、ディーイーエス)
  • トリプルDES(読み方:トリプルデス、トリプルディーイーエス)
  • AES(読み方:エーイーエス)

それぞれ、詳しく見ていきましょう。

DES(読み方:デス、ディーイーエス)とは

共通鍵暗号方式の代表的なアルゴリズムとして、DES(読み方:デス、ディーイーエス)があります。

DESとは、「データ暗号化標準」を意味する「Data Encryption Standard」の略です。DESでは、データを64ビット単位のブロック暗号に区切って処理します。

DESは、1977年にアメリカ政府によって標準規格化されました。しかし、DESは鍵を持たない者でも暗号が解読できることが実証されたため、現在では推奨されていません。代わりに、その発展であるトリプルDESや、AESなどが使用されています。

ブロック暗号とは

データを一定の長さに区切って処理する暗号アルゴリズムの総称。データの流れを順次処理する暗号アルゴリズムである「ストリーム暗号」と対比される。

トリプルDES・3DES(読み方:トリプルデス、トリプルディーイーエス)とは

トリプルDES(読み方:トリプルデス、トリプルディーイーエス)は、共通鍵暗号方式の一つです。

トリプルDES(3DES)は、DESによって3回暗号化し、暗号強度を高める暗号方式のことです。DESよりも安全性が高まる一方、暗号化にも復号にも長い時間がかかります。

AES(読み方:エーイーエス)とは

AES(読み方:エーイーエス)とは、共通鍵暗号方式の一つです。AESは、「高度な暗号化標準」を意味する「Advanced Encryption Standard」の略です。

AESは、DESよりも暗号化の強度・速度を上げています。2020年現在、アメリカで標準規格として採用されています。

ポイント
  • DESは、データを64ビット単位のブロック暗号に区切って処理する暗号方式
  • トリプルDESは、DESによって3回暗号化し、暗号強度を高める暗号方式
  • AESは、DESよりも暗号化の強度・速度を上げた暗号方式

公開鍵暗号方式=別々の鍵を使用する暗号方式

公開鍵暗号方式は、暗号化と復号に別々の鍵を使用する方式です。

公開鍵暗号方式では、暗号化用に公開鍵(パブリック鍵)、復号用には秘密鍵(プライベート鍵)という2種類の鍵を使用します。受信側は公開鍵を公開しますが、秘密鍵は公開しません。このため、第三者が解読することなく暗号化できます。

公開鍵暗号方式の暗号化アルゴリズムの例
  • RSA(読み方:アールエスエー)
  • ECC(読み方:イーシーシー)

それぞれ、詳しく見ていきましょう。

RSA(読み方:アールエスエー)とは

公開鍵暗号方式の代表的なアルゴリズムとして、RSA(読み方:アールエスエー)があります。RSAは開発者の3人の名前(Rivest、Shamir、 Adleman)が名前の由来です。

RSAでは、桁数の大きな二つの素数をかけた値で暗号化します。桁数の大きい素因数分解は難しいため、暗号化鍵から復号鍵を生成するのは困難です。これにより、RSAの信頼性を確保しています。

ECC(読み方:イーシーシー)とは

ECC(読み方:イーシーシー)は、公開鍵暗号方式の一つです。ECCとは「楕円曲線暗号」を意味する「Elliptic Curve Cryptography」の略です。

ECCは、「y2 = x3 + ax + b」で示される楕円を用いて暗号化と復号を行います。

ポイント
  • RSAは、桁数の大きな二つの素数をかけた値で暗号化する暗号方式
  • ECCは、「y2 = x3 + ax + b」で示される楕円を用いて暗号化と復号を行う暗号方式