性を確保できる点や複号化のスピードが早くなる点、まだベースの問題に対する強力なアルゴリズムが開発されていない点などが高く評価されているが、一方でそのような環境を構成しなければならなく、これが容易でない点などが問題となっている。
最近になって精円暗号を実際に適用した製品が発売されはじめている。
(2)認証
認証の種類
認証の種類としては以下のように分類することが出来る。
・知識利用
・暗号利用
・生体特徴利用
・所有物
知識利用
これは認証するために必要な情報をあらかじめ登録しておき、その情報を知っているかどうかで正当性を検証するものである。
パスワード、暗証番号などがこれに当たる。
パスワード
あらかじめ特定のキーワードを登録しておき、認証の際入力されたデータと一致するかどうか比較することで認証する方式である。
これは導入が比較的簡単であるため、最も良く利用されている方式である。
しかし反面、覚えやすい、推測しやすいキーワードが使われたり、パスワードを記したメモを人に見られたり、ネットワーク上を流れたパスワードを盗聴されるなどばれやすい。
また知られたパスワードを他人に利用された場合、利用されたことを発見することが難しい。
ワンタイム・パスワード
上記のパスワードの欠点を補うために、一回限りしか使用できないパスワード認証方式としてワンタイム・パスワードがある。ここでは最も有名なS/Keyを例に説明する。
この仕組みを簡単に説明すると、まず一方向性関数 f を用意し、ある数Qを使って、f(Q)、 f(f(Q))、f(f(Q))、…を計算し、その結果をX1、X2、X3、…、X100、X101と比較する。
X101は認証サーバー内に置き、ユーザーはX1、X2、X3、...、X100を印刷して保持する。
ユーザーは最初X100をハスワードとして入力し、それを使って認証サーバーはf(X100)を計算し、サーバー内のX101と比較する。
この結果が一致すれば許可し、サーバーは保持していたX101を捨てて、変わりにX100を保存しておく。