Salting和Hash密码、Java和PHP兼容性
我正在尝试制作一款与网站内容相结合的游戏,用户帐户将在网站上共享多个版本的客户端 问题是密码需要在Salting和Hash密码、Java和PHP兼容性,java,php,hash,salt,pbkdf2,Java,Php,Hash,Salt,Pbkdf2,我正在尝试制作一款与网站内容相结合的游戏,用户帐户将在网站上共享多个版本的客户端 问题是密码需要在PHP中进行盐散列,我需要能够通过Java进行验证,并且我找不到任何关于安全加密的信息(如PBKDF2),并确保PHP和Java之间的生成是相同的 我已经看到了一些关于在PHP上使用PBKDF2的信息,或者Hmac与SHA-1一起使用的信息,但是没有像Java的“PBKDF2与hmacsha1的名称中建议的那样将它们组合起来。我现在掌握了PHP或Java的散列 如何设置方法,以便能够在PHP上生成s
PHP
中进行盐散列,我需要能够通过Java
进行验证,并且我找不到任何关于安全加密的信息(如PBKDF2
),并确保PHP
和Java
之间的生成是相同的
我已经看到了一些关于在PHP
上使用PBKDF2
的信息,或者Hmac
与SHA-1
一起使用的信息,但是没有像Java的“PBKDF2与hmacsha1
的名称中建议的那样将它们组合起来。我现在掌握了PHP
或Java
的散列
如何设置方法,以便能够在PHP
上生成salt和hash,将其存储在MySQL
中,并能够通过Java的hash函数验证密码
如果可能的话,我更愿意坚持使用PBKDF2
(除非有人能推荐一种更适合交叉兼容性的等效产品)
顺便说一句,我不太确定这是否应该在这里,还是在加密服务器上。我想,既然我问的是特定的语言,我就先试试这里。所以,事实证明它并不像我想象的那么复杂。我发现说PHP
相当于Java
的PBKDF2WithHmacSha1
是hash_pbkdf2
函数和sha1
算法。从这里开始,只需将salt
和hash
从PHP
传输到Java
。结果是这样的:
1) PHP
:对于这一个,我只是复制了这个家伙的pbkdf2
函数,并像他那样生成了salt和hash
2) Java
:所需要做的只是字节码转换中的一点变化,它工作得很好
在那之后,我所需要做的就是修改Java
代码以适应我的服务器/客户端设置(包括二次会话散列),并解决更多salt
和hash
编码和解码周围的一些错误,通过网络传输,它现在工作得很好
关于另一个问题,有一个稍微详细一点的答案。所以,事实证明它并不像我想象的那么复杂。我发现说PHP
相当于Java
的PBKDF2WithHmacSha1
是hash_pbkdf2
函数和sha1
算法。从这里开始,只需将salt
和hash
从PHP
传输到Java
。结果是这样的:
1) PHP
:对于这一个,我只是复制了这个家伙的pbkdf2
函数,并像他那样生成了salt和hash
2) Java
:所需要做的只是字节码转换中的一点变化,它工作得很好
在那之后,我所需要做的就是修改Java
代码以适应我的服务器/客户端设置(包括二次会话散列),并解决更多salt
和hash
编码和解码周围的一些错误,通过网络传输,它现在工作得很好
另一个问题有一个更详细的答案。
试着考虑使用预先建立的用户和密码管理。它基于OAuth2和OpenID Connect等标准,密码重置、用户注册和社交登录等都是免费的。它包括用于Java和JavaScript的连接器。显然也是可用的。
尝试考虑使用预先建立的用户和密码管理。它基于OAuth2和OpenID Connect等标准,密码重置、用户注册和社交登录等都是免费的。它包括用于Java和JavaScript的连接器。显然也有