凱撒密碼(Caesar cipher) 詳解


------------恢復內容開始------------

最近訓練CTF的時候,發現密碼學這塊的知識不太系統,所以自己接下來會陸陸續續整理出來

就先從古典密碼中的凱撒密碼說起吧

凱撒密碼內容比較簡單,所以也注定了本文比較水😄

起源

所謂凱撒,便是你們所熟悉的那位征戰千里的老戰棍(不是《龍族》里的凱撒┗|`O′|┛ 嗷~~)

作為一名傑出的軍事領袖,凱撒深知指揮官對前方將領的命令對於一場戰爭的重要性,這些信息絕對不能讓敵方知道,於是他設計了一種對重要的軍事信息進行加密的方法,即使這些信息被截獲,敵方也不一定能看懂——這就是著名的凱撒密碼,也算是最早的密碼實例。

加密方式

只要將各個字母向后移動三位就好啦!注意:按字母表循環來看 比如:Z后一位是A

這樣明文就變成密文了!!


你們猜loryhbrx解密之后是什么?

知道的小伙伴可以留言鴨!!

變式衍生

凱撒密碼的移動位數可以自由定義,可以為正,也可以為負

當移動位數為13時就稱作ROT13(ROT13又可以衍生出其他的加密算法,以后會介紹到的)

以下是相關偏移量的稱呼:

  • 偏移量為10:Avocat(A→K)

  • 偏移量為-5:Cassis (K 6)

  • 偏移量為-6:Cassette (K 7)

安全問題

通常我們得到凱撒密碼的時候是無法得知位移量的,因此可以采取窮舉算法

只要列舉25次便可以從中發現玄機

但更多時候加密方式不會是簡單的位移,可能與其他加密方式組合,這樣破解難度將加大

最后貼張列舉的圖以便大家理解


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM