K書筆記本-Cryptography(08)

密碼學是一門這麼複雜的應用數學,但是應用在資安領域中,重點不只是只有在於機密性,更重要的是確保了完整性,
很多人往往都只有把密碼學定義在機密性,但等等所看到的內容,全部都與完整性佔了相當大的關係,
使用密碼系統大致有下列幾項應用:資料儲存的安全(Data storage)、E-mail、網路協定(Network Protocols)…

密碼學是一門這麼複雜的應用數學,但是應用在資安領域中,重點不只是只有在於機密性,更重要的是確保了完整性
很多人往往都只有把密碼學定義在機密性,但等等所看到的內容,全部都與完整性佔了相當大的關係
使用密碼系統大致有下列幾項應用:資料儲存的安全(Data storage)、E-mail、網路協定(Network Protocols)
那麼依照其動作的內容有幾項基本的目的:確保訊息完整性(message integrity)、確保訊息機密訊(message confidentiality)
訊息可信賴性(message authenticity)、 傳送者及接收者的驗證(sender/recipient authentication)、傳送者及接收者的不可否認性
(sender/recipient Non-repudiation)

當然,提到了應用,就不可能只用一種加密系統來運作,一定是混合多種的密碼系統最大的強度就是混合各項安全控制
混合有對稱(Symmetric)、非對稱(Asymmetric)及訊息完整控制(MICs),等等的各種混合系統的作法
下圖流程為數位信封(Digital Envelop),key用於加密為encrypting key(≠ encrypting)
image 
當然,上圖所示的,僅僅是混合了兩種的密碼系統,極緻的混合式密碼系統,則如下圖所示:
image 
1.訊息以Symmetric key加密,再將Symmetric key以接放者的public key加密傳遞給接收者。
2.訊息加密後,再以hash function產出digiest再以發送者的private key加密配合訊息的密文傳遞給接收者。
3.接收者收到symmetric key的密文後,以接收者的private key解密後,再將訊息的數位簽章內容與訊息密文以Symmetric key解密。
4.接收者再以發送者的public key將收到訊息的數位簽章解密取出digest。
5.接收者將訊息經過hash function取出digest與由數位簽章的digest比對,若比對的內容是相同、並且正確則完成訊息的傳遞及傳送者不可否認性。
6.接下來接收者再將digest以接收者的private key加密傳遞給發送者。
7.發送者收到由接收者送出的數位簽章後,以接收者的public key將digest解開,與自已發送出去的digest比對正確則完成接收者的不可否認性。

較常應用的密碥系統最常應用於mail的傳遞(首重於訊息完整性及加密服務,但有幾個加入了金鑰管理及不可否認性)
而幾個常見的安全郵件協定有:
MSP;Message Security Protocol:支援訊息標示及數位簽章的接收。
Privacy Enhanced Mail(PEM):設計時是以PKI為基礎,包含了支援X.509憑證及它使用了DES以CBC mode
亦可選擇使用ECB mode或是3DES-EDE2做為金鑰管理,但不相容於MIME。
MIME Object Security Service(MOSS):是以MIME為基礎並取代PEM的協定,PEM則是一種封閉的組合及標準的PKI架構。
Pretty Good Privacy(PGP):保護訊息的機密性及完整性,訊息的加密是使用亂數選擇的對稱式session key加密,pgp是一種額外的保護,
   可以選擇以RSA, DH及EIGamal的非稱式金鑰加密,及x.509公開金鑰憑證,相容於CA-Based任賴模式
   可以相容支j援MIME、S/MIME或PGP/MIME為基礎的MOSS等。預設值為IDEA加密,數位簽章用RSA,MICs是MD5。
S/MIME:是由RSA三者開發,是一個實際的標準,是以公開金鑰加密標準(PKCS)為基礎,使用RSA非對稱金鑰加密,以DES做為對稱加密金鑰
   以及以SHA-1為Digest的演算方法。傳送者以數位簽章後再用收件者的公鑰加密。

而常用的安全網路協定則有:S-HTTP(Application layer),SSH;Secure Shell(Transport Layer),SSL;Secure Socket Layer(BetweenTransport and Application)
TLS;Transport layer security(Transport Layer),WPA;WiFi Protected Access、WPA2;802.11i Wireless Lan…等等(於Telecommunications and Network Security)
再詳加說明,本篇著重於密碼的應用,其實後續還有法律相關的問題及破密分析、資訊隱藏的部份,應該於近日可以與各位分享我的心得,謝謝~


Anything keeps Availability.
Anywhere keeps Integrity.
Anytime keeps Confidentiality.
keep A.I.C. = Information Security