Что такое эквивалентный метод C# для PHP "hash_hmac()"?
У меня есть пример кода на php.Мне нужно реализовать это в c#.Я попробовал следующий код для генерации подписи с помощью HMACSHA1, но я получаю разные значения в коде c# и php.
Пожалуйста, предложите мне точный метод хэширования в c#.
PHP-код:
<pre>$signature = $this->hexToBase64(hash_hmac("sha1", $string_to_sign, self::SECRET_KEY)); private function hexToBase64($hex){ $return = ""; foreach(str_split($hex, 2) as $pair){ $return .= chr(hexdec($pair)); } return base64_encode($return); }
Цитата:подпись: ZToYIGWks4dBLImEKWozVZTkxZc=
Что я уже пробовал:
код c# :
var key = Encoding.UTF8.GetBytes(apiKey); string signature ; using (var hmac = new HMACSHA1(key)) { var hash = hmac.ComputeHash(Encoding.UTF8.GetBytes(message)); signature = Convert.ToBase64String(hash); }
Цитата:подпись: wR/E2jbMo9Y87aqXllcZAynCyRE=