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)