q q 情報セキュリティ 第3回:2005年4月22日(金) q q
本日学ぶこと 暗号系(暗号システム,Cryptosystem)の基本 暗号・復号・解読 エンコード 単一換字暗号 情報が増えれば解読しやすくなる実例 使い捨てパッド ⇒次回(5月6日) 「排他的論理和」と「乱数」を用いたシンプルな(ただし 非実用的な)暗号アルゴリズム
暗号系と暗号アルゴリズム 暗号系とは 暗号アルゴリズムとは メッセージを暗号化して送り復号して元の平文が得られるまでの一連の流れ(システム) 暗号化や復号の具体的な方法(アルゴリズム)
暗号化と復号の数式表現 対称暗号(共通鍵暗号)の場合 公開鍵暗号の場合 復号したのち暗号化したら? 暗号化 C = e(K, M) 復号 M = d(K, C) = d(K, e(K, M)) 公開鍵暗号の場合 暗号化 C = e(Kpub, M) 復号 M = d(Kpri, C) = d(Kpri, e(Kpub, M)) 復号したのち暗号化したら? M = e(K, d(K, M)) や M = e(Kpub, d(Kpri, M)) は 一般には成立しない. しかしRSAをはじめ,多くのシンプルな暗号アルゴリズムで成立する.
暗号解読の分類 目標は? 解読方法は? 暗号文に対応する平文を獲得すること 暗号化に使われている鍵を獲得すること 暗号文のみ(ciphertext-only attack) 既知平文攻撃(known-plaintext attack) 選択平文攻撃(chosen-plaintext attack) 池野信一,小山謙二『現代暗号理論』,電子情報通信学会,pp.3-4
安全性は? 無条件に安全:暗号文(や平文)の量,解読のための計算時間に関わらず,原理的に暗号文から平文を1通りに決定できないこと 使い捨てパッドが該当する. 計算量的に安全:現実的に利用可能な資源と最良の解読アルゴリズムを用いても,妥当な時間内に解読できないこと 現代暗号(DES,AES,RSAなど)はこの意味での安全性を目標に設計された. 池野信一,小山謙二『現代暗号理論』,電子情報通信学会,p.4
エンコードとは メッセージを,暗号化できる形に変換すること よく用いられるエンコードの種類 エンコードの例 復号,解読された情報を読める形にするのは「デコード」 よく用いられるエンコードの種類 古典暗号:平文を英小文字,暗号文を英大文字で構成し, 数字や記号は用いない DES,AESなど:ビット列 RSAなど:非負整数値 エンコードの例 私⇒watashi⇒01110111 01100001 01110100 01100001 01110011 01101000 01101001 00001010 私⇒11100111 10100111 10000001
歴史上の暗号 シーザー暗号 単一換字暗号 いずれも,sedコマンドで簡単に試せる
単一換字暗号の応用例 顔を覚える 未知語を理解する 一つの「情報」だけで物事を判断しない 同種の情報を集め,比較して判断する 自分だけで解決しようとせず,専門家や既存のツールを 活用する