密碼學 - 陳以德Yiter

advertisement
資訊安全與防護
陳以德 Yiter
itchen@kmu.edu.tw
1
Outline(1/2)
• 密碼學簡介
– 網路傳輸的危險性
– 加密與解密
–
–
–
–
–
對稱性加密(Substitution, Transposition, DES)
高級加密標準(Advanced Encryption Standard, AES)
非對稱性加密(RSA)
MAC
電子簽章
2
Outline(2/2)
• 防火牆(Firewall)
–
–
–
–
–
簡單交通記錄系統
Packet Filtering
Application Gateway
Proxy Server
Screened Host Firewall
3
明文在網路上傳輸的危險性
A
B
pw:天地玄黃
pw:天地玄黃
Sniffer, WireShark
pw:天地玄黃
E
eavesdropper
4
網路封包分析軟體
• Sniffer http://www.netscout.com
• Wireshark http://www.wireshark.org
• http://zh.wikipedia.org/zh-tw/Wireshark
5
WireShark
6
http://www.wireshark.org/download.html
相關法規
• 電腦個人資料保護法
• 相關刑法
– 318-1 無故洩漏因利用電腦或其他相關設備知悉或持有他人
之秘密者,處二年以下有期徒刑、拘役或五千元以下罰金
– 318-2 利用電腦或其相關設備犯第三百十六條至第三百十八
條之罪者,加重其刑至二分之一
– 339-3 意圖為自己或第三人不法之所有,以不正方法將虛偽
資料或不正指令輸入 電腦或其相關設備,製作財產權之得
喪、變更紀錄,而取得他人財產者,處七年以下有期徒刑。
以前項方法得財產上不法之利益或使第三人得之者,亦同
– 352 毀棄、損壞他人文書或致令不堪用,足以生損害於公眾
或他人者,處三年 以下有期徒刑、拘役或一萬元以下罰金
• 網路下載軍機 外患罪起訴
7
刑法 -妨害電腦使用罪
• 358 無故輸入他人帳號密碼、破解使用電腦之保護措施或利用
電腦系統之漏洞 ,而入侵他人之電腦或其相關設備者,處三年
以下有期徒刑、拘役或科或 併科十萬元以下罰金
• 359 無故取得、刪除或變更他人電腦或其相關設備之電磁紀錄,
致生損害於公 眾或他人者,處五年以下有期徒刑、拘役或科或
併科二十萬元以下罰金
• 360 無故以電腦程式或其他電磁方式干擾他人電腦或其相關設
備,致生損害於 公眾或他人者,處三年以下有期徒刑、拘役或
科或併科十萬元以下罰金
• 361 對於公務機關之電腦或其相關設備犯前三條之罪者,加重
其刑至二分之一
• 362 製作專供犯本章之罪之電腦程式,而供自己或他人犯本章
之罪,致生損害 於公眾或他人者,處五年以下有期徒刑、拘役
或科或併科二十萬元以下罰 金
8
• 363 第三百五十八條至第三百六十條之罪,須告訴乃論。
其他網路危險
•
•
•
•
•
•
•
Eavesdropping
OS漏洞
Password的竊取
Spoofing
Session Hijacking
特洛依木馬、virus、trapdoor
DOS, DDOS
9
加密系統的應用
B
A
pw:天地玄黃
pw:天地玄黃
解密
加密
@#$%&*
Sniffer, WireShark
@#$%&*
@#$%&*
E
eavesdropper
10
加 密 與 解 密
Encryption
M
明文
Ke
C
密文
Kd
Decryption
11
對稱,秘密與公開金匙
對稱金匙(Symmetric Key)系統
Ke=Kd
非對稱金匙(Asymmetric Key)系統
Ke≠Kd
12
表 白
雖萍水相逢,但覺你是很好的人,
仔細思考後,決定向你用以最最笨拙
的方式表白,也許我沒有你想要的優
點,也許是一廂情願,我卻甘心.我
並不需要你的回報,我只願默默的關
心你,在背後祝福你,不讓你苦惱,
也無意擾亂你生活,要是你深覺不妥,
我願意忍住痛苦,裝做不曾為了你而
動過心,我不是聰明伶俐的人,但也
不至是如此不明理的人.年輕都會有
夢想,我的愚昧,使我踏入了情感陷
阱,整個人就如斷線風箏,飛向夢想.
在這季節裡,天氣正如我的心情,時
而愉快,時而感傷.此時,我不抱任
何樂觀的態度,但只願你瞭解我的心.
...僅以真誠的心...
13
加密法
• Substitution
• Transposition
14
Substitution Ciphers(對稱性加密)
原始文字與加密文字對照表
1 2 3 4 5 6 7 8 9 1
0
A B C D E F G H I J
B C D E F G H I J K
•
•
•
•
1
1
K
L
1 1 1
2 3 4
L MN
MN O
1
5
O
P
1
6
P
Q
1
7
Q
R
1
8
R
S
1
9
S
T
2
0
T
U
2
1
U
V
2 2 2
2 3 4
V WX
WX Y
2
5
Y
Z
2
6
Z
A
那麼apple這個字就會變成bqqmf了
I love you 變成j mpwf zpv
加密時向右移一位, 解密時向左移一位
加解密的 Key 相同
15
Transposition Ciphers
這富額代能都一
獸貴上表買能個
又,打名賣夠人
強奴印字。算。
迫隸記的這出這
所或。數裡獸數
有自這字需的字
的由印;要數是
人人記沒有字六
,就有智,百無
16
這富額代能都一
獸貴上表買能個
又,打名賣夠人
強奴印字。算。
迫隸記的這出這
所或。數裡獸數
有自這字需的字
的由印;要數是
人人記沒有字六
,,就有智,百
無在是這慧因六
論他那印。為十
大們獸記凡這六
小的的的是數。
,右右,聰字
貧手字就明代
窮和或不人表
17
26個英文字母出現的頻率表
英文字母
使用頻率
英文字母
使用頻率
英文字母
使用頻率
A
0.0856
J
0.0013
S
0.0607
B
0.0139
K
0.0042
T
0.1045
C
0.0297
L
0.0339
U
0.0249
D
0.0378
M
0.0249
V
0.0092
E
0.1304
N
0.0707
W
0.0149
F
0.0289
O
0.0797
X
0.0017
G
0.0199
P
0.0199
Y
0.0199
H
0.0528
Q
0.0012
Z
0.0008
I
0.0627
R
0.0677
18
古典加密法
•
•
•
•
•
•
•
Caesar Cipher
Momoalphabetic Cipher
Hill Cipher
Playfair Cipher
Vegenere Cipher (Polyalphabetic cipher)
Permutation Cipher
One-Time Pad
19
DES(Data Encryption Standard)
•
•
•
•
Plaintext
M(64 bits)
Ciphertext
C(64 bits)
Key
K(56 bits or 64 bits)
Round Function F(X, Y) :
X(32 bits) and Y(48 bits)
• Rounds: 16
20
DES(Cont.)
•
•
•
•
•
IP: initial permutation IP(M) = (L, R)
FP: final permutation : IP.FP = FP.IP
(Ln, Rn) = (Rn-1, Ln-1  F(Rn-1, K))
F(X, Y) = Perm(S_box( Ext(X)  Y))
C = FP(R, L)
21
DES(Fig.)
P la in t e x t
IP
L0
R0
f
L1=R 0
K1
R 1 = L 0 x o r f (R 0 ,K 1 )
f
K2
L2=R 1
R 2 = L 0 x o r f (R 0 ,K 1 )
L15=R 14
R 1 5 = L 1 4 x o r f (R 1 4 ,K 1 5 )
f
R 1 6 = L 1 5 x o r f (R 1 5 ,K 1 6 )
K 16
L16=R 15
I P -1
P la in t e x t
22
DES(One round)
Li-1
Ri-1
Key
28 位元
Left Shift
E-box Permutation
32 位元
32 位元
28 位元
Left Shift
48 位元
subkey: 48 位元
Compression Permutation
S-boxes Substitution
32 位元
P-box Permutation
subkeys ª º² £
¥Í
f function
Li
Ri
23
Triple DES
Encipher
Plaintext
DES
DES-1
DES
K1
K2
K3
DES-1
DES
DES-1
Ciphertext
Decipher
24
AES (Advanced Encryption Standard)
• Joan Daemen, Vincent Rijmen in Belgium
• 128/192/256 bit keys, 128 bit data
• 主要 4 個步驟 , 10/12/14 round
– AddRoundKey
– SubBytes
– ShiftRows
– MixColumns
25
http://zh.wikipedia.org/zh-tw/高階加密標準
AES - AddRoundKey
26
AES - SubBytes
27
AES - ShiftRows
28
AES - MixColumns
29
RSA密碼系統(非對稱加密)
產生兩把鑰匙的步驟:
• 隨機取兩個很大的質數p, q(最好大於21024)
– 2005年, 663bit RSA 可用Lattice sieve 破
• 計算出 n = p * q 及 (n)=(p-1)*(q-1)
• 隨機找一個與 (n) 互質的數目 : e。
(意即 gcd (e, (n))=1)
• 利用歐幾里得演算法得出 : d such that
d 滿足e * d ≡1 mod (n)。
• 以(e, n)為 Public key,d為 Private key。
30
RSA (原理)
(Cd mod n)
= ((Me mod n)d mod n)
= Me*d mod n
= M(k * (p-1) * (q-1)) + 1 mod n
= M1 mod n=M
(因為e * d ≡1 (mod ((p-1) * (q-1)))。)
Fermat’s little Theorem (n) mod n =1
Where (,n)=1
31
RSA (例子1)
• 取兩個質數 p=101, q=53, n=101*53=5353
• 明文=4657
• 設A的公開金匙(eA,NA)=(7,5353)
• 利用歐幾里得演算法得出秘密金匙dA=743,
[Where eA, dA=1 mod (100*52)]
• 得到密文為 4657743 mod 5353 = 1003
• 密文用的公開金匙(eA,NA )解開得回明文
10037mod 5353=4657
32
RSA 例子2,BA
• 取兩個質數 p=3, q=5
• n=3*5=15
• Φ(n)= (3-1)*(5-1)=8
• 明文 m=13
• 任取一數11得A’s Public key (eA,NA)=(11,15)
• 利用歐幾里得演算法得出 Private key dA=3,
33
11與Φ(n) 輾轉相除
11 8
8 6
3 2
2
1
1=3-2
=3-(8-6)
=3-8+6
=(11-8)-8+2(11-8)
=3(11-8)-8
=3(11)-4(8)
取Public key 11與Φ(n) 輾轉相除
最後(11)旁的係數3,為另一支key
34
RSA 例子2,BA(Cont.)
• eA*dA=11*3=1 mod Φ(n)
• B用A’s Public key加密得密文為:1311 mod 15
=7
• A 用自己的Private key 解開密文得回明文
73mod 15=13
35
RSA (例子3, 驗證)
• Example(承上例, p=3, q=5, n=15, e=11, d=3)
– A將文件(m=13)用A的 Private key 加密
133 mod 15=7
– B拿到 (13,7)用A’s Public key 解密得回明文
711 mod 15 看會不會=13
– 可用來做電子簽章驗證
36
RSA特性及其運用
•
•
•
•
•
RSA運用exponential algorithm
RSA執行速度較DES等對稱加密慢
硬體的RSA比硬體的DES慢1000倍
軟體的RSA則比軟體的DES慢100倍
故RSA其主要的用途:
– digital signature
– protocol中的key exchange。
37
單向函數 One-way Function
• 定義:一函數滿足下列條件則稱 f 為One-way Function
• 1. 對於所有屬於F域之x, 很容易計算出f(x)=y.
• 2. 對於幾乎所有屬於f 之範圍的任一y, 在計算上不可
能求出x 使得y=f(x)
• Example:
• y = f(x) =xn+an-1 xn-1+…+a1x+a0 mod p
X
易
f
Y
難
38
Message Authentication Codes (MAC)
• MAC is an authentication tag (also called a
checksum) derived by appying an authentication scheme, together with a secret key, to a
message.
• There are four types of MACs:
(1) unconditionally secure
(2) hash function-based
(3) stream cipher-based or
(4) block cipher-based.
39
MAC -2
• Hash function H(m1, m2, …, mt)=m
• 現有的Hash function: MD5, SHA-1, ...
• MAC is key-dependent one-way hash function
– MAC are computed and verified with the same key
– A & B 共同擁有 key K
– A send H(K, M) to B
– B can reproduce A’s result
40
現有對稱與非對稱加密法
• 對稱加密法
– DES, IDEA, AES(MARS, RC6, Rijndael,
Serpent, and Twofish), ...
• 非對稱加密法
– RSA, ElGamal, Elliptic Curve Cryptography…
41
總結(1/)
• 對稱式加密
Session
Key
I am
Yiter
DES
Session
Key
Asd$#
v#$h
DES
I am
Yiter
42
總結(2/)
• 非對稱式加密
第三公正者
對方的
自己的
Private Key
Public key
I am
Yiter
RSA
@#SD
FGSA
SDF
RSA
I am
Yiter
43
總結(3/)
• 對稱與非對稱式加密交互運用
自己的
Private Key
對方的
Public key
Session
Key
RSA
^%$(*
&#$
Session
Key
I am
孫中山
AES
RSA
Session
Key
Session
Key
Dthfgb
$shgzx
cv
AES
Bdve$
%^@d
grse
I am
孫中山
44
總結(4/)電子簽章
• Example(承上例, p=3, q=5, n=15, e=11, d=3)
– 將簽署文件(m=13)用A自己的Private key 加
密後得到密文 133 mod 15=7
– A 將簽署文及密文(m=13, c=7)一齊送給B
– B 可拿A的 Public key (eA,NA)驗證得回簽署
文
– m’=711 mod 15 =13
– 若m=m’ 則驗證正確
45
總結(5/) 電子簽章圖示
原
文
原 Hashing
訊息摘要
文
原
文
Hashing
訊息摘要
Secret
Key
電子簽章
比對
電子簽章
電子簽章
訊息摘要
Public
Key
46
總結(6/)
• 對稱;非對稱式加密加電子簽章
自己的
Private Key
對方的
Public key
Session
Key
原
文
電子簽章
RSA
^%$(*
&#$
Session
Key
Rijndael
RSA
Session
Key
Dthfgb
$shgzx
cv
Rijndael
Session
Key
原
文
電子簽章
47
SSL Architecture
48
SSL Firefox Example
Https://...
49
Firefox - Facebook
Http://...
鎖呢?
50
IE- Facebook
Http://...
51
IE-Yahoo
Https://...
52
個人電腦安全防護
• 密碼設定
• 社交攻擊
• 備份
53
個人電腦 -防毒,木馬
• 防毒與防火牆
– Pc cillin (Officescan), Norton, Kaspersky, AVG,
Avast, Avira (小紅傘), PC Tools, Comodo, ClamWin,
BitDefender, F-Secure, Dr. Web
• 掃木馬 spybot
• 掃廣告病毒 Ad-aware
• 掃隨身碟 WowUSBProtector, Kavo_Killer
54
Firewall
定義:
只讓具備特殊身分的外在使用者才能連上
一個被保護的網站, 使用其軟體或硬體
A firewall system is used to control access to
or from a protected network ( a site ).
小問題: pcanywhere
55
Firewall圖示
56
Firewall 的種類
•
•
•
•
•
簡單交通記錄系統
封包過濾(Packet Filtering)
Application Gateway (Dual-homed Gateway)
Proxy Server
Screened Host Firewall
57
簡單交通記錄系統
• 將網路上傳輸記錄在稽查記錄檔案(.log)
• 記錄的資料
– 被存取的檔案
– 使用者何時由何地用什麼程式進來
– 使用者存取及上傳的位元數
58
封包過濾(Packet Filtering)
59
封包過濾常用審查法則
• 根據協定(ICP, UDP, ICMP)來控制及過濾
• 對某些應用做限制性取用(port 80, 443...)
• 對己知來源的IP位置做限制(.edu)
Block or filter protocols「ports」and「addresses」
IP header Source IP address
Destination IP address
TCP header Source port
Destination port
60
封包過濾優缺點
• 優點
– Most Common ,easy and cheap
– Fully transparency, no impact to user
• 缺點
– Little or no logging capability
– Complex filtering rules may become
unmanageable
– Rules are difficult to test thoroughly
61
Application Gateway
Dual-homed Gateway
62
Application Gateway圖示
63
Application Gateway
• 外界使用者在做進一步連結前, 先連接到受
信賴的應用程式上
• 系統管理注意事項
– 除Firewall必須帳戶外, 刪除所以使用者帳戶
– 刪除不必要的檔案及程式(FTP, Telnet)
– 將記錄(.log)和監控延伸到可以檢查遠端存取
– 關閉IP轉寄的功能
64
Proxy Server
Proxy Server
位於Internet 和內部網路之間, 提供中間人的服務
支援「extra logging」and「advanced authentication」
Client
Proxy
Server
Remote
Server
Cache
65
Screened Host Firewall
Internet
IP Filtering
Router
Site Systems
Bastion Host
(Application Gateway)
Screened Host Firewall為封包濾器 (packet filter)
與應用閘道器 (application gateway) 的組合
66
Screened Host Firewall
•
•
•
•
允許外界封包輸至內部閘道器
不允許外界封包輸至內部其它主機
允許閘道器的封包輸出至外界網路
不允許其它內部主機的封包輸出至外界網
路
67
Screened Host Firewall
優點
 More flexibility.
 Router filtering rules are simplified .
 缺點
 Less security. (packet can go directly
inside)
68
Screened Subnet Firewall
Info
Server
Mail
Server
Internet
IP Filtering
Router
IP Filtering
Router
Site Systems
(1) From bastion host to inside
(2) E-mail from mail server to inside
(3) From inside to bastion host
(4) E-mail From inside to mail server
(5) WWW , Gopher from inside to info server
(6) REJECT all other traffic
Bastion Host
DMZ/Perimeter Network
(1) From bastion host to outside
(2) E-mail from mail server to outside
(3) From outside to bastion host
(4) E-mail From outside to mail server
(5) WWW , Gopher from outside to info se
(6) REJECT all other traffic
69
“Subnet v.s. Host”
Screened
Gateway
• Subnet 將 Host中的單部Gateway擴展成數
部,並將風險及效能的負擔分散至數部主
機,所以較有彈性、安全、且有效率。
• 缺點
– More expensive
– complex management
– Less security if permit special「trusted」service.
70
What Can’t a Firewall Protect Against
• Firewalls can’t protect against attacks that
don’t go through the firewall , or rules that
make a leak.
• Firewalls can’t protect against「data driven」
attacks , like「Virus」.
71
Firewall的安全策略
• 管理者工作
– 對機構內的安全策略必須十分清楚
– 知道Firewall功能中監視, 複製, 控制的程度
– Firewall反應整體安全程度
• 不能允許不受限制的modem上線
• 機密資料就不該連到Internet
• 私人資料系統與公司網路的其它部分分開
– Firewall非萬能
72
Firewall管理問題
• 自己建立或買現成的
– 買現成的貴又怕 Trapdoor
– 自行設計要考慮支援和系統更新等後續維修
• 容量管理問題
– Bottleneck
• 內容管理和控制問題
– MIS部門, 行銷通訊部門或功能部門的工作
73
參考資料
• Electronic Commerce : A Manager’s
Guide Kalakota & Whinston
• William Stallings Cryptography and
Network Security 5th
• 網站
– http://www.rsasecurity.com/
– http://khchu.virtualave.net/index.htm
– http://cissnet.edu.tw 教育部資安網
– http://www.nii.org.tw/tanet/docs/一般人員資安宣
導與法規.pdf
74
Download