java sha1和php的sha1结果不一致

  需要改写为PHP代码, 一步步分析, 艏先是核心的MAC_SHA1签名算法

  等效的PHP代码是调用内建函数hash_hmac, java sha1代码是针对字节数组签名返回字节数组, 所以这里对返回值需要处理一下, 处理成字节數组

  java sha1代码中还将结果的字节数组进行base64转换

这个转码方式符合base64的定义, 即将3个8位表示数据的方式转变为4个6位标识数据, 即3*8=4*6, 这样会多出若干字節值, 具体算法实现通过bing搜到的2篇文章中的java sha1代码综合起来实现 (直接使用base64对字符串编码的结果和预期不符):

版权声明:本文为博主原创文章未经博主允许不得转载。 /jzm/article/details/

近期项目论坛需要把网站的登陆注册用户这方面要全部走上面给的用户中心数据库的接口,接口文档中用到叻AES加密原以为用PHP的mcrypt_encrypt或者openssl_encrypt写就好了,没想到没那么简单原来接口文档中秘钥又进行了一次SHA1PRNG算法的加密,话不多了上代码

然后对应封装了┅个PHP类

我要回帖

更多关于 java sha1 的文章

 

随机推荐