java微信申请退款回调的注意点

public String decryptData(String base64Data, String md532Str) throws Exception {

    initialize();
    BASE64Decoder decoder = new BASE64Decoder();
    Cipher cipher = Cipher.getInstance("AES/ECB/PKCS7Padding");
    SecretKeySpec sKeySpec = new SecretKeySpec(md532Str.getBytes(), "AES");
    cipher.init(Cipher.DECRYPT_MODE, sKeySpec);
    return new String(cipher.doFinal(decoder.decodeBuffer(base64Data)),"UTF-8");
}

这是微信的退款密文解密方式;没有什么问题,从事开发java人员如果没有修改自己的jdk中的jar包java\jre1.8.0.172\lib\security\policy\unlimited路径中的两个jar不做修改就回有长度不够的问题

原因:AES在JDK正常下载的是有限制的解密位数的
解决:去oracle的javaSE下载对应jce解密jar,下载无敌解密jar包,替换jar中相应jar包

你可能感兴趣的:(JAVA)