1.告诉你个秘密
题目给了这样一串字符:
乍一看看不出什么,那就边猜边试吧。
既有数字又有字母,且字符个数是2的倍数,可能是十六进制吧。
那就将其转换成十进制,再根据asc码转化成字符。
cjV5RyBscDlJIEJqTSB0RmhC
VDZ1aCB5N2lKIFFzWiBiaE0g
还是看不出来flag是什么样子的。
难道方法不对吗?
再试一次吧,再用base64解码,出现了这样的结果
r5yG lp9I BjM tFhB T6uh y7iJ QsZ bhM
还是不对,没想法了。
后来查了百度之后说是键盘围绕加密(我的脑洞还是不够大啊)
最后得到flag为TONGYUAN
2.cr3-what-is-this-encryption
看到有q,p,e,c就可以知道是RSA加密
因为φ(N) = (P-1)(Q-1)
E * D % φ(N) = 1(D是私钥,E是公钥)
M =C^ D mod N(M是明文)
先将p,q,e转化为十进制,再根据公式计算出D,N,M。
再将M转化成字符
最后得到flag为ALEXCTF{RS4_I5_E55ENT1AL_T0_D0_BY_H4ND}
3.flag_in_your_hand1
打开附件,看到
打开网页,出现
按F12
看了java的源码,知道要让ic返回值为true.
而token里要填的是a数列里的每位数减3,转换 asc码得到的字符,输入后得到flag