Kodowanie

ROT13 / Szyfr Cezara

Szyfr Cezara — cykliczne przesunięcie liter alfabetu łacińskiego. ROT13 to szczególny przypadek z przesunięciem o 13 (przycisk poniżej), symetryczny: encode i decode dają ten sam wynik. Inne znaki (cyfry, cyrylica, znaki interpunkcyjne) pozostają bez zmian.

A Caesar cipher cyclically shifts every letter of the alphabet by a fixed number of positions. ROT13 is the special case with a shift of 13, which makes the cipher self-inverting: apply ROT13 twice and you get the original text back.

How to use it

Common uses

Things to keep in mind

ROT13 is not encryption in any security sense — it's obfuscation, trivially broken by hand without any tool or key.

Since the Latin alphabet has 26 letters and 13 is exactly half of that, ROT13 is symmetric: the same operation encodes and decodes.

Artykuł o tym narzędziu: ROT13 i szyfr Cezara: proste podstawianie znaków

Najczęstsze pytania

Czy ROT13 zapewnia jakiekolwiek bezpieczeństwo?

Nie, to trywialne przesunięcie liter alfabetu, które można złamać bez klucza w kilka sekund. ROT13 służy wyłącznie do ukrywania spoilerów, żartów czy tekstu przed przypadkowym odczytaniem, a nie do faktycznej ochrony danych.

Dlaczego zakodowanie ROT13 dwa razy daje oryginalny tekst?

ROT13 przesuwa litery o 13 pozycji w 26-literowym alfabecie, czyli dokładnie o połowę. Zastosowanie go ponownie do już zakodowanego tekstu cofa przesunięcie i przywraca oryginał — encode i decode to w praktyce ta sama operacja.

Co dzieje się z cyframi, cyrylicą i znakami interpunkcyjnymi?

Szyfr Cezara działa tylko na literach alfabetu łacińskiego — cyfry, znaki cyrylicy, spacje i interpunkcja pozostają bez zmian, niezależnie od wybranego przesunięcia.

Czym ROT47 różni się od ROT13?

ROT47 działa w szerszym zakresie ASCII (33–126), więc dodatkowo przesuwa cyfry, interpunkcję i znaki specjalne, a nie tylko litery łacińskie, zachowując tę samą ideę samoodwracalnego przesunięcia.

Czy ROT13 można złamać bez narzędzia?

Tak, bardzo łatwo — wystarczy czytać tekst, w myślach przesuwając każdą literę o 13 pozycji, albo pamiętać, że A↔N, B↔O i tak przez cały alfabet. To nie jest ochrona, a jedynie lekkie zaciemnienie.

Artykuły: Kodowanie

Base64: po co jest kodowanie i jak działa

Jak Base64 zamienia dane binarne na tekst ASCII i kiedy naprawdę jest to potrzebne.

Base32: czym różni się od Base64 i kiedy jest wygodniejszy

Alfabet Base32 niewrażliwy na wielkość liter i sytuacje, w których jest wygodniejszy od Base64.

URL Encode/Decode: percent-encoding w linkach

Jak znaki specjalne w adresach i parametrach zamieniają się w sekwencje %XX.

HTML Entities: jak bezpiecznie wyświetlać znaki specjalne

Dlaczego znaki < > & trzeba escapować i jak to zapobiega uszkodzeniu znaczników.

JWT: budowa tokenu i co znaczy „dekodowanie" JWT

Header, payload i signature tokenu JWT oraz dlaczego dekodowanie to nie to samo co weryfikacja podpisu.

Unicode Escape: co oznaczają sekwencje \uXXXX

Skąd biorą się sekwencje takie jak \u0041 w JSON i ciągach JS oraz co oznaczają.

Punycode: jak umiędzynarodowione domeny działają w DNS

Jak domena z niełacińskimi znakami zamienia się w formę ASCII z prefiksem xn--.

Alfabet Morse'a: jak tekst zamienia się w kropki i kreski

Zasada kodowania liter jako kropek i kresek oraz gdzie alfabet Morse'a jest dziś stosowany.

Data URI: kiedy osadzać obrazy bezpośrednio w kodzie

Jak Data URI osadza zawartość pliku bezpośrednio w HTML lub CSS i kiedy się to opłaca.

Gzip + Base64: kompresja danych do przesyłania jako tekst

Dlaczego skompresowane dane binarne dodatkowo koduje się w Base64, zanim trafią do pola tekstowego.

XML Entities: escapowanie znaków w dokumentach XML

Pięć obowiązkowych encji XML, bez których dokument psuje się podczas parsowania.