BUUCTF
1.Quoted-printable
1.内容:
任何一个8位的字节值可编码为3个字符:一个等号”=”后跟随两个十六进制数字(0–9或A–F)表示该字节的数值.例如,ASCII码换页符(十进制值为12)可以表示为”=0C”, 等号”=”(十进制值为61)必须表示为”=3D”. 除了可打印ASCII字符与换行符以外,所有字符必须表示为这种格式.
所有可打印ASCII字符(十进制值的范围为33到126)可用ASCII字符编码来直接表示, 但是等号”=”(十进制值为61)不可以这样直接表示.ASCII的水平制表符(tab)与空格符, 十进制为9和32, 如果不出现在行尾则可以用其ASCII字符编码直接表示。如果这两个字符出现在行尾,必须QP编码表示为”=09″ (tab)或”=20″ (space).
如果数据中包含有意义的行结束标志,必须转换为ASCII回车(CR)换行(LF)序列,既不能用原来的ASCII字符也不能用QP编码的”=”转义字符序列。 相反,如果字节值13与10有其它的不是行结束的含义,它们必须QP编码为=0D与=0A.
quoted-printable编码的数据的每行长度不能超过76个字符. 为满足此要求又不改变被编码文本,在QP编码结果的每行末尾加上软换行(soft line break). 即在每行末尾加上一个”=”, 但并不会出现在解码得到的文本中.(没看懂)
2.
用在线的qp编码工具就可以得到flag
2.Rabbit
1.介绍:
最大加密消息长度为264 Bytes,即16 TB,若消息超过该长度,则需要更换密钥对剩下的消息进行处理。它是目前安全性较高,加/解密速度比较高效的流密码之一,在各种处理器平台上都有不凡的表现。
2.

在线工具解密
3.篱笆墙的影子
1.栅栏密码:
把将要传递的信息中的字母交替排成上下两行。再将下面一行字母排在上面一行的后边,从而形成一段密码。
例如:明文:THE LONGEST DAY MUST HAVE AN END
加密:
*把将要传递的信息中的字母交替排成上下两行。
T E O G S D Y U T A E N N
H L N E T A M S H V A E D
*密文:
将下面一行字母排在上面一行的后边。
TEOGSDYUTAENN HLNETAMSHVAED
2.

4.RSA
1.计算:

2.

5.丢失的MD5

首先print函数要加括号,加上括号之后运行

发现报错,说Unicode-objects必须被加密在哈希之前(没懂)
6.Alice与Bob

分解:可以用在线的分解工具,将大整数分解成两个素数,分解后再用在线的MD5加解密工具进行哈希算法
7.rsarsa

将私钥d算出,解码c
攻防世界
1.幂数加密
1.
幂数加密,01248密码,又称云影密码,与二进制幂加密不同,这个加密法采用的是0作间隔,其他非0数隔开后组合起来相加表示a-z字母。0作分割,其他数隔开后组合加和,转化为1-26对应的字母
2.


884210 1220 480 22440 40 1422420 2480 122
23 5 12 12 4 15 14 5
w e l l d o n e
2.Railfence(栅栏密码)

由于flag为cyberpeace{}这种形式,题目中的{}在中间,不管分为5栏还是7栏都不能得到flag的正确形式,所以考虑变形,有一种叫做WWW的变种,将题目按照W形状排列,栏数从2开始试,直到出现flag的形式,最后栏数是5.
3.不仅仅是Morse

用在线的摩斯密码解码工具解码之后发现解码后的字母有很多a,b所以就想到培根密码

将从a开始的字母用在线培根密码解码工具解密就可以得到答案
培根密码
培根密码,又名倍康尼密码(英语:Bacon's cipher)是由法兰西斯·培根发明的一种隐写术。培根密码本质上是将二进制信息通过样式的区别,加在了正常书写之上
对照表

4.easy_RSA
与buuctf一样,计算出私钥d即可得到答案
学习笔记




本文介绍了参与BUUCTF、攻防世界等CTF比赛中的加密解密技巧,涉及Quoted-printable编码、Rabbit流密码、栅栏密码(Railfence Cipher)、RSA加密算法和MD5哈希。同时,分享了学习笔记,涵盖了幂数加密、摩斯密码与培根密码的解码方法,以及RSA私钥计算。

2776

被折叠的 条评论
为什么被折叠?



