㈠ java編程一個AES加密txt文件的程序,其中AES解密文件的方法出錯,求大神搭救
你是對文件內容加的密,應該和文件類型無關把。如果用的是
AES演算法加的密的話,初始化的時候就會寫到
keygen = KeyGenerator.getInstance("AES");
//生成密鑰
deskey = keygen.generateKey();
//生成Cipher對象,指定其支持的DES演算法
c = Cipher.getInstance("AES");
加密和解密的過程幾乎是一樣的,AES是對稱加密方式,你看看加密和解密方法里的有沒有寫錯的地方。
㈡ 對稱加密演算法AES
1、雙向加密包括對稱加密和非對稱加密。對稱加密包括DES加密,AES加密等,非對稱加密包括RSA加密,ECC加密。AES演算法全稱AdvancedEncryptionStandard,是DES演算法的替代者,也是當今最流行的對稱加密演算法之一。
2、AES加密標准又稱為高級加密標准Rijndael加密法,是美國國家標准技術研究所NIST旨在取代DES的21世紀的加密標准。
3、aes屬於對稱加密演算法,這樣演算法最大的特點是加密的密鑰和解密的密鑰是一樣的。另外aes運算相對比較簡單,在數據流加密中應用很廣泛。
4、aes的意思:AES技術是一種對稱的分組加密技術,使用128位分組加密數據,提供比WEP/TKIPS的RC4演算法更高的加密強度。AES的加密碼表和解密碼表是分開的,並且支持子密鑰加密,這種做法優於以前用一個特殊的密鑰解密的做法。
㈢ java 加密方式有哪些
Java加密方式有多種,包括對稱加密、非對稱加密、散列加密等。
1. 對稱加密:
對稱加密是指加密和解密使用相同密鑰的加密方式。在Java中,常見的對稱加密演算法有AES、DES、3DES等。其中,AES演算法是DES的替代品,具有更高的安全性。這些演算法提供了不同級別的加密強度,適用於保護敏感信息。
2. 非對稱加密:
非對稱加密使用一對密鑰,一個用於加密,另一個用於解密。在Java中,常見的非對稱加密演算法有RSA、DSA、ECC等。RSA演算法是最常用的非對稱加密演算法之一,它利用公鑰進行加密,私鑰進行解密,適用於安全通信和數字簽名。
3. 散列加密(哈希加密):
散列加密是一種將任意長度的輸入轉換為固定長度輸出的加密方式。在Java中,常見的散列加密演算法有MD5、SHA-1、SHA-256等。這些演算法主要用於生成數據的唯一標識符(哈希值),適用於密碼存儲、文件校驗等場景。需要注意的是,雖然MD5在某些情況下存在安全隱患,但SHA系列演算法提供了更高的安全性。
以上三種加密方式在Java中都有廣泛的應用,根據具體需求選擇合適的加密方式至關重要。同時,為了確保加密的安全性,還需要注意密鑰的管理和保護,避免密鑰泄露帶來的安全風險。