C=Ek1(P) P=Dk2(C)
當K1=K2,即加密及解密過程皆使用相同的金鑰時,此金鑰被稱為祕密金鑰(secret key),而方法本身則被稱為對稱式密碼學演算法(symmetric cryptographic algorithm)。而當加密及解密過程使用不同的金鑰時,金鑰持有人保有私密金鑰(private key),用於簽章與解密;另一把金鑰則被稱為公開金鑰(public key),用於訊息加密,並對外公開,其方法本身則被稱為非對稱式密碼學演算法(asymmetric cryptographic algorithm)。
對稱式密碼學演算法是以多回合的重新排列(permutation)與置換(substitution)來達到學者Shannon(1949)所要求的混淆(confusion)與擴散(diffusion)的加密特性。對稱式密碼學演算法計算的效率也高於多為指數運算的非對稱式密碼學演算法。因此,長篇訊息的加密及解密多使用對稱式密碼學演算法。資料加密標準(Data Encryption Standard, DES)密碼法是最被廣泛運用的對稱式密碼演算法。它源自IBM的Horst Feistel(1973)領導發展的LUCIFER,經過改良後於1977年被訂為美國聯邦資訊處理標準之一,即FIPS PUB 46(Federal Information Processing Standard 第46號)。近年來,隨著微電子科技及平行與分散式資訊處理技術(parallel and distribute computing)帶來計算能力的指數成長,已有人展示了以窮舉式攻擊法(brute force attack)來破解DES的加密保護,故有三次DES法(triple-DES)之提出,組成更安全的方法。新一代的對稱式加密標準為高級加密標準(Advanced Encryption Standard, AES),於2000年10月2日由美國商務部部長Morman. Y. Mineta宣布Rijndael演算法脫穎而出,且於2001年成為美國聯邦資訊處理加密標準,逐步取代DES。
在DES成為產業界使用的密碼學方法標準之後,密碼學界已體會到這類密碼學方法的限制。密碼學學者Whitfield Diffie和Martin Hellman在1976年發表的一篇論文中,提出基於求解離散對數(computing discrete logarithms)困難度的Diffie-Hellman金鑰協約(Diffie-Hellman Key Agreement Protocol),解決了對稱式密碼學的私密金鑰必須經由祕密的通道交付給金鑰持有人的缺失,也指出了密碼學新的方向。另外一項對稱式密碼學的缺失則是無法提供類似於手寫簽名的數位簽章功能。1978年由Rivest、Shamir與Adleman三人發展基於分解因數困難度的RSA方法,則可滿足這一項重要的功能,再次將密碼學帶入新的層次。另外,RSA方法也可以應用於訊息保密。因為RSA不是有效率的方法,通常僅用於較短訊息的加密與解密,而最典型的應用是數位彌封(Digital Envelop),用以分配對稱式密碼學的祕密金鑰,例如DES金鑰的分配。在同一篇論文中,Rivest、Shamir與Adleman三人也提出「公開檔案(Public file)」觀念,來鑑別公開金鑰的所有人,可以說是現今數位憑證管理的啟蒙。另一個常被使用的非對稱式密碼學演算法是基於求解離散對數困難度,也適用於訊息保密與數位簽章的ElGamal (1985)演算法。許多著名的數位簽章系統都是改良ElGamal演算法而來,其中包括著名的Schnorr(1991)方法。DSS(Digital Signature Standard)(1991年8月)是另外一個被標準制定機構認可的數位簽章方法。DSS的演算法稱為DSA(Digital Signature),是由ElGamal及Schnorr二種方法轉變而來。但是DSS僅用於數位簽章,無法應用於訊息的加解密。
密碼學常用的數學函數中,另有一類是不用密碼金鑰的,稱為單向赫序函數(one-way hash function)。有的學者依據它的內涵譯成「雜湊函數」或「訊息濃縮函數」(message-digest function)。根據單向赫序函數的定義,經過單向赫序函數作用之後得到的赫序值(hash value),或稱赫序碼(hash code),就如同可以代表該訊息的指紋。一段長篇的訊息的赫序碼,也被稱為數位指紋(digital fingerprint),有時候,也稱之為訊息摘要(message digest)。目前常用的赫序函數有日本電話電報公司(Nippon Telephone and Telegraph(NTT))的N-Hash(Miyaguchi, Ohta, & Iwata, 1990)、MD5(Ron Rivest,RSA的作者之一)、美國商務部的國家標準與技術局(National Institute of Standards and Technology, NIST)發展的SHA-1、源自歐洲RACE Integrity Primitives Evaluation(RIPE)計劃的RIPE-MD(RACE, 1992),其中RACE是代表The Research and Development in Advanced Communication Technologies in Europe。
常見的以密碼學為基礎的鑑別機制,即是利用:(1)對稱式密碼學方法,使被鑑別的個體可以加密鑑別用的資訊,形成「鑑別用安全資料件」(authenticator),供鑑別者檢驗;或(2)非對稱式密碼學方法,於鑑別資料件(token)附加數位簽章,用以查核真確性;或(3)被信賴的第三者(Trusted Third Party, TTP)的參與,以提供鑑別者所需使用的資訊。並結合反制各種威脅的方法,達到單向或雙向的鑑別目的。
posted on Monday, July 18, 2005 1:47 AM