ROT13(回转13位)是一种简易的替换式密码算法。它是一种在英文网络论坛用做隐藏八卦、妙句、谜题解答以及某些脏话的工具,目的是逃过版主或管理员的匆匆一瞥。ROT13 也是过去在古罗马开发的凯撒密码的一种变体。ROT13是它自身的逆反,即:要还原成原文只要使用同一算法便可得,故一样的操做可用于加密与解密。该算法并无提供真正密码学上的保全,故它不该该被用于须要保全的用途上。它经常被看成弱加密示例的典型。python
应用ROT13到一段文字上仅仅只须要检查字母顺序并取代它在13位以后的对应字母,有须要超过期则从新绕回26英文字母开头便可。A换成N、B换成O、依此类推到M换成Z,而后串行反转:N换成A、O换成B、最后Z换成M。只有这些出如今英文字母里的字符受影响;数字、符号、空白字符以及全部其余字符都不变。替换后的字母大小写保持不变。算法
1.密文 rot13在线解密网络
https://www.ctftools.com/down/
http://www.mxcz.net/tools/rot13.aspx工具
利用python编写的加解密脚本:加密
#coding:utf-8 import string def decoder(crypt_str,shift): crypt_list = list(crypt_str) plain_str = "" num = int(shift) for ch in crypt_list: ch = ord(ch) if ord('a') <= ch and ch <= ord('z'): ch = ch + num if ch > ord('z'): ch -= 26 if ord('A') <= ch and ch <= ord('Z'): ch = ch +num if ch > ord('Z'): ch -= 26 a=chr(ch) plain_str += a print(plain_str) crypt_str = raw_input("Crypto_text:") print "!------decode------!" shift=13 decoder(crypt_str,shift)