注册事件回调“计算解密文字错误”
Re注册事件回调“计算解密文字错误”
aesKey = Base64.decodeBase64(encodingAesKey + '=');//这里encodingAesKey ='0323.....ooooppo'随意设置的一个43个字符的字符串,无特殊字符
// 设置解密模式为AES的CBC模式
Cipher cipher = Cipher.getInstance('AES/CBC/NoPadding');
SecretKeySpec keySpec = new SecretKeySpec(aesKey, 'AES');
IvParameterSpec iv = new IvParameterSpec(Arrays.copyOfRange(aesKey, 0, 16));
cipher.init(Cipher.DECRYPT_MODE, keySpec, iv);
// 使用BASE64对密文进行解码
还没开始解密就已经报错了(初始化解密库报错)
据我猜测,应该是缺包,求大神指点
接下来的代码
byte[] encrypted = Base64.decodeBase64(text);
// 解密
originalArr = cipher.doFinal(encrypted);
-------------------------
Re注册事件回调“计算解密文字错误”
java.security.InvalidKeyException: Illegal key size
原来是这个异常
catch (Exception e) {
throw new DingTalkEncryptException(DingTalkEncryptException.COMPUTE_DECRYPT_TEXT_ERROR);
}
大意了,官网有解决,先看看
-------------------------
Re注册事件回调“计算解密文字错误”
继续抛异常errcode -2 “Cannot resolve field”
再运行一次异常{'errcode':71006,'errmsg':'回调地址已经存在'}
{'aes_key':'.....qqqxyz','call_back_tag':['user_modify_org'],'errcode':0,'errmsg':'ok','token':'...............','url':'http://....../demo/isvreceive'}
看来上次的异常还是成功注册了回调地址
折算成功了么
赞0
踩0