1 凯撒密码加密
凯撒密码(英语:Caesar cipher),或称凯撒加密、凯撒变换、变换加密,是一种最简单且最广为人知的加密技术。
凯撒密码是一种替换加密技术,明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文。
例如,当偏移量是 3 的时候,所有的字母 A 将被替换成 D;B 变成E,以此类推。这个加密方法是以罗马共和时期凯撒的名字命名的,据称当年凯撒曾用此方法与其将军们进行联系。
strings.Map
明文字母表:ABCDEFGHIJKLMNOPQRSTUVWXYZ
密文字母表:DEFGHIJKLMNOPQRSTUVWXYZABC
设计思想
- 设置明文和移动步长(秘文)
- 将清晰的文本转换为小写,准备清晰的文本字节切片和密文切片
- 每个明文字符根据位移的步长旋转并存储在密文片中
- 返回密文
2 Go实现
exxegoexsrgi
通过移动字母,我们可以对消息进行编码。这阻止了随意的窥探。
strings.Map
2.1 导入包
2.2 编写 caesar 方法
caesarEn()
这会接收一个字符串并返回一个修改过的字符串。
它会移动字符,然后将字符移动到有效范围。
3 凯撒密码解密
思想:
- 设置密文和位移步骤
- 准备密文字符切片和明文字符切片
- 每个密文的字符根据位移步长旋转,并存储在明文切片中
- 返回明文
Go 凯撒解密代码:
4 其他实现
5 测试
运行该程序:
test
lwkl test
uftu test
exxegoexsrgi attackatonce