CQ-CSER

计算机爱好者

ROT13

Posted on | 三月 15, 2010 | No Comments

 

ROT13通过与其成对的13个字母一对一置换

简介

  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





  • Archives

  • SUNSHINE

  • About

    本博客采用创作共用版权协议,要求署名、非商业用途和保持一致. 转载本博客内容也遵循“署名-非商业用途-保持一致”的创作共用协议.

    订阅

    Search

    Admin