認証技術・署名技術

47
認認認認 認認認認 2000 11 認認

description

認証技術・署名技術. 2000・11・6 佐野 晋. 要求. 安全にメッセージを相手に送りたい 改ざん防止 盗聴の防止 通信相手を確認したい 発信者がアドレスを偽っていない保証 受信者がアドレスを偽っていない保証 さらに 第 3 者がメッセージの正しさを確認できる 送った相手がそのメッセージを拒否できない 通信の事実を隠したい. 要求 - かっこよくいうと. 機密性 ( Confidentiality ) 第3者に情報が伝わらない, 盗聴の防止 完全性  (Integrity) 改ざんの検知,防止 真正性  (Authenticity) - PowerPoint PPT Presentation

Transcript of 認証技術・署名技術

Page 1: 認証技術・署名技術

認証技術・署名技術

2000・11・6佐野 晋

Page 2: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 2

要求 安全にメッセージを相手に送りたい

改ざん防止 盗聴の防止

通信相手を確認したい 発信者がアドレスを偽っていない保証 受信者がアドレスを偽っていない保証

さらに 第 3 者がメッセージの正しさを確認できる 送った相手がそのメッセージを拒否できない 通信の事実を隠したい

Page 3: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 3

要求 - かっこよくいうと 機密性 ( Confidentiality )

第3者に情報が伝わらない, 盗聴の防止

完全性  (Integrity) 改ざんの検知,防止

真正性  (Authenticity) 送信者の正当性

否認拒否  (Non Repudiation) 送信者が送信の事実を拒否できない機能 受信者が受信の事実を拒否できない機構

Page 4: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 4

どうやってつくるか 機密性 ( 機密保護)

暗号 完全性(改ざん検出)

暗号 デジタル署名

真正性 ( 成りすまし防止) 暗号 デジタル署名 認証

Page 5: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 5

暗号の基礎知識

ひらぶん

平文plaintext

復号化鍵decryption key

暗号化鍵encryption key

暗号化encryption

解読cryptanalysis

暗号文ciphertext

平文復号化decryption

平文

Page 6: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 6

暗号技術の変遷① 通信を秘密に② 暗号アルゴリズムを秘密に③ 暗号アルゴリズムは公開,鍵を秘密に④ 復号化鍵*のみを秘密に

*:正しくは公開鍵方式の二つの鍵の いずれか一方

Page 7: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 7

暗号認証技術の基礎知識

慣用 ( 対称鍵 ) 暗号系 … DES 暗号化と復号化は同じ鍵 送信者と受信者は鍵を共有する 高速

公開鍵暗号系 … RSA 暗号化と復号化で鍵が違う - ふたつの鍵 片方の鍵は自分以外に知られても良い 公開鍵と秘密鍵

Page 8: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 8

一方向ハッシュ関数

任意のデータ長を固定のデータに変換 ぶつかりが少ない 出力から入力が予測しにくい

ハッシュ関数任意長データ

128bitデータ

Page 9: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 9

メッセージダイジェスト 一方向性ハッシュ関数で

元データの変更が出力に大きく影響 逆演算が困難 同じメッセージダイジェスト値をもつ別の元データを

見つけるのが困難 MD2,MD4,MD5

L.R ivest 128ビット

SHA-1 NIST,NSA 160ビット

Page 10: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 10

慣用暗号系を用いた暗号と認証

秘密の鍵をお互いに共有 相互に相手認証が可能

平文 暗号文 平文暗号化 復号化

秘密鍵 秘密鍵共有

Page 11: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 11

公開鍵暗号系を用いた秘密性の確保

送り先の公開鍵でメッセージを暗号化 送り先の秘密限で復号

平文 暗号文 平文暗号化 復号化

Bの公開鍵A B

Bの秘密鍵

Page 12: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 12

公開鍵暗号系を用いたデジタル署名

発信元の秘密鍵でメッセージを暗号化 発信元の公開限で復号 デジタル署名

第 3 者も正当性と送信元の確認ができる

平文 暗号文 平文暗号化 復号化

Aの秘密鍵A B

Aの公開鍵

Page 13: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 13

一方向関数を用いたメッセージ認証子 メッセージは平文 メッセージ認証子 (MIC) を生成して添付

MIC-Message Integrity Check

平文 MIC暗号化 復号化

Aの秘密鍵A B

Aの公開鍵

H 比

Page 14: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 14

認証

個人認証…システムがユーザを認証 本人しか知らない事実 (例 : パスワード ) 持ち物 (例 : 印鑑、 ICカード ) 身体的特徴を利用 (例: 指紋、網膜 )

