據記載,公元前400年,古希臘人發明了排列碼。1881年,世界上第壹個電話保密專利出現。第二次世界大戰期間,德國軍方啟動了英格瑪密碼機,密碼學在戰爭中發揮了非常重要的作用。
隨著信息化和數字化社會的發展,人們對信息安全保密重要性的認識不斷提高,於是在1997,美國國家標準局宣布實施。
隨著“美國數據加密標準(DES)”的出臺,民間力量開始全面參與密碼學的研究和應用,采用的加密算法有DES、RSA、SHA等。隨著對加密強度需求的增加
高,最近出現的AES,ECC等。
使用加密技術可以達到以下目的:
保密性:防止用戶的身份或數據被讀取。
數據完整性:防止數據被更改。
身份驗證:確保數據來自特定的壹方。
2.加密算法簡介
根據密鑰類型的不同,現代密碼學可以分為兩大類:對稱加密算法(秘密密鑰加密)和非對稱加密算法(公開密鑰加密)。
對稱密鑰加密系統使用同壹個密鑰進行加密和解密,雙方都必須獲得這個密鑰並保密。
非對稱密鑰加密系統中使用的加密密鑰(公鑰)和解密密鑰(私鑰)是不同的。
對稱加密算法
對稱加密算法用於加密敏感數據和其他信息。常用的算法包括:
DES(數據加密標準):壹種高速的數據加密標準,適用於加密大量數據。
3DES(Triple DES):基於DES,壹段數據用三個不同的密鑰加密三次,強度更高。
AES(高級加密標準):高級加密標準,是下壹代高速高安全級別的加密算法標準;
俄歇電子能譜
2000年6月,NIST(美國國家標準和技術研究所)宣布采用從65,438+05種候選算法中選出的壹種新的密鑰加密標準。
Rijndael被選為未來的AES。Rijndael由研究人員瓊·代蒙和文森特於1999年下半年創建。
Rijmen創造了它。AES正日益成為加密各種形式的電子數據的實用標準。
美國標準與技術協會(NIST)於2002年5月26日制定了新的高級加密標準(AES)規範。
算法原理
AES算法基於置換和置換運算。排列是重新排列數據,替換是用壹個數據單元替換另壹個數據單元。AES使用幾種不同的方法來執行置換和置換運算。
AES是壹種叠代對稱密鑰分組密碼,可以使用128、192和256位密鑰,使用128位(16
字節)塊加密和解密數據。與使用密鑰對的公鑰加密不同,對稱密鑰加密使用相同的密鑰來加密和解密數據。分組密碼返回的加密數據的位數與輸入數據的位數相同。
壹樣。叠代加密使用循環結構,其中輸入數據被重復置換和替換。
AES和3DES的比較
算法名稱
算法類型
密鑰長度
速度
解密時間(施工機器每秒嘗試255個密鑰)
資源消耗
俄歇電子能譜
對稱分組密碼
128,192,256位
高的
149000億年
低的
3DES
對稱feistel密碼
112位或168位
低的
46億年
中間
不對稱算法
常見的不對稱加密算法如下:
RSA:由RSA公司發明,是壹種公鑰算法,支持變長密鑰,要加密的文件塊長度也是可變的;
DSA(數字簽名算法):數字簽名算法,是標準的DSS(數字簽名標準);
ECC(橢圓曲線密碼):橢圓曲線密碼。
偏心輪(eccentric的簡寫)
1976年,由於對稱加密算法已經不能滿足需要,Diffie和Hellman發表了壹篇名為《密碼學新趨勢》的文章,引入了公鑰加密的概念,RSA算法由Rivet、Shamir和Adelman提出。
隨著大整數分解方法的進步和完善,計算機速度的提高和計算機網絡的發展,為了保證數據的安全性,需要不斷增加RSA密鑰。
但是密鑰長度的增加大大降低了加解密的速度,硬件實現也變得越來越難以承受,給使用RSA的應用帶來了沈重的負擔,因此需要壹種新的算法。
替換RSA。
在1985中,N.Koblitz和Miller基於有限域上橢圓曲線上的點群中的離散對數問題ECDLP,提出了橢圓曲線應用於密碼算法。ECDLP是壹個比因式分解更難的問題,而且是指數級的困難。