第六章網際網路安全協定

Download Report

Transcript 第六章網際網路安全協定

密碼學
Chapter 6 網際網路安全協定
Internet Security Protocols (Part 1)
1
前言
• 網際網路的安全已具有相當重要的地位
• 網際網路的安全層面有非常多種,各有
不同的安全機制
– 網路傳輸
• SSL、SHTTP 、 TSP
– 電子商務及付款
• SET 、3-D安全、電子貨幣
– 電子郵件
• PEM 、 PGP、安全MIME(S/MIME)
– 無線網際網路
2
網際網路 基本概念
• 超文件傳輸協定(HTTP)用於瀏覽器與伺
服器之間的通訊
• 屬於要求-回應的形式
• 網頁類型
– 靜態網頁
– 動態網頁
– 主動網頁
• 協定及TCP/IP
3
靜態網頁
• 瀏覽器發出HTTP要求,伺服器發出
HTTP回應,兩者之間的通訊則結束,這
類型的網頁稱為靜態網頁
• 網頁儲存於伺服器中,當使用者要求時
,網路伺服器回傳網頁但不進行而外的
處理,網頁的內容不會應此而改變
4
靜態網頁
5
動態網頁
• 當顯示的資訊需要頻繁地更新時,靜態
網頁就不適合
• 動態網頁的內容可以根據一些參數而改
變
• 當使用者要求時,網路伺服器可能會依
程序存取資料庫、進行交易處理,最後
輸出HTML用於建構網路伺服器的HTTP
回應
6
動態網頁
7
主動網頁
• 當客戶端傳送主動網頁的HTTP要求時,
網路伺服器會回傳一個包含HTML頁面
或XML文件的HTTP回應
• 主動網頁類型
– Java
– ActiveX
– AJAX
8
主動網頁
9
協定
• 網際網路是由電腦和具有不同軟硬體特
性的網路所構成,必須有一個通用的翻
譯輔助這些電腦之間的通訊
• 協定軟體定義了通訊層級的抽象模式,
此模式是獨立於所有電腦及電腦網路的
實體性質
• 所有的電腦與電腦網路遵守協定軟體的
標準,就能彼此溝通,無需擔心之間的
差異
10
TCP/IP
• TCP
– 傳輸控制協定
– Transmission Control Protocol
• IP
– 網際網路協定
– Internet Protocol
• TCP/IP是結合多種可輔助網際網路上電
腦之間通訊的協定
11
TCP/IP的五個階層
TCP
IP
12
使用TCP/IP之通訊
13
TCP/IP層級之資料交換
14
安全插座層 (SSL)
• Secure Socket Layer, SSL
• 用於網路瀏覽器與網際伺服器之間的資
訊安全交換
• 提供兩種基本安全服務
– 鑑別
– 機密性
• 所有主要的網路瀏覽器都支援SSL
• SSL的版本
– 2、3(最普及,1995發行)、3.1
• 只有應用層的資料由SSL加密
15
SSL 在 TCP/IP 協定組合中的定位
16
SSL位於應用層及傳輸層之間
17
SSL如何運作
• SSL有三個子協定
– 交握協定(Handshake Protocol)
– 記錄協定(Record Protocol)
– 警示協定(Alert Protocol)
18
交握協定
• 是客戶端及伺服器溝通的第一種協定
• 交握訊息有三個欄位
– 類型(1位元組)
– 長度(3位元組)
– 內容(1或更多位元組)
19
交握協定訊息類型
20
交握的四個階段
21
階段 1:建立安全功能
• SSL 交握的階段一用於開啟邏輯連接並
建立與該連接有關的安全功能
• 由客戶端問候語及伺服器問候語構成
22
問候語包含參數
• 版本
• 隨機
– 日期
– 隨機數
• 交談識別
• 密碼套件
• 壓縮方法
23
階段 2:伺服器鑑別及金鑰交換
• 伺服器是此階段唯一發送方
• 客戶端是所有這些訊息的唯一接收方
• 此階段包含四個步驟
– 憑證、伺服器金鑰交換、憑證要求、伺服器
問候語完成
24
階段 3:客戶端鑑別及金鑰交換
• 客戶端是此階段所有訊息之唯一發送方
• 伺服器是所有這些訊息的唯一接收方
• 此階段包含三個步驟
– 憑證、客戶端金鑰交換、憑證驗證
25
階段 4:結束
• 由伺服器終止
• 此階段包括四個步驟
– 前兩項訊息來自客戶端
• 改變密碼規格、結束
– 伺服器以二個相同的訊息回應
• 改變密碼規格、結束
26
金鑰的產生
• 根據客戶端在客戶端金鑰交換訊息中建
立傳送的pre-master秘密,客戶端與伺服
器皆產生master秘密
• 利用master秘密產生客戶端與伺服器之間
使用的對稱性金鑰
27
金鑰的產生
28
紀錄協定
• 在客戶端與伺服器之間完成成功的交握
後形成
• 此協定提供兩項服務
– 機密性
– 完整性
29
紀錄協定
區塊小於等於16Kb
30
附加標題
•
•
•
•
內容類型
主要版本
次要版本
壓縮長度
31
警示協定
• 當客戶端或伺服器發現錯誤時,發現一
方傳送警告訊息給另一方
• 若錯誤具有致命性,雙方立即關閉SSL連
接
• 欄位
– 嚴重性
• 1 警告, 2 致命錯誤
– 錯誤原因
32
致命性警示 (錯誤)
33
非致命性警示 (錯誤)
34
關閉及重新開始 SSL連接
• 客戶端及伺服器在終止通訊之前,必須
通知彼此自己的連結正在終止
• 若結束連接時,沒有任一方發出關閉通
知,則無法重新開始
• SSL中的交握協定相當複雜與耗時,因為
使用非對稱性金鑰密碼學
• 客戶端及伺服器可再度使用或恢復先前
的SSL連接以節省時間
• SSL連結在24小時候需重新交握
35
安全超文件傳輸協定
• Secure Hyper Text Transfer Protocol,
SHTTP
• 安全超文件傳輸協定是一套針對保護網
路交通而定義的安全機制
• 包括了資料輸入表格及網路交易
• 在應用層運作
• 支援客戶端與伺服器端之間HTTP交通的
鑑別與加密
• 一般很少使用
36
安全超文件傳輸協定
37
時間戳記協定
• Time Stamping Protocol, TSP
• 可提供某份資料存在於特定時間的證據
• 此服務由時間戳記管理中心(Time
Stamping Authority, TSA)提供
• TSP目前正由PKIX工作小組開發
38
時間戳記協定
• 藉由使用PKI所提供的數位簽章可能導致
糾紛
• 若簽署者謊稱自己的金鑰被外洩,因此
應廢止此金鑰,在此狀況下很難證明文
件是否在簽署者報告金鑰洩漏之前即已
簽署
• TSP可用於確認電子文件是否於特定的日
期或時間之前已經產生或簽署
39
TSP運作流程
1. 訊息摘要計算
2. 時間戳記要求
3. 時間戳記回應
40
安全電子交易
• Secure Electronic Transaction, SET
• 是開放式的加密和安全規格,用於保護
網際網路上的信用卡交易
• 最初由MasterCard與Visa聯手開始
• 1998年,第一代符合SET的產品上市
• SET並非付款系統,而是一套安全協定及
格式,可讓使用者以安全的方式在網際
網路上使用現有的信用卡付款架構
41
SET服務歸納
• 提供了一種所有涉及電子商務交易者之
間的安全通訊管道
• 藉由使用數位憑證提供鑑別
• 確保了機密性,因為資訊只有在各方進
行交易,且在必要的時間和情況下才可
以取得
42
SET 參與者
•
•
•
•
•
•
持卡者
商家
發卡者
收單銀行
付款閘道
憑證管理中心
43
SET程序
1. 顧客開立帳戶
2. 顧客收到憑證
3. 商家收到憑證
4. 顧客下訂單
5. 確認商家
6. 傳送訂單及付款詳細資料
7. 商家要求付款授權
8. 付款閘道授權付款
9. 商家確認訂單
10. 商家提供貨品或服務
11. 商家要求付款
44
SET的目的
• 線上付款機制的主要顧慮在於需要顧客
將信用卡詳細資料傳給商家
– 信用卡卡號的傳輸
• 若信用卡號使用明文傳輸會使入侵者有機可乘
• 使用SSL進行資料的傳輸
– 信用卡卡號的使用
• 信用卡號可能遭到商家不當利用
• 使用數位信封可達成隱藏付款細節
45
SET隱藏付款細節之方法
• SET於持卡人電腦產生一把一次性交談金
鑰
• 持卡人電腦使用此一次性交談金鑰加密
付款資訊
• 持卡人電腦使用付款閘道的公開金鑰包
裝此一次性交談金鑰形成數位信封
• 持卡人電腦將加密付款資訊與數位信封
傳送給商家
• 商家將將加密付款資訊與數位信封傳送
給付款閘道
46
SET所支援的主要交易
• 購買要求
• 付款授權
• 付款收取
47
購買要求
• 購買要求交換由四項訊息構成
– 開始要求
– 開始回應
– 購買要求
• 購買相關資訊
– 訂單資訊(OI)
– 付款資訊(PI)
• 訂單相關資訊
• 持卡者憑證
– 購買回應
48
開始要求
49
開始回應
50
購買要求
51
購買回應
52
雙重簽章
• 確保商家及付款閘道能存取所需要的資
料,而持卡人可以保護自己的信用卡資
料不被商家盜用
付款資訊
訂單資訊
53
商家對持卡人信用的驗證
54
付款閘道對持卡人信用的驗證
55
付款授權
• 付款授權步驟在商家傳送付款細節給付
款閘道時進行
• 付款授權交換由兩個訊息構成
– 授權要求
• 購買相關資訊
• 授權相關資訊
• 憑證
– 授權回應
• 授權相關資訊
• 收取符記資訊
• 憑證
56
授權要求
57
授權回應
58
付款收取
• 在取得付款方面,商家可在付款收取交
易中加入付款閘道
• 包含以下兩項訊息
– 收取要求
– 收取回應
59
收取要求
60
收取回應
61
SET模式
62
SSL VS. SET
63
3-D 安全協定
•
•
•
•
•
SET無法防止用戶端使用他人的信用卡
SET僅保護信用卡號避免被商家侵用
3-D 安全由Visa所開發
MasterCard現在也支援
SET 和 3-D 安全之間主要的差異在於,
任何希望參與涉及使用 3-D 安全協定之
付款交易的持卡者,必須在發卡銀行的
註冊伺服器註冊
64
3-D 安全協定
65
The End
66