999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

伏魔平天下——愷撒密碼

2018-07-12 05:09:38王麗麗
中國信息技術教育 2018年12期
關鍵詞:方法

王麗麗

● 情境導入

贏了守護使這一關,阿派終于進入了那一方神秘世界。一路上,他披荊斬棘、伏魔降妖平天下,并獲得了勝利的獎勵——魔法羊皮卷。展開卷宗,只有一行看不懂的咒語,內容是PQ ETQUU PQ ETQYP。阿派照著字母念了幾遍,都沒有任何動靜。忽然,他想到一種古老的加密方法——愷撒密碼。于是,他一遍又一遍地嘗試,終于發現若將所有字母都往前移2位,就可以形成一句有含義的話:NO CROSS NO CROWN(不經歷風雨,怎能見彩虹)。阿派大聲朗讀出破解的咒語,只見一道金光閃現。

這節課的設計靈感來源于愷撒密碼的故事。傳說,古羅馬皇帝愷撒在打仗時曾經使用“字母錯位”的方法來加密軍事情報。本課中,教師帶領學生理解這種古老而簡單的加密方法,并利用Python語言實現加密和解密。

● 愷撒密碼的加密和解密思想

在蘇托尼厄斯于公元二世紀寫的《愷撒傳》中,對愷撒密碼作了詳細描述,簡而言之,就是將真正的信件內容(明文)中的每一個字母用其后的第N個字母代替,轉換成一封密信(密文)。這樣,即便敵軍截住信件,也不知其意。據說,這種加密方法在當時的古羅馬頗為流行。這種將字母表中的字母移動一定位置而實現加密的方法,被稱為“愷撒移位密碼”,簡稱“愷撒密碼”。移動的位數N就是加密和解密的密鑰。

如圖1所示,前文中破解咒語的密鑰為2,也就是明文和密文表中的字母相錯兩位。A加密后所對應的字母就是后兩位的字母C,以此類推,且A~Z循環,因此,字母Z的加密字母為B,解碼的過程正好與之相反。

愷撒密碼的編碼方法相對簡單,密鑰也只有25種,只需逐個試驗,很容易破解,但這種加密、解密的思想影響深遠。現今的密碼術不斷發展,大致可分為兩種方法,即移位和替換,或者將兩者結合產生更復雜的方法,但萬變不離其宗,其核心還是算法和密鑰。

● 破解咒語

愷撒密碼的算法思想,前面已經解讀,此處不再贅述。但在Python中實現咒語的破解(解密),還需要了解字符在計算機中的表示方式。英文字母在計算機中通常采用ASCII碼表示,占一個字節。如圖2所示,密文中的字符P轉換為明文字符N的過程是這樣的:先利用ord()函數將ASCII字符P轉換為對應的ASCII數值80;再根據密鑰2進行倒推,計算出其明文的字符所對應的數值應為78;最后利用chr()函數將數值78轉換為對應的ASCII字符N。在這里,ord()和chr()這兩個函數的效果正好相反,結合兩者,可以實現字符的加密或解密。

利用Python語言實現破解咒語的具體過程如上表所示。想一想,如何允許用戶自行輸入咒語的文字信息,該如何修改程序?

isupper( )方法的作用是檢測字符串中所有的字母是否都為大寫,如果所有字符都是大寫,則返回True,否則返回False。例如,字符A的ASCII碼值是65,密鑰為2,因此在前移2位后,ASCII碼值變成了63,對應的字符是問號“?”,非大寫字母。此時,可在63的基礎上再向后移位26位,對應碼值為89(字符Y),即字符A對應的密文字符為Y。這樣,就形成了A~Z的循環。

● 加密咒語

本課中,阿派所破解的羊皮卷咒語是指定的密鑰2。加密的過程與解密相反,前移2位,變為后移2位,即-2。A~Z的循環處理,也是一樣,+26變為-26。此外,利用input()函數,允許用戶自行輸入咒語內容,具體的Python代碼如圖3所示。

upper( )方法的作用是將字符串中的字母全部轉換為大寫字母。這樣,如果用戶輸入的明文信息包含了大小寫字母,都會統一轉換為大寫字母,再進行加密。

● 自定義密鑰加密咒語

使用不同的自定義密鑰進行加密,可以提高信息傳遞過程中的安全性。如圖4所示,新增變量key,提示用戶選擇1~25之間的某一個整數作為密鑰,實現自定義密鑰的加密咒語。

如果想讓這段程序更加實用,還可以詢問用戶選擇加密還是解密,多一次判斷,使用戶在同一個程序內可以自由選擇加密或解密模式。

● 其他加密方法

