SSLでは「共通鍵暗号化方式」と「公開鍵暗号化方式」を組み合わせた方式を利用するのが一般的です。
共通鍵暗号化方式と公開鍵暗号化方式、それぞれのメカニズムを説明します。
共通鍵暗号化方式とは、データの暗号化と復号化で同一の鍵を利用して行う方式です。
暗号化されたデータは正しい共通鍵でなければ復号化することはできません。
共通鍵暗号化アルゴリズムにはDES(Data Encryption Standard)、3DES(トリプルDES)などがあります。
共通鍵暗号化方式は、暗号化・復号化速度は速いのですが、共通の鍵が必要なためその受け渡しに難点があります。
公開鍵暗号化方式とは、データの暗号化に用いる鍵と復号化に用いる鍵が異なる方式です。
公開鍵暗号化方式では、「秘密鍵」と「公開鍵」の2種類があり、秘密鍵で暗号化したデータは正しいペアの公開鍵でした復号化できません。
また、公開鍵で暗号化したデータは正しいペアの秘密鍵でしか復号化できません。
この「正しい鍵の組み合わせ」を利用することで、身元証明に応用することが可能です。
公開鍵暗号方式アルゴリズムにはRSA(Rivest Shamir Adleman)、EPOC(Efficient Probabilistic Public Key Encryption)などがあります。
公開鍵暗号化方式の暗号化・復号化速度は共通鍵暗号化方式に比べて約1000倍の時間がかかります。
ただし、同じ鍵で暗号化・復号化を行うわけではないので鍵の受け渡しの心配をする必要がありません。