前后端实现AES加解密(三):java与cryto.js的配合使用

由于是用两种语言来进行加密解密,所以在细节上会存在各种各样的问题,导致加解密过程出现各种问题。前后端实现AES加解密(一)(二)中的示例已经考虑到了各种细节上的问题,按照上两篇去,是可以实现在前后端之间进行密文传输,并完成加密解密的。这里再将容易犯的错误进行归纳:
1.前后端指定向量(不是必须的)需要一致,长度必须是16byte。
2.前端需要引入cryto.js文件,后端需要引commons-codec.jar。其实后端并没有采用commons-codec的方式来实现加解密,只是用了一下它的base64加解密。
3.密钥过长的时候需要无政策限制文件。
4.有时候在后台对中文进行加密,前端解密的时候会报错:畸形的utf-8数据,这很有可能是后端对字符串加密的时候,没有将该字符串按照utf-8的格式转化为byte数组。
5.前端加密完成的字符串一定是base64格式的,后端加密完成的是一个byte数组,需要转成base64格式的字符串。
6.前端解密完成的字符串一定是utf-8格式的,后端解密完成的字符串是一个byte数组,需要转成utf-8格式的字符串。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值