第8回 暗号化の利用と注意点

第8回
暗号化の利用と注意点
NECラーニング
山崎 明子
暗号化によって軽減することが
できる問題



情報の漏洩
改ざん
なりすまし
確認!
共有キー暗号方式と公開キー暗号方式
アルゴリズムの種類
説明
共有キー暗号方式
(対称暗号化方式)
1 つのキーを使用
データの暗号化
データの復号化
高速で効率がよい
公開キー暗号方式
(非対称暗号化方式)
数学的に関係付けられた 2 つのキーを
使用
公開キーを使用したデータの暗号化
秘密キーを使用したデータの復号化
共有キー暗号方式よりも安全性が高い
共有キー暗号方式よりも処理が遅い
ハッシュを利用して
改ざんされていないことをチェック
Aさん
Bさん
データ
ハッシュ値
ハッシュ
アルゴリズム
データ
ハッシュ
アルゴリズ
ム
ハッシュ値が
一致すれば
データは有効
データ
ハッシュ値
ユーザー A がデータとハッシュ
値をユーザー B に送信する
ハッシュ値
デジタル署名
Aさん
Bさん
ハッシュ
アルゴリズム
データ
ハッシュ
アルゴリズム
データ
Aさんの
公開キー
ハッシュ値
ハッシュ値
Aさんの
秘密キー
ハッシュ値
ハッシュ値が一致すれ
ば、データは秘密キーの
所有者から送信された
有効なデータである
暗号化の弱点に対する防御
データを復号化するには、
このうちの 3 つが必要
キー
プレーン
テキスト
暗号化
テキスト
アルゴリズム
暗号化の弱点に対する防御 その1

適切なアルゴリズムを利用する




独自のアルゴリズムを利用しない
実績のあるアルゴリズムを利用する
最新のアルゴリズムを知る
例)


DES
Triple DES
暗号化の弱点に対する防御 その2

適切なキー


小さなキーより大きなキー
キーの安全性の確保

安全な保管




ACLを利用したキーへのアクセス制御
外部デバイスへのキーの保存
使用するキーの定期的な更新
管理の簡略化

DPAPIなどの利用
さまざまな暗号化のアルゴリズム

共有キー暗号方式




公開キー暗号方式




DES
Triple DES
AES(Rijindael)
RSA
DSA
ECC
ハッシュ


MD5
SHA-1
まとめ

最もセキュリティで重要なこと



暗号化をすれば安全?
守れるもとの守れないものがある
より安全な暗号化を行う



適切なアルゴリズム
適切なキーの作成
適切なキーの保管
リファレンス

開発者のためのセキュリティサイト


MSDNデベロッパーセキュリティセンター
 http://www.microsoft.com/japan/msdn/security/
開発者向け セキュリティ オンライン セミナー
 http://www.microsoft.com/japan/msdn/security/seminars/
 アプリケーションセキュリティの基礎
 実践! セキュアなコード記述 Part 1
 実践! セキュアなコード記述 Part 2
 実践! .NET Framework を利用したアプリケーション セキュリ
ティの実装