×

暗号化

1.盗聴のリスクと暗号化

ネットワークシステムには盗聴のリスクがある。リスクを完全になくすことは不可能であるが、リスクコントロールによって許容できる程度に留めておくことはできる。盗聴リスクへの一つの対抗手段として、暗号化があげられる。

※ハッシュ関数は暗号化アルゴリズムではない。データを変換して盗聴リスクを下げることはできるが不可逆なため。

2.暗号の種類

暗号:情報を、特定の条件が整った場合のみ復元可能な一定の規則で変換し、一見すると意味のない文字列や図案とするもののこと。

・ITシステムにおいては、上記特定の条件をキーというビット列で表現する。

暗号化には大きく分けて以下2種類の方式がある。それぞれの特徴は以下(詳細は後述する)

共通鍵暗号:

・暗号化と複合に同じ鍵を用いる。

・通信ごとに別の鍵が必要になるため、鍵の管理や配送が困難。

・暗号処理にかかる時間が短い

公開鍵暗号:

・暗号化と複合に異なる鍵を用いる。

・異なる相手に対して、同じ暗号化鍵を配布することが出来るため、鍵の管理や配送が簡単。

・実装方式が複雑なため、暗号処理に時間がかかる。

3.共通鍵暗号

概要

コンピュータシステムの初期段階から用いられてきた暗号化方式で、暗号化と複合に同一の鍵を用いる。共通鍵は送信者と受信者以外に知られてはならない。そのため、共通鍵のことを秘密鍵と呼ぶこともある。キーが同一なため、暗号システムの負荷が軽減され、暗号化処理に必要なCPU資源や時間の節約が可能共通鍵の作成は送信側、受信側のどちらで行ってもよいが、共通鍵をメールで配送することは盗聴リスクを高めるし、郵送には時間がかかってしまう。n組の通信が発生する場合、n(n-1)/2個の共通鍵が必要になる。

実装技術

DES:

Data Encryption Standardの略、IBMによって開発された。1977年にNIST(アメリカ商務省標準局)が標準暗号として採用したことから普及。DESでは共通鍵として56ビットのデータ列を用いる。(約7京通り)CPUパワーの向上に伴い、総当たりによる解読が可能になった。

TripleDES:

DESの脆弱性が指摘されるようになったことで開発された。暗号化アルゴリズムはDESと同じだが、キーを2つ用意することで、暗号化→複合→暗号化という手順を踏む。

AES:

Advanced Encryption Standardの略、鍵長可変のブロック暗号である。DESでのブロック長は64ビットであったのに対し、AESでは128ビットに拡張されている。鍵長についてもDESでは56ビットで固定だったのに対し、AESでは128、192、256ビットから選ぶことができる。

ブロック暗号:

暗号には、ビット単位で暗号化を行うストリーム暗号と、ブロック単位で暗号化を行うブロック暗号とがある。

4.公開鍵暗号

概要

共通鍵暗号は1対1の通信を行うことを念頭に開発された。そのため、複数のユーザによる通信では管理するべき鍵の数が急速に増加する。また、暗号化・複合に同様の鍵を用いるという構造上、不特定多数との通信に用いることはできない。この問題を解決するため、暗号化鍵と複合鍵を分離した方式が公開鍵暗号である。

公開鍵暗号では、暗号化鍵を一般に公開する(公開鍵と呼ばれる。)。それに対し、複合鍵は受信者によって管理される。

公開鍵暗号を用いた通信において必要な鍵の数は2n個であり、通信に参加する人数が増えるほど共通鍵暗号と比較して鍵管理の負担が小さくなる。

※公開鍵暗号において必要とされるCPUパワーは、一般に共通鍵暗号の数百~数千倍・ゆえに暗号化処理や複合化処理に多くの時間がかかってしまう。

実装技術

RSA:

開発者であるRivest、Shamir、Adlemanの頭文字をとって命名。素因数分解を利用した公開鍵暗号方式。RSA Security社によって管理されている。計算量に依存したアルゴリズムであるため、コンピュータの計算性能の増大に伴って解読されてしまう危険がある。

楕円曲線暗号(ECC):

アメリカの数学者、KoblitzとMillerによって開発された。楕円曲線上の演算規則を用いて鍵を生成する。離散対数問題の解法アルゴリズムに対して強固であると言われている。

5.ハイブリッド方式

公開鍵暗号は鍵配布時のセキュリティや管理鍵数の増加問題を解決する一方、暗号化・複合にかかる演算量が増大してしまう欠点がある。そのため実データの暗号化・複合には共通鍵暗号方式を用いて、共通鍵を配布する際には公開鍵暗号を用いるシステムが増加している。これにより、処理速度と利便性を両立させることができる。

タグ:

投稿者

user@example.com

関連投稿