凯撒密码(Caesar Shifts, Simple Shift)
2013-09-23 12:01
176 查看
也称凯撒移位,是最简单的加密方法之一,相传是古罗马恺撒大帝用来保护重要军情的加密系统,它是一种替代密码。
加密公式:密文 = (明文 + 位移数) Mod 26
解密公式:明文 = (密文 - 位移数) Mod 26
以《数字城堡》中的一组密码为例:
HL FKZC VD LDS
只需把每个字母都按字母表中的顺序依次后移一个字母即可——A变成B,B就成了C,依此类推。因此明文为:
IM GLAD WE MET
英文字母的移位以移25位为一个循环,移26位等于没有移位。所以可以用穷举法列出所有可能的组合。
例如:phhw ph diwhu wkh wrjd sduwb
利用电脑可以方便地列出所有组合,然后从中选出有意义的话:
qiix qi ejxiv xli xske tevxc
rjjy rj fkyjw ymj ytlf ufwyd
skkz sk glzkx znk zumg vgxze
tlla tl hmaly aol avnh whyaf
ummb um inbmz bpm bwoi xizbg
vnnc vn jocna cqn cxpj yjach
wood wo kpdob dro dyqk zkbdi
xppe xp lqepc esp ezrl alcej
yqqf yq mrfqd ftq fasm bmdfk
zrrg zr nsgre gur gbtn cnegl
assh as othsf hvs hcuo dofhm
btti bt puitg iwt idvp epgin
cuuj cu qvjuh jxu jewq fqhjo
dvvk dv rwkvi kyv kfxr grikp
ewwl ew sxlwj lzw lgys hsjlq
fxxm fx tymxk max mhzt itkmr
gyyn gy uznyl nby niau julns
hzzo hz vaozm ocz ojbv kvmot
iaap ia wbpan pda pkcw lwnpu
jbbq jb xcqbo qeb qldx mxoqv
kccr kc ydrcp rfc rmey nyprw
ldds ld zesdq sgd snfz ozqsx
meet me after the toga party <-
nffu nf bgufs uif uphb qbsuz
oggv og chvgt vjg vqic rctva
可知明文为:meet me after the toga party
-------------------------------------------------------------------------
【凯撒移位(中文版)】
就是按照中文字在Unicode编码表中的顺序进行移位,可以用来加密中文的信息。
例:[中文凯撒移位]
转换成Unicode编码:中文凯撒移位
移1位后成为: 丮斈凰撓秼低
转换成中文:[丮斈凰挠秼低]
加密公式:密文 = (明文 + 位移数) Mod 26
解密公式:明文 = (密文 - 位移数) Mod 26
以《数字城堡》中的一组密码为例:
HL FKZC VD LDS
只需把每个字母都按字母表中的顺序依次后移一个字母即可——A变成B,B就成了C,依此类推。因此明文为:
IM GLAD WE MET
英文字母的移位以移25位为一个循环,移26位等于没有移位。所以可以用穷举法列出所有可能的组合。
例如:phhw ph diwhu wkh wrjd sduwb
利用电脑可以方便地列出所有组合,然后从中选出有意义的话:
qiix qi ejxiv xli xske tevxc
rjjy rj fkyjw ymj ytlf ufwyd
skkz sk glzkx znk zumg vgxze
tlla tl hmaly aol avnh whyaf
ummb um inbmz bpm bwoi xizbg
vnnc vn jocna cqn cxpj yjach
wood wo kpdob dro dyqk zkbdi
xppe xp lqepc esp ezrl alcej
yqqf yq mrfqd ftq fasm bmdfk
zrrg zr nsgre gur gbtn cnegl
assh as othsf hvs hcuo dofhm
btti bt puitg iwt idvp epgin
cuuj cu qvjuh jxu jewq fqhjo
dvvk dv rwkvi kyv kfxr grikp
ewwl ew sxlwj lzw lgys hsjlq
fxxm fx tymxk max mhzt itkmr
gyyn gy uznyl nby niau julns
hzzo hz vaozm ocz ojbv kvmot
iaap ia wbpan pda pkcw lwnpu
jbbq jb xcqbo qeb qldx mxoqv
kccr kc ydrcp rfc rmey nyprw
ldds ld zesdq sgd snfz ozqsx
meet me after the toga party <-
nffu nf bgufs uif uphb qbsuz
oggv og chvgt vjg vqic rctva
可知明文为:meet me after the toga party
-------------------------------------------------------------------------
【凯撒移位(中文版)】
就是按照中文字在Unicode编码表中的顺序进行移位,可以用来加密中文的信息。
例:[中文凯撒移位]
转换成Unicode编码:中文凯撒移位
移1位后成为: 丮斈凰撓秼低
转换成中文:[丮斈凰挠秼低]
相关文章推荐
- Python HAIL CAESAR (凯撒密码) 2
- Python HAIL CAESAR (凯撒密码) 3
- 凯撒密码 Caesar's code
- [古典密码]:Caesar cipher(凯撒密码)
- Python HAIL CAESAR (凯撒密码) 1
- 仿射Caesar(c++)
- 凯撒密码简单加密界面算法
- poj2975——Caesar密码
- UVA 12299 RMQ with Shifts
- RMQ with Shifts(线段树单点跟新)
- RMQ with Shifts 线段树+点修改
- 【UVA】12299-RMQ with Shifts(线段树)
- 凯撒密码解密
- 1067:凯撒密码
- Java安全学习笔记(一)--凯撒密码
- UVA 12299 RMQ with Shifts(线段树+点更新)
- UVA 12299 RMQ with Shifts
- 经典加密算法凯撒密码、维吉尼亚密码,RSA算法加密的简单学习
- 凯撒密码
- Codeforces Round #142 (Div. 2) C. Shifts