我有一个.sh文件,它生成一个openssl sha256密钥
$(echo -n ${DATA} | openssl sha256 -binary | base64)
并且需要生成相同的密钥才能将其与在我的php文件中使用sha256进行比较,旧的是sha1。 这是我的php代码,现在可以输出良好的sha1字符串。
$params['Code'] = base64_encode(sha1($params['Product'] . $params['Model'] . $params['Number'],true));
我将sha1更改为sha256,并且出现内部服务器错误。
答案 0 :(得分:1)
您似乎想使用它:
$data = $params['Product'] . $params['Model'] . $params['Number'];
$params['Code'] = base64_encode(hash('sha256', $data, true));
但是考虑到Magnus Eriksson的第一条评论,我仍然不明白为什么很难做到这一点。
请注意,我们无法验证这将产生与您期望的相同的输出。