小编Him*_*man的帖子

相当于 php 中的 C# Encoding.UTF8.GetBytes

我有一个 C# 示例,并且必须用 PHP 编写相同的示例。

request = request.Replace(sign, string.Empty);

byte[] sha1Request;
using (var shaM = new SHA1Managed())
{
    sha1Request = shaM.ComputeHash(Encoding.UTF8.GetBytes(request));
}
log.InfoFormat($"request={request}. sha1Request={Convert.ToBase64String(sha1Request)}. Sign={sign}", request, Convert.ToBase64String(sha1Request));
var pubKey = (RSACryptoServiceProvider)FrontInterface.GetCertificate(checkFrontCertificateCod.Value).PublicKey.Key;
var isValid = pubKey.VerifyData(Encoding.UTF8.GetBytes(Convert.ToBase64String(sha1Request)), new SHA1CryptoServiceProvider(), Convert.FromBase64String(sign));
if (!isValid)
{
    throw new Exception("Wrong digital sign");
}
Run Code Online (Sandbox Code Playgroud)

所以,我可能不会在 php 中将字符串转换为字节,而sha1Request = shaM.ComputeHash(Encoding.UTF8.GetBytes(request)); 行将在 PHP 中:sha1Request =sha1(request, true); 我说得对吗?如果没有,请帮我将这一行转换为 PHP。多谢。

php c#

5
推荐指数
1
解决办法
5755
查看次数

标签 统计

c# ×1

php ×1