java中常用的加密算法有:1.BASE64算法,二進制數據;2.MD5算法,散列函數;3.SHA算法,消息摘要算法;4.RSA算法,用于加密和數字簽名的算法;5.DES算法,對稱密碼體制加密算法;6.PBE算法,基于口令的加密算法;7.DH算法,密鑰交換算法;8.DSA算法,數字簽名算法;9.ECC算法,橢圓加密算法;
java中常用的加密算法有以下幾種
1.BASE64算法
BASE64算法是一種基于64個可打印字符來表示二進制數據的表示方法,Base64算法可以將任意序列的8位字節描述為一種不易被人直接識別的形式,其復雜程度小,但效率高。
2.MD5算法
MD5算法是計算機安全領域廣泛使用的一種散列函數,用以提供消息的完整性保護,MD5是以512位分組來處理輸入的信息,且每一分組又被劃分為16個32位子分組,經過了一系列的處理后,算法的輸出由四個32位分組組成,將這四個32位分組級聯后將生成—個128位散列值。
3.SHA算法
SHA算法是一種消息摘要算法,SHA1主要適用于數字簽名標準里面定義的數字簽名算法。
4.RSA算法
RSA算法是一種使用不同的加密密鑰與解密密鑰,是由已知加密密鑰推導出解密密鑰在計算上是不可行的密碼體制,其原理是根據數論,尋求兩個大素數比較簡單,而將它們的乘積進行因式分解卻極其困難,因此可以將乘積公開作為加密密鑰。
5.DES算法
DES算法是一種對稱密碼體制加密算法,為密碼體制中的對稱密碼體制,其 明文按64位進行分組,密鑰長64位,密鑰是以56位參與DES運算,且第8、16、24、32、40、48、56、64位是校驗位,分組后的明文組和56位的密鑰按位替代或交換的方法形成密文組的加密方法。
6.PBE算法
PBE算法是一種基于口令的加密算法,其特點在于口令是由用戶自己掌握的,采用隨機數雜湊多重加密等方法保證數據的安全性,且PBE算法沒有密鑰的概念,密鑰在其它對稱加密算法中是經過算法計算得出來的,PBE算法則是使用口令替代了密鑰。
7.DH算法
DH算法是一種密鑰交換算法,可以讓雙方在完全沒有對方任何預先信息的條件下通過不安全信道建立起一個密鑰,且密鑰可以在后續的通訊中作為對稱密鑰來加密通訊內容。
8.DSA算法
DSA算法是一種數字簽名算法,是一種公開密鑰算法,其不能用作加密,只用作數字簽名,DSA算法使用公開密鑰,可以為接受者驗證數據的完整性和數據發送者的身份。
9.ECC算法
ECC算法是一種橢圓加密算法,可以通過較短的密鑰達到相同的安全程度,常用于用于加解密、簽名驗簽,也可以與DH結合使用,用于密鑰磋商。