由于愷撒密碼的秘鑰設置只有1至25,很容易被暴力破解,因此,人們在此基礎上進一步改善,主要方法是將密文的字母順序打亂。例如,圓盤密碼就是典型的利用單表置換的加密方法。在兩個同心圓盤上,外圈按照A~Z的字母序排列,內圈則按不同的順序填好字母或數字。轉動圓盤就可以找到字母的置換方法,很方便地進行信息的加密與解密。愷撒密碼與圓盤密碼本質都是一樣的,都屬于單表置換,即一個明文字母對應的密文字母是確定的,截獲者可以分析字母出現的頻率進行破譯。為了提高密碼的破譯難度,人們又發明了一種多表置換的密碼——維吉尼亞密碼。這種加密方法是根據密鑰決定用哪一行的密表來進行替換。因此,一個明文字母可以表示為多個密文字母,使得針對單表置換的用詞頻分析來破譯的方法失效,安全性更高一些。古代密碼的編碼方法還有很多。例如,滾桶密碼(又稱密碼棒),利用字條纏繞木棒的方式,實現字母的位移,收信人要使用相同直徑的木棒才能還原真實的信息。隨著社會發展,現代密碼引入了公鑰和私鑰的概念,也被稱為非對稱密碼學,與只用一個鑰匙的密鑰密碼學相對應。從愷撒密碼,到現代密碼學,你可以選擇一個有興趣的加密方法,了解更多加密原理,并利用Python來設計和編寫程序,試著模擬一次你的密信傳遞和破譯過程吧!

猜你喜歡
方法
中醫特有的急救方法
中老年保健(2021年9期)2021-08-24 03:52:04
高中數學教學改革的方法
河北畫報(2021年2期)2021-05-25 02:07:46
化學反應多變幻 “虛擬”方法幫大忙
變快的方法
兒童繪本(2020年5期)2020-04-07 17:46:30
學習方法
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
最有效的簡單方法
山東青年(2016年1期)2016-02-28 14:25:23
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
賺錢方法
捕魚
主站蜘蛛池模板: 久久久久久尹人网香蕉| 2024av在线无码中文最新| 一级不卡毛片| 亚洲区第一页| 国产精鲁鲁网在线视频| 麻豆AV网站免费进入| 激情爆乳一区二区| 永久天堂网Av| 18禁高潮出水呻吟娇喘蜜芽| 小13箩利洗澡无码视频免费网站| 欧洲一区二区三区无码| 在线无码九区| 亚洲无码视频一区二区三区 | 国产亚洲欧美在线专区| 一区二区三区四区精品视频| 77777亚洲午夜久久多人| 成人午夜免费观看| 中文字幕佐山爱一区二区免费| 国产精品毛片一区| 国产欧美自拍视频| 2020国产免费久久精品99| 久久综合丝袜长腿丝袜| 再看日本中文字幕在线观看| 日韩午夜片| 手机在线免费不卡一区二| 国产丝袜精品| 国产精品白浆在线播放| 免费在线观看av| 波多野吉衣一区二区三区av| 国产精品无码翘臀在线看纯欲| 日韩精品欧美国产在线| 欧美一级高清片欧美国产欧美| 国产欧美又粗又猛又爽老| 久久亚洲国产最新网站| 欧美日韩91| 幺女国产一级毛片| 老熟妇喷水一区二区三区| 99无码中文字幕视频| 99热国产这里只有精品无卡顿" | 不卡无码h在线观看| 亚洲国产成人精品无码区性色| 国产精品区视频中文字幕| 精品国产aⅴ一区二区三区| 亚洲欧美激情另类| 综合网天天| 成年女人18毛片毛片免费| 韩国自拍偷自拍亚洲精品| 青青草国产精品久久久久| 91精品啪在线观看国产60岁| 色首页AV在线| 黄色免费在线网址| 国产裸舞福利在线视频合集| 久久久久亚洲精品无码网站| 国产二级毛片| 怡春院欧美一区二区三区免费| 精品第一国产综合精品Aⅴ| 日韩精品一区二区深田咏美| 国产你懂得| 一本一本大道香蕉久在线播放| 美女毛片在线| 亚洲视屏在线观看| 精品超清无码视频在线观看| 欧美国产视频| 一本无码在线观看| 国产一区在线视频观看| 麻豆国产精品| 国产香蕉在线视频| 久久综合干| 99免费在线观看视频| 中文精品久久久久国产网址| 99精品影院| 激情综合五月网| AV不卡国产在线观看| 九色综合视频网| 欧美色综合网站| 67194亚洲无码| 激情网址在线观看| 人妻丰满熟妇啪啪| 亚洲精品国产乱码不卡| 亚洲国产天堂在线观看| 亚洲视频色图| 国产精品永久免费嫩草研究院|