ROT13
Posted on | 三月 15, 2010 | No Comments
简介
ROT13(回转13位,rotate by 13 places,有时中间加了个减号称作ROT-13)是一种简易的置换暗码。它是一种在英文网络论坛用作隐藏八卦(spoiler)、妙句、谜题解答以及某些脏话的工具,目的是逃过版主或管理员的匆匆一瞥。ROT13被描述成“杂志字谜上下颠倒解答的Usenet对等体”(Usenet equivalent of a magazine printing the answer to a quiz upside down.) ROT13 也是过去在古罗马开发的凯撒加密的一种变体。
ROT13是它自己本身的逆反;也就是说,要还原ROT13,套用加密同样的算法即可得,故同样的操作可用再加密与解密。该算法并没有提供真正的密码学上的保全,故它不应该被套用在需要保全的用途上。它常常被当作弱加密示例的典型。ROT13激励了广泛的在线书信撰写与字母游戏,且它常于新闻组对话中被提及。
[编辑本段]
套用ROT13到一段文本上仅仅只需要检查字符字母顺序并取代它在13位之后的对应字母,有需要超过时则重新绕回26英文本母开头即可[2]。 A换成N、B换成O、依此类推到M换成Z,然后序列反转:N换成A、O换成B、最后Z换成M。只有这些出现在英文本母里头的字符受影响;数字、符号、空白字符以及所有其他字符都不变。因为只有在英文本母表里头只有26个,并且26 = 2 × 13,ROT13函数是它自己的逆反:
对任何字符 x: ROT13(ROT13(x)) = ROT26(x) = x。
换句话说,两个连续的ROT13应用函数会回撤消始文本(在数学上,这有时称之为对合(involution);在密码学上,这叫做对等加密(reciprocal cipher))。
转换可以利用查找表完成,如下例所示:
ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz
NOPQRSTUVWXYZABCDEFGHIJKLM nopqrstuvwxyzabcdefghijklm
例如,下面的英文笑话,精华句为ROT13所隐匿:
How can you tell an extrovert from an
introvert at NSA? Va gur ryringbef,
gur rkgebireg ybbxf ng gur BGURE thl’f fubrf.
通过ROT13表格转换整片文本,该笑话的解答揭露如下:
Ubj pna lbh gryy na rkgebireg sebz na
vagebireg ng AFN? In the elevators,
the extrovert looks at the OTHER guy’s shoes.
第二次ROT13函数将转回原始文本。
评论|Comments
留言|Leave a Reply

![如果您自认为是一位忠实的Silverlight-Fans,那么请将此标志放到您的博客中成为一名真正的[银光使者]](http://images.cnblogs.com/cnblogs_com/alamiye010/Silverlighter1.jpg)