UltKit

Narzędzia dla programistów

Osiem codziennych narzędzi do pracy nad frontendem i backendem: formatowanie i walidacja JSON, kodowanie i dekodowanie Base64, adresów URL i encji HTML, generowanie UUID, obliczanie skrótów (hash), odczyt tokenów JWT i testowanie wyrażeń regularnych. Działają na wbudowanych API przeglądarki, więc tokeny i dane nigdy nie opuszczają Państwa komputera.

Wybierz narzędzie

Jeden ciąg, pięć kodowań

Tekst „Café & crème?” przepuszczony przez każde narzędzie podczas budowania tej strony. Kodowania można odwrócić; skrótów nie.

MetodaWynikDługośćOdwracalne
Base64Q2Fmw6kgJiBjcsOobWU/20Tak
Kodowanie URL (encodeURIComponent)Caf%C3%A9%20%26%20cr%C3%A8me%3F31Tak
Encje HTML (nazwane)Café & crème?31Tak
Skrót MD5c0fdf467ecd73617537f508352d98c1932Nie (jednokierunkowy)
Skrót SHA-2565cac0437a796074c1d26e85fa57bc828ec3e4083a790da8b8d082a8de353132064Nie (jednokierunkowy)

Dlaczego ważne jest, że działają lokalnie

Dane wejściowe narzędzi dla programistów to często najbardziej wrażliwe ciągi znaków, z jakimi pracujesz: tokeny dostępu, odpowiedzi API z danymi klientów, konfiguracje z wewnętrznymi nazwami hostów. Wklejenie ich na stronę, która wysyła je na serwer, tworzy kopię, nad którą nie masz kontroli. Każde narzędzie tutaj korzysta wyłącznie z platformy webowej: JSON.parse i JSON.stringify, TextEncoder i atob dla Base64, encodeURIComponent, crypto.randomUUID, funkcji digest z Web Crypto oraz silnika wyrażeń regularnych JavaScript. Możesz wczytać stronę, odłączyć się od sieci i pracować dalej.

Ponieważ silnik jest silnikiem Twojej przeglądarki, wyniki odpowiadają temu, co zrobi Twój kod front-endowy. Wyrażenie regularne, które działa tutaj, zadziała tak samo w Twoim JavaScripcie, a dokument JSON zaakceptowany przez formater zaakceptuje też JSON.parse.

Kodowanie, escapowanie i haszowanie to różne rzeczy

Kodowanie zmienia sposób zapisu bajtów, aby przetrwały przesłanie kanałem: Base64 (RFC 4648) zamienia dowolne bajty w 64 bezpieczne znaki ASCII na potrzeby poczty i adresów data URL, a kodowanie procentowe (RFC 3986) czyni tekst bezpiecznym w adresie URL. Escapowanie za pomocą encji HTML powstrzymuje znaki takie jak < i & przed odczytaniem ich jako znaczników. Wszystkie trzy metody każdy może odwrócić i nie zapewniają żadnej tajności.

Haszowanie jest jednokierunkowe: SHA-256 zamienia dowolne dane w stały 256-bitowy odcisk, którego nie da się cofnąć do danych wejściowych. Hasze służą do weryfikacji pobranych plików i wykrywania zmian, ale zwykłe szybkie hasze nie nadają się do przechowywania haseł; do tego użyj wolnej funkcji, takiej jak bcrypt, scrypt lub Argon2. Wreszcie JWT w typowej podpisanej postaci jest zakodowany, a nie zaszyfrowany, dlatego dekoder może pokazać jego zawartość bez żadnego klucza.

Gdy potrzebny jest plik, a nie fragment kodu

Te narzędzia działają na wklejanym tekście. Aby zamienić cały eksport JSON na arkusz, użyj JSON do CSV; do konwersji między plikami JSON, XML, YAML i CSV służy konwerter danych.

Powiązane konwertery:Konwerter danychJSON na CSV

Najczęściej zadawane pytania

Czy te narzędzia są bezpieczne dla produkcyjnych sekretów?
Nigdy nie przesyłają danych wejściowych, ale najbezpieczniej i tak używać tokenów testowych oraz zanonimizowanych danych, gdy to możliwe. Wszystko, co widać na ekranie, może trafić do zrzutów ekranu lub udostępniania ekranu.
Które przeglądarki są obsługiwane?
Aktualne wersje Chrome, Edge, Firefox i Safari. crypto.randomUUID i Web Crypto API wymagają bezpiecznej strony (HTTPS), którą UltKit zawsze udostępnia.
Czy Base64 to forma szyfrowania?
Nie. Base64 to odwracalne kodowanie o publicznym alfabecie; każdy może je natychmiast zdekodować. Sprawia jedynie, że dane binarne można bezpiecznie przesyłać jako tekst.
Dlaczego wynik różni się od narzędzia wiersza poleceń?
Zwykle przez znaki końca linii lub kodowanie znaków. Narzędzia kodują tekst jako UTF-8 i nie dodają końcowego znaku nowej linii, a echo w powłoce dodaje go, chyba że użyjesz echo -n.
Czy narzędzia dla programistów zapisują historię?
Nie. Nic nie jest zapisywane między wizytami; zamknięcie karty usuwa wprowadzone dane. Aby zachować wyniki, użyj przycisków kopiowania lub pobierania.