首先是java开拓者

将密钥传入之后,会调用 SecureRandom.getInstance('SHA1PRNG'),如果其它措辞开拓者对接的时候,给个16的密钥,结果加密结果是不一样的,这时候对付php开拓者该当要这么编写 》》

对付key,须要 substr(openssl_digest(openssl_digest($key,'sha1',true),'sha1',true),0,16), 这样出来的key才能与java的相通

php密钥生成java aes128cbc密钥加SHA1PRNG加密phpu0026nodejs若何生成一样密钥 Node.js

而对付 nodejs 开拓者来说》》

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

希望这篇文章对目前主流措辞开拓者都有所帮助