魔方加密演算法
『壹』 十大常見密碼加密方式
一、密鑰散列
採用MD5或者SHA1等散列演算法,對明文進行加密。嚴格來說,MD5不算一種加密演算法,而是一種摘要演算法。無論多長的輸入,MD5都會輸出一個128位(16位元組)的散列值。而SHA1也是流行的消息摘要演算法,它可以生成一個被稱為消息摘要的160位(20位元組)散列值。MD5相對SHA1來說,安全性較低,但是速度快;SHA1和MD5相比安全性高,但是速度慢。
二、對稱加密
採用單鑰密碼系統的加密方法,同一個密鑰可以同時用作信息的加密和解密,這種加密方法稱為對稱加密。對稱加密演算法中常用的演算法有:DES、3DES、TDEA、Blowfish、RC2、RC4、RC5、IDEA、SKIPJACK等。
三、非對稱加密
非對稱加密演算法是一種密鑰的保密方法,它需要兩個密鑰來進行加密和解密,這兩個密鑰是公開密鑰和私有密鑰。公鑰與私鑰是一對,如果用公鑰對數據進行加密,只有用對應的私鑰才能解密。非對稱加密演算法有:RSA、Elgamal、背包演算法、Rabin、D-H、ECC(橢圓曲線加密演算法)。
四、數字簽名
數字簽名(又稱公鑰數字簽名)是只有信息的發送者才能產生的別人無法偽造的一段數字串,這段數字串同時也是對信息的發送者發送信息真實性的一個有效證明。它是一種類似寫在紙上的普通的物理簽名,但是在使用了公鑰加密領域的技術來實現的,用於鑒別數字信息的方法。
五、直接明文保存
早期很多這樣的做法,比如用戶設置的密碼是「123」,直接就將「123」保存到資料庫中,這種是最簡單的保存方式,也是最不安全的方式。但實際上不少互聯網公司,都可能採取的是這種方式。
六、使用MD5、SHA1等單向HASH演算法保護密碼
使用這些演算法後,無法通過計算還原出原始密碼,而且實現比較簡單,因此很多互聯網公司都採用這種方式保存用戶密碼,曾經這種方式也是比較安全的方式,但隨著彩虹表技術的興起,可以建立彩虹表進行查表破解,目前這種方式已經很不安全了。
七、特殊的單向HASH演算法
由於單向HASH演算法在保護密碼方面不再安全,於是有些公司在單向HASH演算法基礎上進行了加鹽、多次HASH等擴展,這些方式可以在一定程度上增加破解難度,對於加了「固定鹽」的HASH演算法,需要保護「鹽」不能泄露,這就會遇到「保護對稱密鑰」一樣的問題,一旦「鹽」泄露,根據「鹽」重新建立彩虹表可以進行破解,對於多次HASH,也只是增加了破解的時間,並沒有本質上的提升。
八、PBKDF2
該演算法原理大致相當於在HASH演算法基礎上增加隨機鹽,並進行多次HASH運算,隨機鹽使得彩虹表的建表難度大幅增加,而多次HASH也使得建表和破解的難度都大幅增加。
九、BCrypt
BCrypt 在1999年就產生了,並且在對抗 GPU/ASIC 方面要優於 PBKDF2,但是我還是不建議你在新系統中使用它,因為它在離線破解的威脅模型分析中表現並不突出。
十、SCrypt
SCrypt 在如今是一個更好的選擇:比 BCrypt設計得更好(尤其是關於內存方面)並且已經在該領域工作了 10 年。另一方面,它也被用於許多加密貨幣,並且我們有一些硬體(包括 FPGA 和 ASIC)能實現它。 盡管它們專門用於采礦,也可以將其重新用於破解。
『貳』 有多少種密碼方式除了摩斯密碼外還有什麼密碼
1、RSA演算法密碼
RSA演算法是第一個能同時用於加密和數字簽名的演算法,也易於理解和操作。RSA演算法是一種非對稱密碼演算法,所謂非對稱,就是指該演算法需要一對密鑰,使用其中一個加密,則需要用另一個才能解密。
2、ECC加密法密碼
ECC演算法也是一個能同時用於加密和數字簽名的演算法,也易於理解和操作。同RSA演算法是一樣是非對稱密碼演算法使用其中一個加密,用另一個才能解密。
3、三分密碼
首先隨意製造一個3個3×3的Polybius方格替代密碼,包括26個英文字母和一個符號。然後寫出要加密的訊息的三維坐標。訊息和坐標四個一列排起,再順序取橫行的數字,三個一組分開,將這三個數字當成坐標,找出對應的字母,便得到密文。
4、柵欄加密法密碼
柵欄加密法是一種比較簡單快捷的加密方法。柵欄加密法就是把要被加密的文件按照一上一下的寫法寫出來,再把第二行的文字排列到第一行的後面。
5、針孔加密法密碼
這種加密法誕生於近代。由於當時郵費很貴,但是寄送報紙則花費很少。於是人們便在報紙上用針在需要的字下面刺一個孔,等到寄到收信人手裡,收信人再把刺有孔的文字依次排列,連成文章。
『叄』 簡述加密技術的基本原理,並指出有哪些常用的加密體制及其代表演算法
1、對稱加密演算法
對稱加密演算法用來對敏感數據等信息進行加密,常用的演算法包括:
DES(Data Encryption Standard):數據加密標准,速度較快,適用於加密大量數據的場合。
3DES(Triple DES):是基於DES,對一塊數據用三個不同的密鑰進行三次加密,強度更高。
AES(Advanced Encryption Standard):高級加密標准,是下一代的加密演算法標准,速度快,安全級別高;
演算法原理
AES 演算法基於排列和置換運算。排列是對數據重新進行安排,置換是將一個數據單元替換為另一個。AES 使用幾種不同的方法來執行排列和置換運算。
2、非對稱演算法
常見的非對稱加密演算法如下:
RSA:由 RSA 公司發明,是一個支持變長密鑰的公共密鑰演算法,需要加密的文件塊的長度也是可變的;
DSA(Digital Signature Algorithm):數字簽名演算法,是一種標準的 DSS(數字簽名標准);
ECC(Elliptic Curves Cryptography):橢圓曲線密碼編碼學。
演算法原理——橢圓曲線上的難題
橢圓曲線上離散對數問題ECDLP定義如下:給定素數p和橢圓曲線E,對Q=kP,在已知P,Q 的情況下求出小於p的正整數k。可以證明由k和P計算Q比較容易,而由Q和P計算k則比較困難。
將橢圓曲線中的加法運算與離散對數中的模乘運算相對應,將橢圓曲線中的乘法運算與離散對數中的模冪運算相對應,我們就可以建立基於橢圓曲線的對應的密碼體制。
『肆』 數字加密方法
數字加密方法:將該數每一位上的數字加9,然後除以10取余,做為該位上的新數字,最後將第1位和第3位上的數字互換,第2位和第4位上的數字互換,組成加密後的新數。
數據加密演算法是一種對稱加密演算法,是使用最廣泛的密鑰系統,特別是在保護金融數據的安全中;密碼演算法是加密演算法和解密演算法的統稱,它是密碼體制的核心,密碼演算法可以看成一些交換的組合,當輸入為明文時,經過這些變換,輸出就為密文,此過程為加密演算法。
數字加密標准(DES)
對每個64位的數據塊採用56位密鑰。加密的過程可以用若干種模式進行操作包括16次循環或操作。雖然它被認為是「強」加密,許多公司使用三個密鑰,「三重數字加密標准(DES)」。這並不是說,DES加密信息不能被破解。早在1997年,另一個加密方法公鑰加密演算法(Rivest-Shamir-Adleman)的擁有人懸賞一萬美元來破解數字加密標准信息。