您好,登錄后才能下訂單哦!
這篇“Python怎么實(shí)現(xiàn)凱撒密碼”文章的知識(shí)點(diǎn)大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價(jià)值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來(lái)看看這篇“Python怎么實(shí)現(xiàn)凱撒密碼”文章吧。
愷撒密碼是古羅馬愷撒大帝用來(lái)對(duì)軍事情報(bào)進(jìn)行加密的算法,它采用了替換方法對(duì)信息中的每一個(gè)英文字符循環(huán)替換為字母表序列該字符后面第三個(gè)字符:
原文:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
密文:D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
原文字符P,其密文字符C滿足如下條件:
C = ( P + 3 ) mod 26
解密方法反之,滿足:
P = ( C – 3 ) mod 26
程序運(yùn)行環(huán)境是:pycharm2021
愷撒密碼的加密算法程序首先接收用戶輸入的文本
然后對(duì)字母a-z和字母A-Z按照密碼算法進(jìn)行轉(zhuǎn)換
# 愷撒密碼加密 def Caesar_PW_Encryption(): inputText = input("請(qǐng)輸入明文文本: ") for index in inputText: if "a" <= index <= "z": print(chr(ord("a") + (ord(index) - ord("a") + 3) % 26), end='') elif "A" <= index <= "Z": print(chr(ord("A") + (ord(index) - ord("A") + 3) % 26), end='') else: print(index, end='')
在主函數(shù)中調(diào)用這個(gè)Caesar_PW_Encryption愷撒密碼加密函數(shù),如下所示
if __name__ == '__main__': # 愷撒密碼加密 Caesar_PW_Encryption()
愷撒密碼的解密算法程序首先接收用戶輸入的加密文本
然后對(duì)字母a-z和字 母A-Z按照密 碼算法進(jìn)行反向轉(zhuǎn)換
# 愷撒密碼解密 def Ceasar_PW_Decryption(): inputText = input("請(qǐng)輸入加密后文本: ") for index in inputText: if "a" <= index <= "z": print(chr(ord("a") + (ord(index) - ord("a") - 3) % 26), end='') elif "A" <= index <= "Z": print(chr(ord("A") + (ord(index) - ord("A") - 3) % 26), end='') else: print(index, end='')
在主函數(shù)中調(diào)用這個(gè)Caesar_PW_Encryption愷撒密碼加密函數(shù),如下所示
if __name__ == '__main__': # 愷撒密碼加密 Caesar_PW_Encryption() # 愷撒密碼解密 Ceasar_PW_Decryption()
# 愷撒密碼加密 def Caesar_PW_Encryption(): inputText = input("請(qǐng)輸入明文文本: ") for index in inputText: if "a" <= index <= "z": print(chr(ord("a") + (ord(index) - ord("a") + 3) % 26), end='') elif "A" <= index <= "Z": print(chr(ord("A") + (ord(index) - ord("A") + 3) % 26), end='') else: print(index, end='') # 愷撒密碼解密 def Ceasar_PW_Decryption(): inputText = input("請(qǐng)輸入加密后文本: ") for index in inputText: if "a" <= index <= "z": print(chr(ord("a") + (ord(index) - ord("a") - 3) % 26), end='') elif "A" <= index <= "Z": print(chr(ord("A") + (ord(index) - ord("A") - 3) % 26), end='') else: print(index, end='') if __name__ == '__main__': # 愷撒密碼加密 Caesar_PW_Encryption() # 愷撒密碼解密 Ceasar_PW_Decryption()
以上就是關(guān)于“Python怎么實(shí)現(xiàn)凱撒密碼”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對(duì)大家有幫助,若想了解更多相關(guān)的知識(shí)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。