亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python密碼學(xué)Caesar?Cipher凱撒密碼算法教程

 更新時(shí)間:2022年05月23日 16:20:03   作者:菜鳥(niǎo)教程  
這篇文章主要為大家介紹了Python密碼學(xué)Caesar?Cipher凱撒密碼算法教程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

在最后一章中,我們處理了反向密碼.本章詳細(xì)討論了凱撒密碼.

凱撒密碼算法

凱撒密碼的算法具有以下特征;

  • Caesar Cipher Technique是一種簡(jiǎn)單易用的加密技術(shù)方法.
  • 這是一種簡(jiǎn)單的替換密碼類型.
  • 每個(gè)純文本字母都被一個(gè)字母替換,字母的位數(shù)固定不變./p>

下圖描繪了Caesar密碼算法實(shí)現(xiàn)的工作原理 :

Caesar密碼算法的程序?qū)崿F(xiàn)如下 :

def?encrypt(text,s):
result?=?""
???#?transverse?the?plain?text
???for?i?in?range(len(text)):
??????char?=?text[i]
??????#?Encrypt?uppercase?characters?in?plain?text
??????if?(char.isupper()):
?????????result?+=?chr((ord(char)?+?s-65)?%?26?+?65)
??????#?Encrypt?lowercase?characters?in?plain?text
??????else:
?????????result?+=?chr((ord(char)?+?s?-?97)?%?26?+?97)
??????return?result
#check?the?above?function
text?=?"CEASER?CIPHER?DEMO"
s?=?4
print?"Plain?Text?:?"?+?text
print?"Shift?pattern?:?"?+?str(s)
print?"Cipher:?"?+?encrypt(text,s)

輸出

你可以看到凱撒密碼,即輸出如下圖所示 :

說(shuō)明

  • 一次遍歷一個(gè)純文本字符.
  • 對(duì)于給定純文本中的每個(gè)字符,根據(jù)規(guī)則轉(zhuǎn)換給定字符,具體取決于加密過(guò)程文本的說(shuō)明和解密.
  • 遵循這些步驟后,會(huì)生成一個(gè)新的字符串,稱為密文.

凱撒密碼算法的黑客攻擊

密碼文本可以被各種可能性攻擊.其中一種可能性是暴力技術(shù),其中涉及嘗試每個(gè)可能的解密密鑰.這種技術(shù)不需要太多努力,對(duì)于黑客來(lái)說(shuō)相對(duì)簡(jiǎn)單.

黑客攻擊凱撒密碼算法的程序?qū)崿F(xiàn)如下

message?=?'GIEWIVrGMTLIVrHIQS'?#encrypted?message
LETTERS?=?'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
for?key?in?range(len(LETTERS)):
???translated?=?''
???for?symbol?in?message:
??????if?symbol?in?LETTERS:
?????????num?=?LETTERS.find(symbol)
?????????num?=?num?-?key
?????????if?num?<?0:
????????????num?=?num?+?len(LETTERS)
?????????translated?=?translated?+?LETTERS[num]
??????else:
?????????translated?=?translated?+?symbol
print('Hacking?key?#%s:?%s'?%?(key,?translated))

考慮上一個(gè)示例中加密的密文.然后,使用密鑰和使用暴力攻擊技術(shù)的可能的黑客攻擊方法的輸出如下 :

以上就是Python密碼學(xué)Caesar Cipher凱撒密碼算法教程的詳細(xì)內(nèi)容,更多關(guān)于Python密碼學(xué)Caesar Cipher的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評(píng)論