プロセス認証…プロセスやホストを認証 低レベルの識別子の利用 (例:アドレス、プロセス

ID) パスワード 暗号技術に基づいた認証子

Page 15: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 15

認証

ゴール要求が本物の要求者の意志に基づくものであることを要求受理者が確認する

要求の一般的な処理の流れ①本人を認証 (authentication)② 要求が正当であることを確認 (authorization)③ 要求の受理、処理

Page 16: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 16

パスワード

システムと利用者で秘密を共有 システム側では暗号化(ハッシュ)して保存 利用者は記憶し必要に応じて入力

パスワードによる認証の限界 利用者のパスワード管理の問題

名前,単語など類推されやすいパスワード メモ書き 忘れる

ネットワーク上をそのまま流れ、盗聴の危険

Page 17: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 17

使い捨てパスワード 一度だけ有効なパスワードの生成

disposable password onetime password

同期式 カウンタ同期 (ex. SafeWord) 時刻同期 (ex. SecurID)

非同期式 チャレンジ / レスポンス型

S/KEY, OTP SafeWord SNK

Page 18: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 18

チャレンジ レスポンス型の・例

クライアント サーバ

検証

暗号化

秘密鍵

ユーザ

challenge = “23456876”

response = “03426890”

秘密鍵

暗号化

Page 19: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 19

S/KEY, OTP

クライアント サーバ

検証

fn-1

秘密:s

ユーザ n,seed,f (seed+s)

challenge = n-1,seed

n

response = f (seed+s)n-1

f:メッセージダイジェスト関数

Page 20: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 20

使い捨てパスワードの問題 ユーザに計算能力が必要

計算ソフトウエア 専用計算機 計算済みのリスト

同じチャレンジ レスポンスの対が現・れる可能性

秘密の値が類推される可能性

Page 21: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 21

暗号アルゴリズムによる認証 秘密の鍵を共有

慣用鍵暗号系 秘密鍵による暗号化

公開鍵暗号系

Page 22: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 22

鍵の量 n人でお互いに認証すると

慣用暗号系の場合 … n × (n - 1) / 2 公開鍵暗号系の場合 … n対 の鍵が必要

公開鍵を用いるとスケールするが 処理に時間が必要 → ハッシュ関数,と組み合わせ

相手の公開鍵の信頼性は?信頼おける第3者による署名 = 証明書

Page 23: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 23

Aの秘密鍵

ベーコン100g注文します

署名

ハッシュ関数

暗号化

電子署名された発注書発注書

ベーコン100g注文します

メッセージの電子署名

Page 24: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 24

発注書の電子署名 注文主の

秘密鍵署名

ハッシュ関数

暗号化

ベーコン100g注文します

注文主の公開鍵

署名

ハッシュ関数

暗号化

ベーコン100g注文します

比較電子署名の確認

メッセージの電子署名と確認

Page 25: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 25

公開鍵の公開がポイント 本当にその公開鍵はそのユーザの公開鍵か? 証明書

鍵を第 3 者が証明 鍵発行者がユーザの公開鍵をデジタル署名する 鍵発行者の公開鍵は既知

これは 佐野の印である.証明書発行局

Page 26: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 26

CAの秘密鍵

この鍵はAの 公開鍵であることを証明します発行局

バージョン番号

署名アルゴリズム

発行者名有効期限

ユーザID公開鍵

関連情報

署名

ハッシュ関数

暗号化

X.509証明書印鑑証明書

証明書 公開鍵とその所有者情報の対応を第3

者が,確認して電子署名したもの

Page 27: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 27

公開鍵基盤 PKI – Public Key Infrastructure 証明書発行局(CA)を中心にした公

開鍵の流通基盤 X.509

Page 28: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 28

CA証明書発行局

CA

BA

Aの証明書

Aの鍵です 発行局

+本人確認情報

(1)発行要求

(2)本人確認

(3)発行

Aの鍵です 発行局

ベーコン100g注文します

CAの機能

Page 29: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 29

CA

Certification Authority認証局または証明書発行局

証明書を発行する第三者機関 エンティティの認証と署名 (Certificate) 証明取消の確認と署名 (CRL)

階層化による分散管理が可能 信用度はポリシとそれに従った運用によ

Page 30: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 30

CAの機能 Registration Authority

証明書を発行してよいかどうかを判断する機能 Issuing Authority

証明書に著名する機能 Publishing Authority

証明書を配布する機能 Validation Authority

個々の証明書の有効性を判定する機能

Page 31: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 31

CA の役割り

A

A

B

DB公開鍵

(CA)証明書発行局

新規ユーザ

(1) A公開鍵 の登録依頼

