网络上DesUtil.java关于汉字加密解密出现乱码的问题
2014-02-19 01:03
956 查看
代码来自以下链接
http://www.oschina.net/code/piece_full?code=18383#30455
首先声明的是,代码不是本人写的,感谢一下作者,只不过本人在做一个android客户端,与服务器servlet接口通信的项目时,对协议作了des+base64加密处理,使用了该类,
期间遇到了一个比较纠结的问题,就是如果汉字存在于协议中,服务器加密,客户端解密会出现乱码,客户端加密,服务器解密亦然。
以上问题的解决其实很简单,只不过找问题原因的过程有点浪费时间,所以记录在此,以告知其他有缘也用到该类的朋友,能够节省一点宝贵的时间。
修改代码如下:
请留意,修改的两处为"UTF-8"的位置。
希望大伙没有遇到这个问题。
http://www.oschina.net/code/piece_full?code=18383#30455
首先声明的是,代码不是本人写的,感谢一下作者,只不过本人在做一个android客户端,与服务器servlet接口通信的项目时,对协议作了des+base64加密处理,使用了该类,
期间遇到了一个比较纠结的问题,就是如果汉字存在于协议中,服务器加密,客户端解密会出现乱码,客户端加密,服务器解密亦然。
以上问题的解决其实很简单,只不过找问题原因的过程有点浪费时间,所以记录在此,以告知其他有缘也用到该类的朋友,能够节省一点宝贵的时间。
修改代码如下:
/** * Description 根据键值进行加密 * * @param data * @param key * 加密键byte数组 * @return * @throws Exception */ public static String encrypt(String data, String key) throws Exception { byte[] bt = encrypt(data.getBytes("UTF-8"), key.getBytes()); String strs = new BASE64Encoder().encode(bt); return strs; } /** * Description 根据键值进行解密 * * @param data * @param key * 加密键byte数组 * @return * @throws IOException * @throws Exception */ public static String decrypt(String data, String key) throws IOException, Exception { if (data == null) return null; BASE64Decoder decoder = new BASE64Decoder(); byte[] buf = decoder.decodeBuffer(data); byte[] bt = decrypt(buf,key.getBytes()); return new String(bt, "UTF-8"); }
请留意,修改的两处为"UTF-8"的位置。
希望大伙没有遇到这个问题。
相关文章推荐
- 【转】关于AES256算法java端加密,ios端解密出现无法解密问题的解决方案
- 【转】关于AES256算法java端加密,ios端解密出现无法解密问题的解决方案
- 关于AES256算法java端加密,ios端解密出现无法解密问题的解决方案
- javaweb开发中关于字符编码出现乱码问题的总结
- 关于JAVA中的MVC结果,Controller方法返回字符串到前端js出现乱码问题
- 关于汉字的加密解密问题,在线等!!!
- Java加密解密DESUtil、TripleDESUtil(未测试)
- ubuntu下用eclipse打开在windows下写的java程序出现汉字乱码问题和字体修改
- 关于客户端与服务器ajax使用json数据交互,出现中文乱码或因包含html标答而报错的问题(base64加密)
- 关于java连接mysql出现中文乱码的问题
- 关于Java程序(WEB程序)数据提交到Mysql,Mysql数据出现乱码的问题
- 关于VS Code使用code runner编译运行java出现报错乱码的问题
- 关于java.util.Properties读取中文出现乱码的解决方案
- C#使用RSA私钥加密公钥解密的改进,解决特定情况下解密后出现乱码的问题
- 关于用php插入汉字到oracle中出现不乱码问题
- Myeclipse中导入项目后java类中汉字注释出现乱码问题(已解决)
- java实现AES加密(解决中文解密后乱码问题,解决传输字符串后解密报错的问题)
- jsp,java中文乱码问题另类解决方案,jni加密、解密编码
- 关于Myeclipse出现 java文件中文乱码问题的解决方案.