暗号技術 その2


メッセージ認証コード

なりすましと改ざんの検知
message authentication codeの頭文字を取ってMACと呼ばれる

メッセージと共有鍵を元にして、固定ビット長の出力(MAC値)を計算する関数
メッセージ認証コードは鍵に依存したハッシュ関数である

再生攻撃やブルートフォース、誕生日攻撃に弱い

第三者に対する証明や否認防止性がない

デジタル署名

公開鍵暗号方式を逆に使うことでメッセージに署名する

メッセージを暗号化すると時間がかかるのでハッシュ値を暗号化する

書き換えの防止はできないが検知はできる
機密性は守れない
man-in-the-middle攻撃に弱い

公開鍵基盤

証明書

公開鍵がその人のものだと証明する
認証局に自分の公開鍵に署名をしてもらう
自分の秘密鍵を紛失、盗難した場合、認証局に連絡し証明書破棄リスト(CRL)に登録してもらう

乱数

無作為性、予測不可能性、再現不可能性のすべてを持つものが真の乱数
プログラム上でワンタイムパスワードなどを使用する際、通常の擬似乱数生成関数を使用すると予測される可能性があるため暗号論的擬似乱数生成器を使用する

PGP

デジタル署名と暗号化の組み合わせ

SSL/TLS

HTTPの下に来るプロトコル

まとめやら

一番の脆弱性は人間
防御は完全でならないが、攻撃は一点でいい
秘密の暗号アルゴリズムを使わない
弱い暗号化をするなら暗号化しない方が安全