您的位置 首页 php

java aes-128-cbc密钥加SHA1PRNG加密,php&nodejs如何生成一样密钥

本人从毕业开始到现在8年时间,服务了三家公司,第一家1年,第二家4年,第三家创业,现在是第四家,在服务的三家公司里学习了java php nodejs ,对于对接不同开发语言的加密有挺深的了解,今天主要说明下aes-128-cbc中加密,java开发者习惯在key中添加sha1prng加密,上代码

首先是java开发者

将密钥传入之后,会调用 SecureRandom.getInstance(‘SHA1PRNG’),如果其它语言开发者对接的时候,给个16的密钥,结果加密结果是不一样的,这时候对于php开发者应该要这么编写 》》

对于key,需要 substr(openssl_digest(openssl_digest($key,’sha1′,true),’sha1′,true),0,16), 这样出来的key才能与java的相通

而对于 nodejs 开发者来说》》

Buffer.from(crypto.createHash(‘sha1’).update(crypto.createHash(‘sha1’).update(key).digest(‘buffer’)).digetst(‘hex’).substring(0,32),’hex’); 之后用这个生成的key加密出来的值与java就一样的。

希望这篇文章对目前主流语言开发者都有所帮助

文章来源:智云一二三科技

文章标题:java aes-128-cbc密钥加SHA1PRNG加密,php&nodejs如何生成一样密钥

文章地址:https://www.zhihuclub.com/149867.shtml

关于作者: 智云科技

热门文章

网站地图