二进制
一个音频文件,听了,不是摩斯电码看了wp,原来是拨号
考察:DTMF拨号音识别
使用dtmf2num这个工具解析这个音频
二进制1和0
但是不是,它是01字符变形成摩斯密码,把0替换成.,把1替换成-,把*替换成空格。
得到一组摩斯电码,然后去解即可
还要小写md5加密,服了这个老六
FB
百度识得这是斐波那契数列
将VERAYTRGUYTLOUYTFDRKONMLKJOPGF65DD作为字典
首先我们来了解一下斐波那契数列的简单定义:
一个数列:0,1,1,2,3,5,8,13,21,34,55,89……这个数列从第3项开始 ,每一项都等于前两项之和。
那么我们从1开始为字典排序,0不代表任何,即序号1、2、3代表了字典的前三个字母VER,后面按序入座
而flag的组成内容则按照斐波那契数列规则组成:
因为字典只有34位,所以序号1,1,2,3,5,8,13,21,34所对应的字母或数字排列而成了flag内容
包上flag即可,得到flag{VVERYGOOD}
多表替换
维吉尼亚解码,key未知,直接爆破
需要扩大key值的范围
flag{xiao zeng zui bang chong chong chong}
拒绝固定思维.
只给了一张表,010查看
题目在末尾,这我还真不知道,提取出来
gmbhvpuufnwoneusnowscrrvuwutotfnwobe
根据其他人的wp知道了这是base64换表
大佬的代码如下:
得到flag{8277e0910d750195b448797616e091ad}
import base64
dict={0: 'J', 1: 'K', 2: 'L', 3: 'M', 4: 'N', 5: 'O', 6: 'x', 7: 'y', 8: 'U', 9: 'V', 10: 'z', 11: 'A', 12: 'B', 13: 'C', 14: 'D', 15: 'E', 16: 'F', 17: 'G', 18: 'H', 19: '7', 20: '8', 21: '9', 22: 'P', 23: 'Q', 24: 'I', 25: 'a', 26: 'b', 27: 'c', 28: 'd', 29: 'e', 30: 'f', 31: 'g', 32: 'h', 33: 'i', 34: 'j', 35: 'k', 36: 'l', 37: 'm', 38: 'W', 39: 'X', 40: 'Y', 41: 'Z', 42: '0', 43: '1', 44: '2', 45: '3', 46: '4', 47: '5', 48: '6', 49: 'R', 50: 'S', 51: 'T', 52: 'n', 53: 'o', 54: 'p', 55: 'q', 56: 'r', 57: 's', 58: 't', 59: 'u', 60: 'v', 61: 'w', 62: '+', 63: '/', 64: '='}
base64_list = ['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', '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', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', '/']
chiper='gmbhvpuufnwoneusnowscrrvuwutotfnwobe'
flag= ""
for i in range(len(chiper)):
for j in range(64):
if(dict[j]==chiper[i]):
flag+=base64_list[j]
print(flag)
#flag8277e0910d750195b448797616e091ads
rsa
仅提供了e,c
上脚本
RSA
还有公钥,直接导入到RSA工具,获得e、n值,yafu分解得到pq
将所需数值依次填入,计算私钥,计算明文
题目要求对明文进行md5加密作为flag提交
七夕特供
先从hint.txt入手,发现是零宽文本加密
与佛论禅,但是是与佛论禅加密版,需要箴言,即key值,网址不太好找与佛论禅加密版,上文得到的gugua大概就是key
花朵加密,这个加密类型就很好猜了
得到flag
sha
解密脚本如下
维吉尼亚解密即可
xxtea
橙色是密文,蓝色是key,xxtea解密
你知道M型栅栏密码吗?
进制转换
B二进制、O八进制、D十进制、H十六进制
写脚本跑一下,都变成十进制,转字符
import binascii
text = "H7b D97 B00110111 D57 H37 H67 D55 B00110100 D52 H31 H62 O65 O65 H33 H7d D97 D101 H66 H39 O143 B00110110 D98 H32 H65 O154 O67 B01100100 D98 H36 H30 O67 O145 D53 O146 D51 H61 H61 O145"
result = ""
text2 = text.split(" ")
for i in text2:
if i[0] == "B":
result += chr(int(i[1:],2))
if i[0] == 'O':
result += chr(int(i[1:],8))
if i[0] == 'D':
result += chr(int(i[1:],10))
if i[0] == 'H':
result += chr(int(i[1:],16))
print(result)
#{a797g7441b553}aef9c6b2el7db607e5f3aae
#B二进制、O八进制、D十进制、H十六进制
{a797g7441b553}aef9c6b2el7db607e5f3aae
M型栅栏手动解密
得到flag{7e73df4a49ba6c17b60a7b5952ee5e37}
小精灵来喽
爆破不了,合着这是密码提示
维吉尼亚解密
得到压缩包密码
古精灵对照表对照
得到herec0mesthee1f
然后md5解密
要求字母大写,字母大小写转换
得到flag{08460AE514ACCC54E5D8D4B690A75D29}
眼见非实
实际上不是二进制转其他,这条路走不通,眼见非实,说明不是我们所看到的二进制,看了wp发现是变形培根密码
1 -> A,0 -> B,再培根密码解码,这里可以随波逐流直接解
AAAABAAAAAAAABAABBBAABBABABAAAAAAAAABBABAAABAABAAAABBBBAABBBAABAABAAABABAAABAABAAABBAABBBAABBBAAAABB(转成标准的培根密码)
MD5加密提交
不一样的四四方方
我们先将其重复的去掉
然后将未出现的字母按顺序补全,q先不填
题干要求将最后一位删掉,但是这样就不满足25字节数了
所以要把q补上这样就得得到了最终的key
在线加密
32位Md5小写,包上flag提交
我爱456
循环456,依次取出4,5,6位
count = 1
str = ""
text = [b'kseYvkasuj5618t',b'lygemfla235158jdb',b'utasvQsjdybl587t',b'sydwkuhd54kdhg',b'jtftY658qiwudhs',b'iaugwjiushyc871',b'aksQbhasbkjcbkjd',b'dvbpzd8v26dfv6f',b's6dvdNf6v52v6x',b'65dT26f5d1b6f5v',b'35f2Y6d65bbfv5',b'35dfv32d8bfv256d',b'kdhMvnhdkjzldkj',b'sdhjTujsdbch268',b'sdr26Iksds265dsv',b'jnm2dsnsdv26865']
for i in text:
if count % 3 == 1:
str += chr(i[3])
if count % 3 == 2:
str += chr(i[4])
if count % 3 == 0:
str += chr(i[5])
count = count+1
print(str)
# YmQwYjQzNTY3MTI2
然后base64解密
之后md5加密
得到flag{b5ff0893e6522a037c144a1f502c2b48}
离家出走的猫猫
谁能想到是首藏头诗
得到明文:小明是一个福瑞控
包上flag即可
rsaaa
右上角有计算n、d
最后计算得到M值,转字符即可
将其包上flag{}提交
Hello
得到其ASCII码值7269767679(拼接一起并不常见)
模幂运算,代码如下:
得到flag{124198634960}
# Given values
n = 365354477477
e = 65537
# ASCII values for 'HELLO'
ascii_values = [7269767679]
# Encrypt each ASCII value using the public key (n, e)
encrypted_values = [pow(m, e, n) for m in ascii_values]
print(encrypted_values)
Fakeboard
ao神之力
言外之意,我们进行两次base解码,再进行一次进制解码即可
但是做的时候很懵,用随波逐流一键解码
先是一层base91
然后16进制转字符
然后就是两层base编码了
最后将其进行MD5加密提交即可
flag{caf3ebc6c7f2a20660873080ca55e541}
跟预料的多了一层base91编码
不友好的RSA
写脚本
将M值包上flag即可
官方脚本如上
bllbl的密码锁
幂数加密了解一下