java實現對稱加密AES和DES的加密 解密

2021-07-24 06:26:46 字數 928 閱讀 2846

目前主流的加密方式有:1、對稱加密:aes、des      2、非對稱加密:rsa、dsa。

cipher cipher = cipher.getinstance("des/cbc/pkcs5padding");

cipher.init(cipher.encrypt_mode, key, zeroiv);

其中,des是採用的演算法,cbc是工作模式,des一共有電子密碼本模式(ecb)、加密分組鏈結模式(cbc)、加密反饋模式(cfb)和輸出反饋模式(ofb)四種模式,pkcs5padding是填充模式,還有其它的填充模式。

而方法cipher.init();一共有三個引數:cipher.encrypt_mode, key, zeroiv,cipher.encrypt_mode是加密/解密工作模式,key是金鑰(模式) zeroiv就是初始化向量。工作模式、填充模式、初始化向量這三種因素乙個都不能少。否則,如果你不指定的話,那麼就要程式就要呼叫預設實現。

下面分別實現對稱加密/解密的**。

加密方式: aes128(cbc/pkcs5padding) + base64,  私鑰:lianghuilonglong,要加密的字串:abcdefg。

實現如下:

public string encrypt()
解密邏輯:將伺服器返回的加密字串,先用base64、hex等解碼成byte,再用加密時相同的加密方式及key進行解密。加密與解密**幾乎相同。唯一區別為在cipher類init時,工作模式為cipher.decrypt_mode。

加密方式: aes128(cbc/pkcs5padding) + base64, 私鑰:lianghuilonglong

**實現:

public string deciphering()

AES對稱加密解密JAVA實現

話不多說,直接上 public class aesutil catch exception e 如果有錯就返加nulll return null 解密 解密過程 1.同加密1 4步 2.將加密後的字串反紡成byte陣列 3.將加密內容解密 public static string decode st...

AES加密 JAVA實現

aes是常用的對稱加密技術,比des有更高的安全性。在寫cp abe系統的時間使用aes加密密文檔案,abe加密了乙個element jpbc庫 屬於常見的加密體制。下面 的aes,乙個是以檔案流的形式加密檔案,乙個是直接加密字串 public class aes destfile.createne...

對稱加密 AES和DES加密 解密

對稱加密 aes和des加密 解密 目前主流的加密方式有 對稱加密 aes des 非對稱加密 rsa dsa 呼叫aes des加密演算法包最精要的就是下面兩句話 cipher cipher cipher.getinstance des cbc pkcs5padding cipher.init c...