cryptix Chiper Blowfish算法解密出现的解码失败问题

网站cookie的加解密导致大量用户无法登陆,原因是有大量非法cookie请求导致+chiper解密处理代码;

(加解密用的是cryptix  Blowfish算法,其他的没有验证)

扫了一圈终于发现原因:

程序里为提高性能通过ThreadLocal每个线程持有一个加解密的Chiper对象;类似

http://blog.csdn.net/guanxinquan/article/details/10224229

在密文正常的情况下一切正常没有错误,但是如果有错误的密文进来解密,就会导致下次正常的密文解密失败,

而下下次正常密文会解密成功;

所有一个非法的cookie的http请求就会脏一个服务器线程的chiper对象,如果这个线程就不能处理下一次的正常的登录;

如果非法请求非常多,就会导致大量登录失败;


解决方法:

解密错误或者异常的重置chiper对象



你可能感兴趣的:(cryptix Chiper Blowfish算法解密出现的解码失败问题)