Generator HMAC (SHA-256, SHA-512)
Prywatne z założenia — działa w całości w Państwa przeglądarce
Generuj podpisy HMAC-SHA256 (lub SHA-1, SHA-512) z wiadomości i klucza tajnego w przeglądarce. Toova to właściwe narzędzie do podpisywania ładunków webhooków, żądań API i każdego przepływu, w którym dwie strony dzielą sekret i muszą zweryfikować autentyczność.
Do czego służy HMAC
HMAC zamienia dzielony sekret i wiadomość w podpis o stałej długości. Odbiorca, który także zna sekret, może przeliczyć HMAC i porównać go bajt po bajcie — jeśli podpisy się zgadzają, wiadomość jest autentyczna i nienaruszona. Stripe, GitHub, Slack i prawie każdy system webhooków używają HMAC-SHA256 do podpisywania ładunków, aby odbiorca mógł zaufać źródłu.
Opcje algorytmu i kodowania
Toova wspiera HMAC-SHA256, HMAC-SHA1 i HMAC-SHA512. SHA-256 to nowoczesny domyślny wybór. Wybierz algorytm pasujący do dokumentacji integrowanej usługi. Wynik to domyślnie hex, z wariantami Base64 i Base64-URL dostępnymi do wyboru — większość dostawców webhooków oczekuje konkretnego formatu, więc sprawdź ich dokumentację przed przełączeniem opcji.
Podpisywanie tylko lokalnie
Podpis jest obliczany całkowicie w przeglądarce. Twoja wiadomość i klucz tajny nigdy nie opuszczają strony. Ma to znaczenie, ponieważ sekret to to, co pozwala każdemu sfałszować prawidłowy podpis — wyciek do formularza strony trzeciej zagroziłby systemowi. Toova jest bezpieczny do debugowania produkcyjnych webhooków, walidacji podpisów i eksplorowania integracji API.
Najczęściej zadawane pytania
- Jaka jest różnica między HMAC a zwykłym skrótem?
- Zwykły skrót jest deterministyczny dla dowolnego wejścia — każdy może go obliczyć. HMAC miesza klucz tajny, więc tylko strony posiadające klucz mogą wytworzyć pasujący podpis. To sprawia, że HMAC nadaje się do uwierzytelnienia, podczas gdy zwykły skrót jest dobry tylko do integralności.
- Który algorytm wybrać?
- Używaj HMAC-SHA256, chyba że integrowana usługa wyraźnie wymaga czegoś innego. SHA-1 jest nadal częsty w starszych systemach, ale nie powinien być używany w nowych projektach. SHA-512 to przesada dla większości zastosowań, ale nieco bardziej konserwatywny wybór.
- Czy klucz powinien być łańcuchem czy bajtami?
- HMAC przyjmuje sekwencję bajtów. Toova traktuje klucz jako tekst UTF-8 domyślnie, co odpowiada temu, co robi większość API. Jeśli specyfikacja mówi "sekret zakodowany szesnastkowo", przełącz opcję kodowania klucza, aby bajty pasowały do oczekiwań usługi.
- Czy mój sekret jest wysyłany na serwer?
- Nie. Podpisywanie odbywa się całkowicie w przeglądarce. Twój sekret i wiadomość nigdy nie opuszczają urządzenia, a zakładka Network pozostanie pusta podczas podpisywania.
- Dlaczego mój podpis nie pasuje do oczekiwań usługi?
- Najczęściej: niezgodność kodowania (hex vs Base64), końcowy znak nowej linii w ładunku lub niewłaściwy algorytm. Sprawdź dokładnie, czy wszystkie trzy zgadzają się z dokumentacją usługi.