第10回 情報セキュリティ 伊藤 高廣 http://www.micro.mse.kyutech.ac.jp/Literacy 計算機リテラシーM 第10回 情報セキュリティ 伊藤 高廣 http://www.micro.mse.kyutech.ac.jp/Literacy
セキュリティ コンピュータの安全性 コンピュータへの不正なアクセス,不正利用などを防ぐ データの改竄(かいざん)を防ぐ 情報漏洩(ろうえい)を防ぐ
セキュリティ対策 計算機内のファイルの場合: 不正利用を防ぐ データの改竄を防ぐ データの漏洩を防ぐ ログイン(ユーザ名とパスワード) ファイルの属性(chmodなど) データの漏洩を防ぐ ファイルの属性
セキュリティ対策 メールの場合: 不正利用を防ぐ データの改竄を防ぐ データの漏洩を防ぐ パスワード ? 送信したメールの 内容を変更される 送信したメールが 他人に読まれる
データを暗号化する 暗号とは? KIKAI JOUHOU → LJLBJ KPVIPV データ列を別のデータ列に変換する手法 暗号の方式:シーザー暗号 暗号のキー:1 シーザー暗号を解読するためのコマンド(caesar(6))が標準装備されているUNIXシステムも多い。
例 「IIZUKA」,キー:1 「FUKUOKA」,キー:1,2 「A」の次は「B」 JJAVLB キーを交互に使う GWLWPMB
シーザー暗号の問題点 シーザー暗号は簡単すぎる 暗号のキーと,解読のキーが同じ アルファベットの頻度や単語から推測できる 送信者と受信者は 同じキーを知っていなくてはならない キーを秘密にしなくてはならない キーを受信者に「安全」に 通知する必要がある
公開鍵暗号 暗号を作るキー(暗号鍵)と 暗号を解読するキー(復号鍵)のペア 片方をあらかじめ公開しておく もう片方は“自分だけの”秘密にしておく
公開鍵暗号の原理(RSA) 2つの素数(かなり大きな数)を用意し, これらの積を求める → n b = ar ( mod n ) a = bs ( mod n ) を満たすような r と s を求める 実際には,2つの素数から簡単に r, s を求めることができる n と r が暗号鍵(公開鍵) n と s が復号鍵(秘密鍵)
暗号の作成 b = ar ( mod n ) a=元の文章を数値化した値 b=暗号 n, r は公開されているので, 誰でも暗号を作成できる
復号 a = bs ( mod n ) b=元の文章を数値化した値 a=暗号 s は秘密鍵なので, 復号できるのは s を知っている人だけ
2つの鍵の関係 データ データ 公開鍵 秘密鍵 暗号A 暗号B 異なる 秘密鍵 公開鍵 データ データ
公開鍵暗号で可能なこと 暗号を相手に送る 電子署名を行う データが本物であるかどうかを検証する
暗号を送る 送る相手の公開鍵を使う データ 暗号 情報漏洩を防ぐ 受信者の公開鍵 受信者の秘密鍵 暗号 データ 送信者 受信者
電子署名 自分の秘密鍵を使う データ 暗号 情報改竄を防ぐ 送信者の秘密鍵 送信者の公開鍵 暗号 データ 送信者 受信者
簡単な公開鍵暗号の例 簡単のため,連続する整数を扱う 「2 3 4 5」を暗号にしなさい 「5 15 8 1」を解読しなさい b = a × r ( mod n ) r は公開鍵 a = b × s ( mod n ) s は秘密鍵 n = 17, r = 7 とする 「2 3 4 5」を暗号にしなさい 公開鍵 r を使う 「5 15 8 1」を解読しなさい 秘密鍵 s は分からない
暗号と解読 暗号作成は簡単 暗号解読は難しい 実際の公開鍵暗号では, r や s が数百桁の数(1000bit程度)を使う 解読には 10,000,000 MIPS・年程度必要 教室の端末は 500MIPS程度