ROT47
Przejdź do nawigacji
Przejdź do wyszukiwania
| znak | rot47 | znak | rot47 |
|---|---|---|---|
| ! | P | " | Q |
| # | R | $ | S |
| % | T | & | U |
| ' | V | ( | W |
| ) | X | * | Y |
| + | Z | , | [ |
| - | \ | . | ] |
| / | ^ | 0 | _ |
| 1 | ` | 2 | a |
| 3 | b | 4 | c |
| 5 | d | 6 | e |
| 7 | f | 8 | g |
| 9 | h | : | i |
| ; | j | < | k |
| = | l | > | m |
| ? | n | @ | o |
| A | p | B | q |
| C | r | D | s |
| E | t | F | u |
| G | v | H | w |
| I | x | J | y |
| K | z | L | { |
| M | | | N | } |
| O | ~ | P | ! |
| Q | " | R | # |
| S | $ | T | % |
| U | & | V | ' |
| W | ( | X | ) |
| Y | * | Z | + |
| [ | , | \ | - |
| ] | . | ^ | / |
| _ | 0 | ` | 1 |
| a | 2 | b | 3 |
| c | 4 | d | 5 |
| e | 6 | f | 7 |
| g | 8 | h | 9 |
| i | : | j | ; |
| k | < | l | = |
| m | > | n | ? |
| o | @ | p | A |
| q | B | r | C |
| s | D | t | E |
| u | F | v | G |
| w | H | x | I |
| y | J | z | K |
| { | L | | | M |
| } | N | ~ | O |
ROT47 – kodowanie przesuwające, zamieniające każdy znak ASCII z przedziału 33-126 na znak znajdujący się 47 pozycji dalej, ale nie dalej niż do 126 pozycji. Podobnie jak ROT13 jest on samoodwracalny, tzn:
Implementacja
Kod przekształcenia rot47 napisany w Perlu:
perl -pe 'tr/\x21-\x7e/\x50-\x7e\x21-\x4f/'
Kod rot47 w PHP:
strtr($str, '!"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~',
'PQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~!"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNO');
oraz w systemach uniksowych:
tr '\!-~' 'P-~\!-O'
Przykład
Przykładowy tekst:
- To zdanie jest zakodowane.
po zakodowaniu ROT47 wygląda następująco:
- %@ K52?:6 ;6DE K2<@5@H2?6]