- 数据库密码
题目描述:
数据库密码经由md5加密后存储,md5字串长度为32个字符(128位),但题目中给的是35位仔细观察发现,字母Q、X、V并不是md5值所包含的字母,去除后刚好32个字符(128位),修改后的字串在网站上在线解密,得到flag:
- rot大法好
题目描述:
没有什么特殊的,直接rot13解密:
解密后发现是逆序,倒过来就是flag:
- 奇怪的汉字
题目描述:
明显的当铺密码(题目描述也有提示),在线解密:
本题汉字不是很多,数值也可以直接数出来,将得到的数转码即得到flag:
- 就是这个feel
题目描述:
疑似摩斯电码,将恰转变为1(-),绑转变为0(.),尝试脚本解一下:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
def decode(a):
plain_text=''
s = a.split(" ")
dict = {
'.-':'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','.----':'1','..---':'2','...--':'3','....-':'4','.....':'5',
'-....':'6','--...':'7','---..':'8','----.':'9','-----':'0','..--..':'?','-..-.':'/',
'-.--.-':'()','-....-':'-','.-.-.-':'.'
};
for item in s:
plain_text+=dict[item]
return plain_text
str1='11 111 1010 1 0010 110 111 111 100'
cipher_text=''
for i in str1:
try:
if i==' ':
cipher_text+=i
else:
if i=='1':
cipher_text+='-'
elif i=='0':
cipher_text+="."
except Exception as err:
print(err)
print(decode(cipher_text).lower())
得到flag(加上{})即可:
- 贝斯族谱
Vm0weGQxSXlSblJWV0d4WFlUSm9WRll3WkRSV01XeHlXa1pPYUZKc1NsWldSM1JQVmpGS2RHVkVRbFZXYkhCUVdWZHplRll4VG5OWGJGcFhaV3RhU1ZkV1kzaFRNVTVYVW01S2FGSnRhRzlVVm1oRFZWWmFjbHBFVWxSaVZrWTFWa2QwYTJGc1NuUlZiRkphWWtkU2RscFdXbXRXTVZaeVdrWndWMkV6UWpaV01uUnZWakZhZEZOc1dsaGlSMmhvVm1wT2IxTXhjRmhsUjBaWFlrZFNlVll5ZUVOV01rVjNZMFpTVjFaV2NGTmFSRVpEVld4Q1ZVMUVNRDA9=
多次base64加密,解密即可:
import base64
flag='VjFjd2VHRXlVbGRhTTNCVFltMVNjMVJVUW1GamJIQkhXa1pPVGxJd2NGcFdSbWhyWVRGYVJsZHVVbUZXZWxJelZVWkZPVkJSUFQwPQ=='
while True:
try:
flag=base64.b64decode(flag)
except Exception as err:
print(flag)
break
解密后得到的并不是最终的flag:
像是栅栏密码,尝试解密:
得到形式于flag格式一致的字串,在移位解密,得到flag:
input_str=input('plaintext:')
key=1
while key<27:
str1=input_str
flag=''
for i in range(len(str1)):
try:
if not (65<=ord(str1[i])<=90 or 97<=ord(str1[i])<=122):
flag+=str1[i]
else:
flag+=chr(97+(ord(str1[i])-97-key)%26)
except Exception as err:
print(err)
key+=1
print(key,flag)
- 贝斯族谱升级版
R1pDRE1SUldHTTNUSU5SV0c1QkRNUkJUR0UzRElOUlVHWkJUTU5KVklZM0RHTlpTRzQ0VE9NQlhHUVpUQU4yRQ==
base64、32、16分别解密即可得到flag:
from base64 import *
flag='R1pDRE1SUldHTTNUSU5SV0c1QkRNUkJUR0UzRElOUlVHWkJUTU5KVklZM0RHTlpTRzQ0VE9NQlhHUVpUQU4yRQ=='
while True:
try:
flag=b64decode(flag)
except Exception as err:
print(err)
try:
flag=b32decode(flag)
except Exception as err:
print(err)
try:
flag=b16decode(flag)
except Exception as err:
break
print(flag)
- 卡哇伊
题目描述:
拿到的文件是一堆字符(AAencode):
- 我觉得ok
题目描述:
拿到的同样是一堆字符(ook编码):