The ROT13 reference article from the English Wikipedia on 24-Jul-2004
(provided by Fixed Reference: snapshots of Wikipedia from wikipedia.org)

ROT13

Helping orphans the way you would do it
ROT13 (sometimes hyphenated ROT-13) is a system for obscuring text typically used in online forums as a means of hiding joke punchlines, movie and story spoilerss, and offensive expressionss from the casual glance.

Its use for this purpose originated in the net.jokes newsgroup in 1983, in an effort to provide a voluntary means to hide sexually offensive jokes. Previous attempts to categorize offensive jokes by putting them in different newsgroups had failed because site managers did not want to be seen as condoning such postings by creating a special place for them. Originally, the UNIX "tr" (transliterate) program was used to implement the scheme, but automatic deciphering was soon added to newsreading software. While there was some brief experimentation with ROT1, ROT13 became a standard because it is symmetric; that is, enciphering and deciphering are performed the same way (see involution).

Table of contents
1 Description
2 ROT13 as encryption
3 An example
4 ROT47
5 See also
6 External links

Description

The name "ROT13" stands for "rotate by 13 places", which is a concise description of the algorithm. To apply ROT13 to a piece of text, take every letter which is in the Latin alphabet and shift it by 13 places down the alphabet, wrapping back to the beginning if necessary: 'A' becomes 'N', 'B' becomes 'O', and so forth, down to 'Z' becoming 'M'. Numbers, symbols, and other characters are not changed. Because there are 26 letters in the Latin alphabet and 26 = 2 × 13, the ROT13 function is its own inverse: x = ROT13(ROT13(x)) for any text x (in mathematics, this is sometimes called an involution); in other words, two successive applications of ROT13 restore the original text

The transformation can be done using a lookup table, such as the following:

abcdefghijklmnopqrstuvwxyz
NOPQRSTUVWXYZABCDEFGHIJKLM
ROT13 lookup table

ROT13 as encryption

ROT13 is a type of historical encryption algorithm known as a Caesar cipher, though it is not intended to be used for secrecy. Instead, it makes sure that the viewer of a message must consciously choose to decipher it, which typically means invoking the relevant ROT13 command in his or her software. Rather than protecting the encrypted message from unauthorized readers, ROT13 safeguards readers from material they may not wish to inadvertantly read, such as spoilerss in book or movie reviews.

Because of its unsuitability for secrecy, ROT13 has become a catchphrase to refer to any weak encryption, for example: "56-bit DES is no better than ROT13 these days." The expression double ROT13 is usually only used sarcastically, because applying ROT13 to an already ROT13 encrypted text restores the original plaintext (as explained above). Saying "double ROT13" is really an intentionally obfuscated way of saying "no encryption and/or security at all". Thus the poisonously ironic "Sure, go ahead, it's perfectly safe to send your credit card number in email. Just make sure to encrypt it with double ROT13."

Similarly, "triple ROT13" (by analogy to Triple DES) is ROT13 performed three times--with exactly the same result as ROT13 performed just once. (Only slower.)

A few users on Slashdot have appended phrases such as "Encoded with ROT26 - circumvention will be prosecuted!" to their posts as a form of protest against the excesses of the anti-circumvention policies of the DMCA; the bitterly ironic jest refers to a number of situations in which corporations' interpretation of Title 1 of the DMCA is alleged to infringe upon the fair use rights of end users.

An example

For example, someone might wish to obscure the following text:

How can you tell an extrovert from an
introvert at NSA? In the elevators?
The extroverts look at the OTHER guy's shoes.

Transformed into ROT13 form, the text would become:

Ubj pna lbh gryy na rkgebireg sebz na
vagebireg ng AFN? Va gur ryringbef?
Gur rkgebiregf ybbx ng gur BGURE thl'f fubrf.

A second application of ROT13 would restore the original.

ROT47

ROT47 is a variant on ROT13 which, in addition to scrambling the basic letters, also treats numbers and many other characters. ROT13 covers the ASCII codes 65 to 90 and 97 to 122, namely, the upper and lower case letters. ROT47 uses 94 characters instead, from "!" (the exclamation mark, ASCII code 33) to "~" (the tilde, ASCII code 126), rotating them by an offset of 47. The use of a larger alphabet is intended to produce a more thorough obfuscation than that of ROT13.

The earlier example after transformation by ROT-47 is:

w@H J@F 42? E6== 2? 6IEC@G6CE 7C@> 2?
:?EC@G6CE 2E }$pn x? E96 6=6G2E@CDn
%96 6IEC@G6CED =@@< 2E E96 ~%wt# 8FJVD D9@6D]

As of 2004 ROT47 is supported in far fewer pieces of software.

See also

External links