| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- package com.punchsettle.server;
- import org.jasypt.encryption.pbe.StandardPBEStringEncryptor;
- import org.jasypt.iv.RandomIvGenerator;
- import org.jasypt.salt.RandomSaltGenerator;
- /**
- * 应用Jasypt加解密工具
- */
- public class AppEncryptor {
- /**
- * 密码
- */
- private String password;
- /**
- * 算法
- */
- private String algorithm;
- /**
- * 加解密实例
- */
- private StandardPBEStringEncryptor standardPBEStringEncryptor;
- public AppEncryptor(String password, String algorithm) {
- this.password = password;
- this.algorithm = algorithm;
- standardPBEStringEncryptor = new StandardPBEStringEncryptor();
- standardPBEStringEncryptor.setPassword(password);
- standardPBEStringEncryptor.setAlgorithm(algorithm);
- standardPBEStringEncryptor.setSaltGenerator(new RandomSaltGenerator());
- standardPBEStringEncryptor.setIvGenerator(new RandomIvGenerator());
- }
- /**
- * 加密并输出加密结果
- * @param filedName 待加密的字段名称
- * @param filedStr 待加密的字符串
- */
- public void encryptAndShow(String filedName, String filedStr) {
- String encryptStr = standardPBEStringEncryptor.encrypt(filedStr);
- System.out.println(String.format("%s:%s", filedName, encryptStr));
- }
- public static void main(String[] args) {
- AppEncryptor appEncryptor = new AppEncryptor("", "PBEWithMD5AndDES");
- appEncryptor.encryptAndShow("dev", "");
- AppEncryptor appEncryptor2 = new AppEncryptor("", "PBEWithMD5AndDES");
- appEncryptor2.encryptAndShow("prod", "");
- }
- }
|