honof的手机hon密码是多少

1685人阅读
Java(132)
openfire的用户名密码存在ofuser表中,虽然原表中存在两个字段plainPassword和encryptedPassword,但默认情况下,of只会保存加密后的密码,即encryptedPassword,而明码plainPassword是置空的。
那怎么通过encryptedPassword获得plainPassword。实际上,of的加密策略是双向加密的,知道密钥后是可以将密文转为明文的。那怎么解密哪。答案就是openfire通过org.jivesoftware.util.Blowfish.java类来实现的加解密。
在openfire的源代码中可以获取到org.jivesoftware.util.Blowfish.java,使用的是Blowfish的encryptString(String
password)和decryptString(String encryptedString)两个方法执行加解密。然后单这样是无法解密的,因为还需要一个密钥passwordKey,这密钥是通过new
Blowfish(String passwordKey)注入到类中。
passwordKey存在于openfire的数据库表ofproperty中,其中就有passwordKey的值,这是openfire安装时自动生成的。
注入密钥后,便可以进行加解密操作。具体代码如下:
Blowfish bf = new Blowfish(&r2m5aQ3d5py8Bo5&);
String encryptedString = bf.decrypt(&f90e8b46bec385e48fcabbdd425ee99e087dde8&);
System.out.println(encryptedString);//will
综上,即可。
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:536274次
积分:6794
积分:6794
排名:第3253名
原创:138篇
转载:115篇
评论:346条
(1)(2)(1)(1)(2)(1)(1)(1)(4)(11)(11)(12)(22)(4)(2)(1)(6)(7)(4)(6)(8)(5)(3)(4)(11)(14)(5)(1)(1)(2)(1)(2)(1)(2)(1)(2)(5)(4)(3)(3)(1)(4)(3)(5)(6)(6)(6)(8)(10)(3)(7)(1)(3)(5)(3)(1)(2)(1)

我要回帖

更多关于 honvve手机 的文章

 

随机推荐