看到密文之后不难发现,flag就是倒着写的,直接将密文倒叙输出就是答案
看到题目,全是由符号组成的,将题目内容全部复制到控制台,回车即可得到答案
第三题与第二题看起来是一样的,所以先将其复制到控制台,发现报错了,有中文的引号,将所有的引号全部换成英文之后还是没有得到flag,········(不会了,没有思路了)
直接用工具计算出私钥d即可
根据rsa密码的解密规则解出m
没有判断出这是什么密码,网上查到时rabbit流密码,但是没有解密出来
拿到题目之后可以看到这是ook密码
用在线工具直接解密即可
这个密码是brain fuck与ook相似
要想解压需要密码,尝试了一下serpent,不对,然后,没法解压,
看到题目,这是QP编码,直接解码即可
看到密文后第一反应感觉是base64,试着解码之后发现不是,然后试MD5,用32位和16位都试了,都不对,最后上网查了MD5,发现有一种情况----MD5碰撞
MD5 相同的情况叫做“碰撞”,现在网络中已经出现了两个相同的 MD5 可执行文件,就会造成一些问题,文件被篡改,但MD5值是一样的。
MD5免费在线解密破解_MD5在线加密-SOMD5
在花括号前面有4个字母,所以考虑凯撒密码,位移1即可得到flag
拿到题之后第一反应是凯撒密码,但是得不到flag{}的形式,所以考虑了“变异的凯撒”,发现它们的ASCII码的位移没有规律,所以不是凯撒密码的变形,但是,还有一种替换密码是埃特巴什码
埃特巴什码(Atbash Cipher)是一个系统:最后一个字母代表第一个字母,倒数第二个字母代表第二个字母。
在罗马字母表中,它是这样出现的:
明文:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
密文:Z Y X W V U T S R Q P O N M L K J I H G F E D C B A
(解密之后,得到了flag{}的形式,但还是不对)
密码算法采用针对字符的替代(substitution)和置换(permutation)
培根密码(Baconian Cipher)是一种替换密码,每个明文字母被一个由5字符组成的序列替换。
原理:最初的加密方式就是由‘A’和‘B’组成序列替换明文,比如字母‘D’替换成“aaabb”
仿射密码是一种表单代换密码,字母表的每个字母相应的值使用一个简单的数学函数对应一个数值,再把对应数值转换成字母。
它的加密函数是e(x)=ax+b(mod m),其中a和m互质,m是字母的数目。解码函数是
,其中是a在Zm群的乘法逆元。
破解:仿射密码对于任意两个不同的字母,其最后得到的密文必然不一样,所以其也具有最通用的特点。当密文长度足够长时,我们可以使用频率分析的方法来解决。
当a=1时,仿射加密是凯撒加密。而一般来说,我们利用仿射密码时,其字符集都用的是字母表,一般只有26个字母,而不大于26的与26互素的个数一共有ϕ(26)=ϕ(2)×ϕ(13)=12算上b的偏移可能,一共有可能的密钥空间大小也就是12×26=312
这种密码由两种参数来控制,如果我们知道其中任意一个参数,那我们便可以很容易地快速枚举另外一个参数得到答案。但是,假设我们已经知道采用的字母集,这里假设为26个字母,我们还有另外一种解密方式,我们只需要知道两个加密后的字母 y1,y2即可进行解密。那么我们还可以知道
y1=(ax1+b)(mod26) y2=(ax2+b)(mod26)
两式相减,可得y1−y2=a(x1−x2)(mod26)
这里 y1,y2已知,如果我们知道密文对应的两个不一样的字符 x1 与 x2 ,那么我们就可以很容易得到 a ,进而就可以得到 b 了。
维吉尼亚密码是在单一恺撒密码的基础上扩展出多表代换密码,根据密钥(当密钥长度小于明文长度时可以循环使用)来决定用哪一行的密表来进行替换,以此来对抗字频统计,以第一行为明文字母,第一列为密钥字母,对应的密文就是其交点处的字母。
曲路密码(Curve Cipher)是一种换位密码,需要事先双方约定密钥,
明文: The quick brown fox jumps over the lazy dog
填入5行7列表(事先约定填充的行列数)
列移位密码(Columnar Transposition Cipher)是一种比较简单,易于实现的换位密码,通过一个简单的规则将明文打乱混合成密文
明文 The quick brown fox jumps over the lazy dog
密钥 how are u
填入5行7列表(事先约定填充的行列数,如果明文不能填充完表格可以约定使用某个字母进行填充)
按how are u在字母表中的出现的先后顺序进行编号,我们就有a为1,e为2,h为3,o为4,r为5,u为6,w为7,所以先写出a列,其次e列,以此类推
密文: qoury inpho Tkool hbxva uwmtd cfseg erjez
棋盘密码是使用一个波利比奥斯方阵和两个密钥作为密阵的替换密码,通常在波利比奥斯方阵中J字母往往被包含在I字母中
明文:T H E Q U I C K B R O W N F O X
密文:RK BK RU OC OC BI NK BQ WK RI OQ WI BU NU OQ WU
一般用到的键盘密码就是手机键盘和电脑键盘两种, 按类型来分,也分为两种第一种为形状类,即通过键盘字母位置形成的各种形状来传递信息
在圈中都围绕一个字母,于是,得到
Cfgb 34rdsw bhjm 78ijhy wedxza 34rfdsw xdfv 56ygfr rtgvcd
v e n u s e c t f
第二种为在键盘的基础上利用替换,棋盘加密的思想而形成的对应规则
(不太懂加密的方式)