Aユーザ の公開鍵は

である.発行局

ACA

(2)証明書の発行

CA他の との連携

無効証明書リストCRLの発行

他ユーザからの問い合わせ

証明書発行局の役割

Page 32: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 32

セキュリティ強化メール メールをやりとりする当事者間でのセキュリティ強化 メール送信者の認証 メールの改ざん防止 メール内容の秘匿

配送系は従来どおり 二つの方式

PGP - Pretty Good Privacy S/MIME - Secure/Multipurpose Internet Mail Exten

tions

Page 33: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 33

SSL Secure Socket Layer Netscape Communications社が提案

主なブラウザに標準実装 インターネット上でのプライバシを保証

盗聴の防止 偽造の防止 改ざんの検出

利用アルゴリズム 機密保護: DES , IDEA , RC4 , RC2 認証: RSA , DSS 改ざんの検出: SHA ,MD5

Page 34: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 34

SSLと階層 トランスポート層とアプリケーション層

の間にあり,アプリケーションとは独立 トランスポートのセッションごとの機密

保護と認証

アプリケーション

TCPIPLink

SSL

Page 35: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 35

SSLの仕様 X509ベースの証明書を交換 セッション鍵を生成し,相手の公開鍵

で封印し,転送 そのセション鍵をもとに暗号化通信

Page 36: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 36

SSL セッション鍵の共有方法

セッション鍵(乱数)Ksess

セッション鍵Ksess

クライアントサーバ

暗号通信

接続要求

Ksess を Ksrv で暗号化{Ksess}Ksrv

サーバの公開鍵 Ksrv (証明書)

Page 37: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 37

IPsec

IPレベルでの認証 / データ暗号化 AH … 認証 ESP … 暗号化

IPv4 および IPv6 がターゲット 鍵管理プロトコルとは独立

Security Association の確立が前提 トラフィック解析には対処しない

Page 38: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 38

IPsec(AH)

IP Authentication Header IPデータグラムの保全性と認証を提供 ( 鍵付き ) メッセージダイジェストを利

用 配送途中で変化する値はメッセージダイ

ジェストの対象外 TTL(IPv4) HopLimit (IPv6)

Page 39: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 39

鍵つきMD5 による認証 お互いに秘密鍵をもってメッセージ認

証IP データグラム

認証子(MIC)

MD5

MD5比較

送信側 受信側

Page 40: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 40

IPsec(ESP)

IP Encapsulating Security Payload 機密性を提供 AHとの併用が可能 ペイロード部分のみを暗号化

トンネルモード… IP ペイロード全体 トランスポートモード…トランスポート層のみ

Page 41: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 41

Security Association

通信当事者間で合意した鍵情報 誰から誰にデータを送る際に」「 通信当事者の識別子情報 「どの種類の」 利用する暗号アルゴリズム、パラメータ 「どの鍵を使って」 利用する鍵

IPsec では SPI で SA を識別

Page 42: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 42

DES DES - Data Encryption Standard

米国商務省が規定した暗号基準 商用をベースに広く利用 共通鍵暗号系(慣用暗号系) 64ビットのブロック暗号

鍵 (56+8bit)

DES DES-1暗号文64bit

鍵 (56+8bit)

平文64bit

平文64bit

Page 43: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 43

DES CBCモード CBC - Cipher Block Chaining

同一平文でも異なった暗号文 IV(初期ベクトル)の割り当て

パケットごとにランダムな IVを生成

DES DES-1暗号文

平文 平文

Page 44: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 44

トリプルDES DESを,さらに強力に

112ビット鍵(2 ×56ビット)

D D -1

鍵 1 鍵 2 鍵 1

平文 暗号文D D -1 D -1D 平文

鍵 1 鍵 2 鍵 1

Page 45: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 45

HMAC

Hash Message authentication Code

MD5(K XOR opad, MD5(K XOR ipad, text)) ipad = the byte 0x36 repeated 64 times

opad = the byte 0x5C repeated 64 times.

Page 46: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 46

鍵管理の問題点

秘密鍵の安全管理の問題 安全性とシステムの処理効率 バックアップの必要性と危険性 管理する環境の物理的なセキュリティレベ

ル 鍵変更時の影響の問題

鍵の紛失、盗難 証明書の期限切れ

Page 47: 認証技術・署名技術

2000/11/6 S.Sano 認証技術・署名技術 47

どの階層で暗号するのか? 階層

アプリケーション層 … ex. メール プレゼンテーション層… ex. SSL ネットワーク層 … ex. IPSec リンク層 … ex. 回線暗号箱

エンドエンドセキュリティの考え方