Przejdź do treści
100% lokalnie

Generator losowych bajtów

Generuj kryptograficznie bezpieczne losowe bajty jako hex, Base64 lub tablicę bajtów.

Wynik

Generator losowych bajtów

Generuj kryptograficznie bezpieczne losowe bajty i zobacz je w kodowaniu, którego potrzebujesz. To odpowiednik w przeglądarce polecenia openssl rand -hex 32 lub openssl rand -base64 32: wybierz liczbę bajtów, format, a wynik pojawi się od razu. Najczęściej przydaje się do kluczy API, sekretów sesji, kluczy szyfrujących, soli, nonce, tokenów CSRF i danych testowych.

Wybierz hex zapisany małymi lub wielkimi literami, standardowy Base64, bezpieczny Base64url bez dopełnienia do adresów URL, dziesiętną tablicę bajtów, np. [12, 255, 7], albo tablicę w postaci 0x, którą wkleisz prosto do kodu w C, Go, Rust lub Javie. Długość liczy się w bajtach, a nie w znakach, więc wynik hex ma zawsze dwa razy tyle znaków co bajtów, a 32 bajty dają 256 bitów entropii. Ustaw, ile wartości wygenerować naraz, dodaj prefiks, np. sk_, do każdej linii albo podziel hex na grupy oddzielone myślnikiem, żeby długie klucze łatwiej się czytało i porównywało.

Bajty pochodzą z Web Crypto API przez crypto.getRandomValues, czyli z tego samego źródła systemu operacyjnego, którego przeglądarki używają w TLS, nigdy z Math.random. Jedna wartość może mieć do 1024 bajtów, a jedno uruchomienie utworzy najwyżej 1000 wartości. Podsumowanie pod wynikiem pokazuje liczbę bajtów, bity entropii, długość wyniku i odpowiadające polecenie openssl dla wybranej długości i formatu.

Wszystko działa lokalnie w przeglądarce. Bajty powstają na twoim urządzeniu, nie są wysyłane na serwer i nigdzie nie są zapisywane, więc sekrety, które utworzysz, zostają przy tobie. Wynik możesz skopiować, pobrać jako plik .txt albo przesłać do innego narzędzia.

Częste pytania

Czym to się różni od generatora losowych ciągów?
Narzędzie do losowych ciągów wybiera znaki z zestawu i liczy znaki. To narzędzie liczy bajty i dopiero potem je koduje, więc długość wyniku hex to zawsze dwukrotność liczby bajtów, tak jak w openssl rand.
Ile bajtów potrzebuję na tajny klucz?
Do większości kluczy API i sekretów sesji wystarczy 32 bajty (256 bitów). Jako minimum dla tokenów użyj 16 bajtów (128 bitów), a 64 bajty dla kluczy, które muszą przetrwać długotrwałe ataki.
Jaki format wybrać?
Hex jest najbezpieczniejszy w plikach konfiguracyjnych i powłoce. Base64 jest krótszy, a Base64url użyj w adresach URL, sekretach JWT i nazwach plików, bo nie zawiera znaków plus, ukośnika ani dopełnienia.
Czy bajty są naprawdę losowe i czy gdzieś są wysyłane?
Pochodzą z crypto.getRandomValues, bezpiecznego generatora liczb losowych wbudowanego w przeglądarkę, i powstają na twoim urządzeniu. Nic nie jest wysyłane na serwer ani zapisywane, więc twoje sekrety zostają lokalnie.