Ниже приведен рабочий пример генерации подписи:
public static string CreateSignature(string queryString, string secret)
{
byte[] keyBytes = Encoding.UTF8.GetBytes(secret);
byte[] queryStringBytes = Encoding.UTF8.GetBytes(queryString);
HMACSHA256 hmacsha256 = new HMACSHA256(keyBytes);
byte[] bytes = hmacsha256.ComputeHash(queryStringBytes);
return BitConverter.ToString(bytes).Replace("-", "").ToLower();
}
queryString
- это строка параметров, переданных в запросе, например, timestamp=1586620030079
secret
- ваш секрет API.
Важно отметить, что запрос завершается неудачно с ответом Bad Request
, когда вы go шаг за шагом отлаживаете, потому что отметка времени выходит за пределы окна recv.
Вы также можете найти этот SDK очень полезным, по крайней мере, в качестве примера рабочего кода: https://github.com/nathan-alexander/csharp-binance-api