Openfire用户密码加密方法 .

公司有项目,需要将Openfire和OA系统做集成,Openfire用户密码加密的问题拦倒了我,
必须搞清楚其加密方式才能解决的啊,OA中用户的密码是md5加密的。

刚开始构想是将工程中集成openfire.jar,然后使用其user下的加密方式,但不幸的是加入了openfire.jar包,我的Tomcat就老报错,再说加这个包估计太庞大了,没有必要。




再想




查证多方资料,知道Openfire是通过org.jivesoftware.util.Blowfish.java实现的加密。
在Openfire的源代码中可以获取到org.jivesoftware.util.Blowfish.java,翻翻源代码,
原来是使用Blowfish的encryptString(String password)和decryptString(String encryptedString)两个方法执行加解密。
可new Blowfish(String passwordKey)需要passwordKey,上哪里找?
原来在openfire的数据库中有表ofproperty,其中就有passwordKey的值,这是openfire安装时自动生成的。

此外,可以独立使用org.jivesoftware.util.Blowfish.java进行加解密操作。



在网上搜索了两天,才算将此问题圆满解决,感谢网络啊。





文章转自:http://www.haogongju.net/art/587181


文章转自:http://www.haogongju.net/art/587181




猜你喜欢

转载自vicvieky.iteye.com/blog/1886815