15、仿射密码:
加法密码和乘法密码结合就构成仿射密码,仿射密码的加密和解密算法是:C= Ek(m)=(k1m+k2) mod n
M= Dk(c)=k3(c- k2) mod n(其中(k3 ×k1)mod26 = 1)
加密举例设密钥K= (7, 3), 用仿射密码加密明文hot。三个字母对应的数值(注意对应的数值从0开始:即A=0)是7、14和19。分别加密如下:(7×7 + 3) mod 26 = 52 mod 26 =0
(7×14 + 3) mod 26 = 101 mod 26 =23
(7×19 + 3) mod 26 =136 mod 26 =6
三个密文数值为0、23和6,对应的密文是AXG。解密过程对应逆过程。
16、培根密码:
培根所用的密码是一种本质上用二进制数设计的,没有用通常的0和1来表示,而是采用a和b
注:题目中可能出现不是ab可能是其他的两种字符 需要转化为ab 在进行解密。
例题:
听说你也喜欢吃培根?那我们一起来欣赏一段培根的介绍吧:
bacoN is one of aMerICa'S sWEethEartS. it's A dARlinG, SuCCulEnt fOoD tHAt PaIRs FlawLE
什么,不知道要干什么?上面这段巨丑无比的文字,为什么会有大小写呢?你能发现其中的玄机吗?
提交格式:PCTF{你发现的玄机} (题目来源:bugku)
Wp:根据提示是培根密码,提示有大小写,容易想到培根密码两种不同的字符,把大小写修改为AB两种,然后对应解密就可以。
17、ADFGX和ADFGVX密码:
例题:
紧急报文(来源:实验吧)
解密一下这份截获的密文吧,时间就是机会!
FA XX DD AG FF XG FD XG DD DG GA XF FA
flag格式:flag_Xd{hSh_ctf:******}
Wp;拿到密文百度,得知用ADFGX密码,看出现的几种字母也可以推断为ADFGX密码,
所以对应解密 得到FA XX DD AG FF XG FD XG DD DG GA XF FA
Flagxidianctf 所以flag_Xd{hSh_ctf:flagxidianctf} (此处注意提交的格式问题)
18、维吉尼亚密码:
维吉尼亚密码引入了“密钥”的概念,即根据密钥来决定用哪一行的密表来进行替换,以此来对抗字频统计。假如以上面第一行代表明文字母,左面第一列代表密钥字母,对如下明文加密:
TO BE OR NOT TO BE THAT IS THE QUESTION
当选定RELATIONS作为密钥时,加密过程是:明文一个字母为T,第一个密钥字母为R,因此可以找到在R行中代替T的为K,依此类推,得出对应关系如下:
密钥:RELAT IONSR ELATI ONSRE LATIO NSREL
明文:TOBEO RNOTT OBETH ATIST HEQUE STION
密文:KSMEH ZBBLK SMEMP OGAJX SEJCS FLZSY
19、与键盘有关的加密方法:
QWE ABC加密:
(一)对应键盘布局加密:
字符对应键盘上组成的字符或组成圆圈中间的字符。
例题:
最近在论证一个问题,到底是先有鸡还是先有蛋(来源:实验吧)
密文:Ijm,lo 3wsdr4 6tghu7
Wp:只是给了几个没有规律的字母,从题目看不出什么信息,根据评论的提示说是与键盘有关,把字母对应到键盘上时,发现有三个圆圈,每六个字符围成一个圆圈,包围一个字母,三个字母分别是 k e y 就是flag
例题:keyboard(来源:实验吧)
BHUK,LP TGBNHGYT BHUK,LP UYGBN TGBNHGYT BHUK,LP BHUK,LP TGBNHGYT BHUK,LP TGBNHGYT UYGBN 提示和键盘有关
WP:此题与上题不同,将给的字母对应到键盘,发现组成的图形正好是字母,得到的字母连起来即是flag。
(二)键盘坐标加密:
(三)手机九宫格键盘加密:
例题:
奇怪的短信(来源:实验吧)
收到一条奇怪的短信:335321414374744361715332
你能帮我解出隐藏的内容嘛?!
Wp:根据题目短信可能与手机有关,看到密文是数字,便想到可能是九宫格每两位数字对应一个字母,便得到flag。
20、棋盘加密:
棋盘密码是利用波利比奥斯方阵(Polybius Square)进行加密的密码方式,产生于公元前两世纪的希腊,相传是世界上最早的一种密码。
简单的来说就是把字母排列好,用坐标的形式表现出来。字母是密文,明文便是字母的坐标。
21、ROT5/13/18/47:
做题中遇到过一种rot13加密 题目有提示 工具解密得到明文。
例题:密文 rot13(来源:实验吧)
57R9S980RNOS49973S757PQO9S80Q36P (md5不解密)
WP:直接将密文ROT13解密即可得到flag。
22、希尔密码:
运用基本矩阵论原理的替换密码,每个字母当作26进制数字:A=0, B=1, C=2... 一串字母当成n维向量,跟一个n×n的矩阵相乘,再将得出的结果MOD26
例题:神秘字母(来源:实验吧)
dloguszijluswogany而旁边的矩阵是1 2,快找出flag吧 0 1
WP:此题就是希尔密码,用到线性代数中的逆矩阵的转置矩阵的知识(不懂!),做法是先进行逆变换得到逆矩阵,然后再进行转置得到转置矩阵进行乘法解密,根据矩阵乘法的规则将其排成2列:按照a=1 b=2 将密文dloguszijluswogaqy 写成
d l 4 12 6 12
o g 15 7 1 7
u s 21 19 1 0 9 19
z i 26 9 8 9
j l 10 12 12 12
u s 21 19 9 19
w o 23 15 19 15
g a 7 1 5 1
q y 17 25 19 25
将结果再按照a=1 b=2 转回去。
23、猪圈密码:
24、字母表替换加密:
25、当铺密码:
例题:疑惑的汉字(来源:实验吧)
现有一段经过加密的密文,内容如下:王夫 井工 夫口 由中人 井中 夫夫 由中大。请找出这段密文隐藏的消息明文。
WP:此题就是当铺密码,百度密文即可知,对照密码表进行解密即可,得到的是ascll码,再解ascll码即可得到flag。
26、Playfair密码:
使用一个关键词方格来加密字符对的加密法,不同的密码会给不同的密匙组成矩阵。
有一个在线的解密网站:http://rumkin.com/tools/cipher/playfair.php
例题:Fair-Play(来源:实验吧)
The quick brown fox jumps over the lazy dog!
ihxo{smzdodcikmodcismzd}
WP:此题就是playfair密码,利用在线解密网站将给的信息输入即可得到。或者直接解密:根据给的密匙得到密钥矩阵:
T h e q u
i/j c k b r
o w n f x
m p s v l
a z y d g
密文:ihxo{smzdodcikmodcismzd}
ih xo { sm zd od ci km od ci sm zd }(若两个字母同行,取这两个字母左方的字母)
ct fx { pl ay fa ir is fa ir pl ay}
27、盲文密码:
根据盲文表对应解密。
28、JSFUCK
特征:由()+[]! 这六种字符组成,经常出现在源代码中。
可以在线解密:http://www.jsfuck.com/
也可以直接控制台解密。
除此之位常见的还有RSA加密等,以后单独总结一下RSA的题目,当然涉及的只是简单的加密,最难的还是通过题目给的密文和加密脚本,写解密脚本解密。