java加密解密AES实现
来源:互联网 发布:netbeans ide 高级编程 编辑:程序博客网 时间:2024/06/04 19:55
加密时,先用AES加密,再用base64加密;解密时,先用base64解密,再用AES解密。
import org.apache.commons.io.FileUtils;import sun.misc.BASE64Decoder;import sun.misc.BASE64Encoder;import javax.crypto.Cipher;import javax.crypto.KeyGenerator;import java.io.File;import java.io.IOException;import java.security.Key;import java.security.NoSuchAlgorithmException;import java.security.SecureRandom;/** * Created by fhqplzj on 2017/11/15. */public class AESDemo { private static final String algorithm = "AES"; private static Key getSecretKey() { try { KeyGenerator keyGenerator = KeyGenerator.getInstance(algorithm); SecureRandom secureRandom = SecureRandom.getInstance("SHA1PRNG"); secureRandom.setSeed(47); keyGenerator.init(128, secureRandom); return keyGenerator.generateKey(); } catch (NoSuchAlgorithmException e) { e.printStackTrace(); } return null; } private static void encrypt(File src_file) { try { Cipher cipher = Cipher.getInstance(algorithm); cipher.init(Cipher.ENCRYPT_MODE, getSecretKey()); byte[] encode_bytes = cipher.doFinal(FileUtils.readFileToByteArray(src_file)); BASE64Encoder base64Encoder = new BASE64Encoder(); FileUtils.writeStringToFile(src_file, base64Encoder.encode(encode_bytes)); } catch (Exception e) { e.printStackTrace(); } } private static void decrypt(File src_file) { try { BASE64Decoder base64Decoder = new BASE64Decoder(); byte[] decode_bytes = base64Decoder.decodeBuffer(FileUtils.readFileToString(src_file)); Cipher cipher = Cipher.getInstance(algorithm); cipher.init(Cipher.DECRYPT_MODE, getSecretKey()); FileUtils.writeByteArrayToFile(src_file, cipher.doFinal(decode_bytes)); } catch (Exception e) { e.printStackTrace(); } } public static void main(String[] args) throws NoSuchAlgorithmException, IOException { File file = new File("/Users/fhqplzj/train.txt"); decrypt(file); }}
阅读全文
0 0
- Java实现AES加密解密
- java实现AES加密解密
- AES加密解密->java实现
- Java实现AES加密解密
- java实现AES加密解密
- Java实现AES加密解密
- java加密解密AES实现
- AES加密解密算法的Java实现
- JAVA实现AES加密和解密
- java和js实现aes加密解密
- AES 加密解密的 JAVA 实现 【二】
- Java实现AES加密和解密
- AES加密解密算法Java实现
- java和js实现aes加密解密
- java和js实现aes加密解密
- Java实现AES加密和解密
- 加密解密。(aes, java)
- java,AES加密,解密
- php-tp5的validate自动验证
- DOM绑定事件处理器
- OC 协议与代理
- 跨浏览器访问事件的方法
- 优化SQL查询:如何写出高性能SQL语句
- java加密解密AES实现
- DOM模型事件传播机制应用
- shell 脚本自动发布 APP
- Android的设计模式-状态模式
- DOM模型转发事件应用
- spring boot 关于单项目的重复启动
- 访问权限控制
- Oracle 11g R2静默安装安装
- 跨浏览器拖动HTML元素