jmeter 加密
1.base64加密
import java.util.Base64; import sun.misc.BASE64Encoder; BASE64Encoder encode = new sun.misc.BASE64Encoder(); String 加密后参数 = encode.encode("${需要加密的参数}".getBytes());
2.ase加密
import sun.misc.BASE64Decoder; import sun.misc.BASE64Encoder; import javax.crypto.Cipher; import javax.crypto.spec.IvParameterSpec; import javax.crypto.spec.SecretKeySpec; /** * 编码工具类 * 实现aes加密、解密 */ // public static final Logger LOGGER = LoggerFactory.getLogger(AesUtils.class); // 加解密 key xxxxx private static final String AES = "AES"; //偏移量 private static final String IV_STRING = "aaaaaaaa"; private static final String key = "xxxxxxxxxx"; private static final String AESCBC = "AES/CBC/PKCS5Padding"; private static final String UTF8 = "UTF-8"; /** * 加密 * * @param content 加密内容 * @return 密文 * @throws Exception e */ public static String encrypt(String content) { byte[] encryptedBytes = new byte[0]; try { byte[] byteContent = content.getBytes(UTF8); // 注意,为了能与 iOS 统一 // 这里的 key 不可以使用 KeyGenerator、SecureRandom、SecretKey 生成 byte[] enCodeFormat = key.getBytes(); SecretKeySpec secretKeySpec = new SecretKeySpec(enCodeFormat, AES); byte[] initParam = IV_STRING.getBytes(); IvParameterSpec ivParameterSpec = new IvParameterSpec(initParam); // 指定加密的算法、工作模式和填充方式 Cipher cipher = Cipher.getInstance(AESCBC); cipher.init(Cipher.ENCRYPT_MODE, secretKeySpec, ivParameterSpec); encryptedBytes = cipher.doFinal(byteContent); // 同样对加密后数据进行 base64 编码 } catch (Exception e) { e.getStackTrace(); } return new BASE64Encoder().encode(encryptedBytes); } /** * 解密 * * @param content 密文 * @return 明文 * @throws Exception e */ public static String decrypt(String content) { // base64 解码 try { byte[] encryptedBytes = new BASE64Decoder().decodeBuffer(content); byte[] enCodeFormat = key.getBytes(); SecretKeySpec secretKey = new SecretKeySpec(enCodeFormat, AES); byte[] initParam = IV_STRING.getBytes(); IvParameterSpec ivParameterSpec = new IvParameterSpec(initParam); Cipher cipher = Cipher.getInstance(AESCBC); cipher.init(Cipher.DECRYPT_MODE, secretKey, ivParameterSpec); byte[] result = cipher.doFinal(encryptedBytes); return new String(result, UTF8); } catch (Exception e) { e.getStackTrace(); } return null; } /** * 根据传入的密钥进行验证 * @param text * @param aes * @return */ public static boolean verify(String text,String aes) { String aesstr = encrypt(text); if (aesstr.equalsIgnoreCase(aes)) { return true; } return false; }