Podpisz challenge (WebSocket API)

Ostatnia aktualizacja: 31 mar 2025

Żądania subskrypcji i anulowania subskrypcji prywatnych kanałów WebSocket wymagają podpisanego komunikatu challenge z użyciem api_secret użytkownika.

Challenge uzyskuje się, jak pokazano w sekcji WebSocket API Public (przy użyciu api_key).

Uwierzytelnione żądania muszą zawierać zarówno oryginalny komunikat challenge (original_challenge), jak i podpisany (signed_challenge) w formacie JSON.

Challenge

Challenge to ciąg znaków UUID.

Przykład c100b894-1729-464d-ace1-52dbce11db42 


Kroki do podpisania challenge są takie same jak kroki do wygenerowania uwierzytelnionego żądania REST
z wyjątkiem kroku 1, który teraz jest po prostu ciągiem znaków challenge:

  1. 1

    Zhaszuj challenge za pomocą algorytmu SHA-256

  2. 2

    Zdekoduj Base64 swój api_secret

  3. 3

    Użyj wyniku kroku 2 do zhaszowania wyniku kroku 1 za pomocą algorytmu HMAC-SHA-512

  4. 4

    Zakoduj Base64 wynik kroku 3

Wynik kroku 4 to podpisany challenge, który zostanie uwzględniony w żądaniu subskrypcji.

Poniższa tabela przedstawia oczekiwane wyniki z przykładowych danych wejściowych:

challenge

c100b894-1729-464d-ace1-52dbce11db42

api_secret

 7zxMEF5p/Z8l2p2U7Ghv6x14Af+Fx+92tPgUdVQ748FOIrEoT9bgT+bTRfXc5pz8na+hL/QdrCVG7bh9KpT0eMTm

podpisany wynik

4JEpF3ix66GA2B+ooK128Ift4XQVtc137N9yeg4Kqsn9PI0Kpzbysl9M1IeCEdjg0zl00wkVqcsnG4bm
nlMb3A==

Potrzebujesz więcej pomocy?