HOME> すべての記事> サーバーについてのコラム>

インターネットを使う上で知っておきたい暗号化技術の基礎知識を徹底解説

インターネットを使う上で知っておきたい暗号化技術の基礎知識を徹底解説

  • このエントリーをはてなブックマークに追加

インターネットを使用する上では、暗号化技術は必要不可欠なもので、我々が普段インターネットを使用する多くの場面で利用されています。今回は、暗号化技術の基礎知識を解説します。

暗号化とは特定の人や機器だけがデータ内容を読める様にする技術

暗号化技術とは、特定の人や機器だけがデータ内容を読めるようにし、それ以外の人にはデータ内容をわからなくする技術です。

例えば、メールなど入力している文章をそのまま入力し送信すると、通信中に盗聴などにあった場合、そのまま文書内容が不特定多数の人にもれてしまう可能性があります。また、ウェブサービスでログインするために使われているパスワードが暗号化されていなければ、悪意を持った第三者がパスワードの文字列を抜き取り、不正アクセスを試みる可能性も考えれれます。

そのため、暗号化しておくことで、不特定多数の人が読めなくなるようにします。逆に、暗号化したデータ内容を元に戻すことを「復号」といいます。

暗号化したり復号するために必要なのは、自宅玄関同様に「鍵」が必要になります。暗号化するときは「暗号鍵」復号するときは「復号鍵」が必要です。

暗号化の方式は2種類あり、暗号鍵と復号鍵が共通している「共通鍵暗号方式」と、暗号鍵と復号鍵が異なる方式が「公開鍵暗号方式」があります。

共通鍵暗号方式は暗号鍵と復号鍵が共通している方式

共通鍵暗号方式は、暗号鍵と復号鍵が共通している暗号方式です。そのため、鍵は1種類しか存在せず、鍵を必要としている方以外には絶対に公開しないようにします。

共通鍵暗号方式は、鍵が1種類に限定されるため、暗号と復号が高速に行えるメリットが存在します。そのため、データの暗号化を中心に多く利用されています。一方で、復号鍵を必要としている人が増えると管理が厄介になってしまいます。また、暗号鍵と復号鍵が共通しているため、インターネット上で公開することは出来ず、鍵の受け渡しをする場合には必ず対面して受け渡すなど、手間が発生するデメリットがあります。

共通暗号化技術は以下の6種類が存在します。

DES(Data Encryption Standard)

データを固定長に区切ったブロック暗号を用いて暗号化を行います。鍵長は56ビットと短く近年では安全性が低いとされています。

RC4(Rivest’s Cipher4)

ビット単位で暗号化を行うストリーム暗号を用いて暗号化を行います。鍵長は40から256ビットです。代表的なのが無線LANの暗号方式WEPに用いられていますが、近年では解読が容易であることから使われる機会は減っています。

3-key Triple DES

DES暗号化方式を3回繰り返して暗号化します。鍵長は168ビットです。政府が推奨している暗号化方式の1つです。

AES

DESの後継となる暗号化方式で、米国立標準技術研究所(NIST)が規格化し、鍵長は128ビット、192ビット、256ビットの3つが利用可能です。安全性が高く、こちらも政府が推奨している暗号化方式として選ばれています。

Camellia(カメリア)

こちらは、先程のAESと同様にブロック暗号を用いたもので、NTTと三菱電機が共同で開発した日本初の暗号化技術です。こちらも鍵長は128ビット、192ビット、256ビットの3つが利用できます。こちらも、安全性が高いことに加え、消費電力が少なく、高速に暗号化できるのが特徴です。

KCipher-2(ケーサイファー・ツー)

九州大学とKDDI研究所が共同で開発したストリーム暗号技術で、AESに比べて約10倍の速さで暗号化が可能です。鍵長は128ビットとなっています。

公開鍵暗号方式は暗号化鍵と復号鍵が異なる方式

公開鍵暗号方式は、暗号化鍵と復号鍵が異なる方式で、使用する人に応じて、公開鍵と秘密鍵のペアを作成する必要があります。公開鍵は鍵を必要としている人に渡す鍵で、秘密鍵はご自身で保管する鍵です。

公開鍵と秘密鍵を用いるとこで、「公開鍵で暗号化して、秘密鍵で復号すること」と「秘密鍵で暗号化し、公開鍵で復号する」という2パターンが可能です。

公開暗号化技術は以下の6種類が存在します。

RSA(Rivest Shamir Adleman)

RSAは、公開暗号化方式で一般的に利用されている暗号技術で、要素因数分解の困難さを利用して暗号化を行い安全性を担保しています。鍵長は2048ビット以上が推奨されています。

DH鍵交換(Diffie-Hellman key exchange)

事前に秘密鍵の情報を共有することなく、暗号鍵の共有を可能とした技術で、離散対数問題を利用して安全性を担保しています。

DSA(Digital Signature Algorithm)

DSAはデジタル署名アルゴリズムとも呼ばれ、離散対数問題の安全性を担保しており、署名の長さを160ビットに2を乗算した長さに短縮することで、処理効率を高めた技術です。

ECC(Elliptic Curve Cryptography)

ECCは日本語で楕円曲線暗号とも呼ばれ、楕円極上の離散対数問題の困難さを利用した暗号化技術です。RSA暗号化技術の後継として期待が高まっています。

  • このエントリーをはてなブックマークに追加