密碼學(第一講)---密碼概念初步與凱撒密碼

密碼學使我頭好暈啊!??
來向大家介紹一下密碼學。

一.密碼學的由來

程序員不學密碼簡直白學了代碼。那麼密碼是啥呢?爲啥要學習密碼???
1.當A向B發郵件時,期間可能會有人竊聽到消息(C)。在這裏插入圖片描述
則我們要將其加密以至於即使竊聽也無大礙。在這裏插入圖片描述
在這裏插入圖片描述
正當的接受者把密文還原成密文叫“解密
其他的(即不正當的人)把密文還原成密文叫“密碼破譯“(cryptanalysis),也稱爲”密碼分析

加密的步驟,稱爲”加密算法
在這裏插入圖片描述

一.凱撒密碼

凱撒密碼(Caesar cipher )是由凱撒使用過的密碼。通過平移實現
a—D
b–E
c–F
d–G
e–H
f–I
以此類推
在這裏插入圖片描述
就是把字母往後推3個嘛!
然後我用Vbscript編了凱撒的加密文件:

plaintext = InputBox (“請輸入明文。”)
cipher = “”
For i = 1 To Len (plaintext)
letter = Mid (plaintext, i, 1)
cipher = cipher & Chr (Asc (letter) + 3)
Next
MsgBox cipher

運行效果如下:在這裏插入圖片描述
在這裏插入圖片描述

各位可以打開記事本,輸入這串代碼,然後把後綴名改成.vbs運行即可。
在這裏插入圖片描述
@思考:
1.你能嘗試用你自己的語言編凱撒密碼嗎?
2.嘗試解密一串密文,並編程。
3.以我的Vbscript爲例,編一段解密程序。
4.如果不知道密鑰該如何破譯??
5.如果將字母表中的26個字母,分別與26個字母一一對應,那又如何破譯??它的answer與第4問一樣嗎???在這裏插入圖片描述

@answer3

cipher = InputBox (“請輸入明文。”)
plaintext = “”
For i = 1 To Len (cipher)
letter = Mid (cipher, i, 1)
plaintext = plaintext & Chr(Asc (letter) - 3)
Next
MsgBox plaintext

在這裏插入圖片描述
今天講的內容較少,明天我們繼續講。
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章