- base64
v30 = "GLp/+Wn7uqX8FQ2JDR1c0M6U53sjBwyxglmrCVdSThAfEOvPHaYZNzo4ktK9iebI"
v30_dict = {c: idx for idx, c in enumerate(v30)}
standard_chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"
target = "AwLdOEVEhIWtajB2CbCWCbTRVsFFC8hirfiXC9gWH9HQayCJVbB8CIF="
decoded = []
for c in target:
if c == '=':
decoded.append('=')
else:
idx = v30_dict[c]
original = (idx - 24) % 64
decoded.append(standard_chars[original])
b64_str = ''.join(decoded)
import base64
flag = base64.b64decode(b64_str).decode()
print(flag)
- 水果忍者
Dnspy打开,反编译Assembly-CSharp.dll,找到gamemangener,发现下面有编码,还给了偏移量iv,AES加密,用厨师解码


- 蛇年的本命语言
Python反编译得到!/usr/bin/env python # visit https://tool.lu/pyc/ for more information # Version: Python 3.8 from collections import Counter print('Welcome to HZNUCTF!!!') print('Plz input the flag:') ooo0oOoooOOO0 = input() oOO0OoOoo000 = Counter(ooo0oOoooOOO0) O0o00 = ''.join((lambda .0: for oOooo0OOO in .0: str(oOO0OoOoo000[oOooo0OOO]))(ooo0oOoooOOO0)) print('ans1: ', '', **('end',)) print(O0o00) if O0o00 != '111111116257645365477364777645752361': print('wrong_wrong!!!') exit(1) iiIII = '' for oOooo0OOO in ooo0oOoooOOO0: if oOO0OoOoo000[oOooo0OOO] > 0: iiIII += oOooo0OOO + str(oOO0OoOoo000[oOooo0OOO]) oOO0OoOoo000[oOooo0OOO] = 0 i11i1Iii1I1 = (lambda .0: [ ord(oOooo0OOO) for oOooo0OOO in .0 ])(iiIII) ii1iIi1i11i = [ 7 * i11i1Iii1I1[0] == 504, 9 * i11i1Iii1I1[0] - 5 * i11i1Iii1I1[1] == 403, (2 * i11i1Iii1I1[0] - 5 * i11i1Iii1I1[1]) + 10 * i11i1Iii1I1[2] == 799, 3 * i11i1Iii1I1[0] + 8 * i11i1Iii1I1[1] + 15 * i11i1Iii1I1[2] + 20 * i11i1Iii1I1[3] == 2938, (5 * i11i1Iii1I1[0] + 15 * i11i1Iii1I1[1] + 20 * i11i1Iii1I1[2] - 19 * i11i1Iii1I1[3]) + 1 * i11i1Iii1I1[4] == 2042, (7 * i11i1Iii1I1[0] + 1 * i11i1Iii1I1[1] + 9 * i11i1Iii1I1[2] - 11 * i11i1Iii1I1[3]) + 2 * i11i1Iii1I1[4] + 5 * i11i1Iii1I1[5] == 1225, 11 * i11i1Iii1I1[0] + 22 * i11i1Iii1I1[1] + 33 * i11i1Iii1I1[2] + 44 * i11i1Iii1I1[3] + 55 * i11i1Iii1I1[4] + 66 * i11i1Iii1I1[5] - 77 * i11i1Iii1I1[6] == 7975, ((21 * i11i1Iii1I1[0] + 23 * i11i1Iii1I1[1] + 3 * i11i1Iii1I1[2] + 24 * i11i1Iii1I1[3] - 55 * i11i1Iii1I1[4]) + 6 * i11i1Iii1I1[5] - 7 * i11i1Iii1I1[6]) + 15 * i11i1Iii1I1[7] == 229, (2 * i11i1Iii1I1[0] + 26 * i11i1Iii1I1[1] + 13 * i11i1Iii1I1[2] + 0 * i11i1Iii1I1[3] - 65 * i11i1Iii1I1[4]) + 15 * i11i1Iii1I1[5] + 29 * i11i1Iii1I1[6] + 1 * i11i1Iii1I1[7] + 20 * i11i1Iii1I1[8] == 2107, (10 * i11i1Iii1I1[0] + 7 * i11i1Iii1I1[1] + -9 * i11i1Iii1I1[2] + 6 * i11i1Iii1I1[3] + 7 * i11i1Iii1I1[4] + 1 * i11i1Iii1I1[5] + 22 * i11i1Iii1I1[6] + 21 * i11i1Iii1I1[7] - 22 * i11i1Iii1I1[8]) + 30 * i11i1Iii1I1[9] == 4037, (15 * i11i1Iii1I1[0] + 59 * i11i1Iii1I1[1] + 56 * i11i1Iii1I1[2] + 66 * i11i1Iii1I1[3] + 7 * i11i1Iii1I1[4] + 1 * i11i1Iii1I1[5] - 122 * i11i1Iii1I1[6]) + 21 * i11i1Iii1I1[7] + 32 * i11i1Iii1I1[8] + 3 * i11i1Iii1I1[9] - 10 * i11i1Iii1I1[10] == 4950, (((13 * i11i1Iii1I1[0] + 66 * i11i1Iii1I1[1] + 29 * i11i1Iii1I1[2] + 39 * i11i1Iii1I1[3] - 33 * i11i1Iii1I1[4]) + 13 * i11i1Iii1I1[5] - 2 * i11i1Iii1I1[6]) + 42 * i11i1Iii1I1[7] + 62 * i11i1Iii1I1[8] + 1 * i11i1Iii1I1[9] - 10 * i11i1Iii1I1[10]) + 11 * i11i1Iii1I1[11] == 12544, (((23 * i11i1Iii1I1[0] + 6 * i11i1Iii1I1[1] + 29 * i11i1Iii1I1[2] + 3 * i11i1Iii1I1[3] - 3 * i11i1Iii1I1[4]) + 63 * i11i1Iii1I1[5] - 25 * i11i1Iii1I1[6]) + 2 * i11i1Iii1I1[7] + 32 * i11i1Iii1I1[8] + 1 * i11i1Iii1I1[9] - 10 * i11i1Iii1I1[10]) + 11 * i11i1Iii1I1[11] - 12 * i11i1Iii1I1[12] == 6585, ((((223 * i11i1Iii1I1[0] + 6 * i11i1Iii1I1[1] - 29 * i11i1Iii1I1[2] - 53 * i11i1Iii1I1[3] - 3 * i11i1Iii1I1[4]) + 3 * i11i1Iii1I1[5] - 65 * i11i1Iii1I1[6]) + 0 * i11i1Iii1I1[7] + 36 * i11i1Iii1I1[8] + 1 * i11i1Iii1I1[9] - 15 * i11i1Iii1I1[10]) + 16 * i11i1Iii1I1[11] - 18 * i11i1Iii1I1[12]) + 13 * i11i1Iii1I1[13] == 6893, ((((29 * i11i1Iii1I1[0] + 13 * i11i1Iii1I1[1] - 9 * i11i1Iii1I1[2] - 93 * i11i1Iii1I1[3]) + 33 * i11i1Iii1I1[4] + 6 * i11i1Iii1I1[5] + 65 * i11i1Iii1I1[6] + 1 * i11i1Iii1I1[7] - 36 * i11i1Iii1I1[8]) + 0 * i11i1Iii1I1[9] - 16 * i11i1Iii1I1[10]) + 96 * i11i1Iii1I1[11] - 68 * i11i1Iii1I1[12]) + 33 * i11i1Iii1I1[13] - 14 * i11i1Iii1I1[14] == 1883, (((69 * i11i1Iii1I1[0] + 77 * i11i1Iii1I1[1] - 93 * i11i1Iii1I1[2] - 12 * i11i1Iii1I1[3]) + 0 * i11i1Iii1I1[4] + 0 * i11i1Iii1I1[5] + 1 * i11i1Iii1I1[6] + 16 * i11i1Iii1I1[7] + 36 * i11i1Iii1I1[8] + 6 * i11i1Iii1I1[9] + 19 * i11i1Iii1I1[10] + 66 * i11i1Iii1I1[11] - 8 * i11i1Iii1I1[12]) + 38 * i11i1Iii1I1[13] - 16 * i11i1Iii1I1[14]) + 15 * i11i1Iii1I1[15] == 8257, ((((23 * i11i1Iii1I1[0] + 2 * i11i1Iii1I1[1] - 3 * i11i1Iii1I1[2] - 11 * i11i1Iii1I1[3]) + 12 * i11i1Iii1I1[4] + 24 * i11i1Iii1I1[5] + 1 * i11i1Iii1I1[6] + 6 * i11i1Iii1I1[7] + 14 * i11i1Iii1I1[8] - 0 * i11i1Iii1I1[9]) + 1 * i11i1Iii1I1[10] + 68 * i11i1Iii1I1[11] - 18 * i11i1Iii1I1[12]) + 68 * i11i1Iii1I1[13] - 26 * i11i1Iii1I1[14]) + 15 * i11i1Iii1I1[15] - 16 * i11i1Iii1I1[16] == 5847, (((((24 * i11i1Iii1I1[0] + 0 * i11i1Iii1I1[1] - 1 * i11i1Iii1I1[2] - 15 * i11i1Iii1I1[3]) + 13 * i11i1Iii1I1[4] + 4 * i11i1Iii1I1[5] + 16 * i11i1Iii1I1[6] + 67 * i11i1Iii1I1[7] + 146 * i11i1Iii1I1[8] - 50 * i11i1Iii1I1[9]) + 16 * i11i1Iii1I1[10] + 6 * i11i1Iii1I1[11] - 1 * i11i1Iii1I1[12]) + 69 * i11i1Iii1I1[13] - 27 * i11i1Iii1I1[14]) + 45 * i11i1Iii1I1[15] - 6 * i11i1Iii1I1[16]) + 17 * i11i1Iii1I1[17] == 18257, ((((25 * i11i1Iii1I1[0] + 26 * i11i1Iii1I1[1] - 89 * i11i1Iii1I1[2]) + 16 * i11i1Iii1I1[3] + 19 * i11i1Iii1I1[4] + 44 * i11i1Iii1I1[5] + 36 * i11i1Iii1I1[6] + 66 * i11i1Iii1I1[7] - 150 * i11i1Iii1I1[8] - 250 * i11i1Iii1I1[9]) + 166 * i11i1Iii1I1[10] + 126 * i11i1Iii1I1[11] - 11 * i11i1Iii1I1[12]) + 690 * i11i1Iii1I1[13] - 207 * i11i1Iii1I1[14]) + 46 * i11i1Iii1I1[15] + 6 * i11i1Iii1I1[16] + 7 * i11i1Iii1I1[17] - 18 * i11i1Iii1I1[18] == 12591, (((((5 * i11i1Iii1I1[0] + 26 * i11i1Iii1I1[1] + 8 * i11i1Iii1I1[2] + 160 * i11i1Iii1I1[3] + 9 * i11i1Iii1I1[4] - 4 * i11i1Iii1I1[5]) + 36 * i11i1Iii1I1[6] + 6 * i11i1Iii1I1[7] - 15 * i11i1Iii1I1[8] - 20 * i11i1Iii1I1[9]) + 66 * i11i1Iii1I1[10] + 16 * i11i1Iii1I1[11] - 1 * i11i1Iii1I1[12]) + 690 * i11i1Iii1I1[13] - 20 * i11i1Iii1I1[14]) + 46 * i11i1Iii1I1[15] + 6 * i11i1Iii1I1[16] + 7 * i11i1Iii1I1[17] - 18 * i11i1Iii1I1[18]) + 19 * i11i1Iii1I1[19] == 52041, ((((((29 * i11i1Iii1I1[0] - 26 * i11i1Iii1I1[1]) + 0 * i11i1Iii1I1[2] + 60 * i11i1Iii1I1[3] + 90 * i11i1Iii1I1[4] - 4 * i11i1Iii1I1[5]) + 6 * i11i1Iii1I1[6] + 6 * i11i1Iii1I1[7] - 16 * i11i1Iii1I1[8] - 21 * i11i1Iii1I1[9]) + 69 * i11i1Iii1I1[10] + 6 * i11i1Iii1I1[11] - 12 * i11i1Iii1I1[12]) + 69 * i11i1Iii1I1[13] - 20 * i11i1Iii1I1[14] - 46 * i11i1Iii1I1[15]) + 65 * i11i1Iii1I1[16] + 0 * i11i1Iii1I1[17] - 1 * i11i1Iii1I1[18]) + 39 * i11i1Iii1I1[19] - 20 * i11i1Iii1I1[20] == 20253, (((((((45 * i11i1Iii1I1[0] - 56 * i11i1Iii1I1[1]) + 10 * i11i1Iii1I1[2] + 650 * i11i1Iii1I1[3] - 900 * i11i1Iii1I1[4]) + 44 * i11i1Iii1I1[5] + 66 * i11i1Iii1I1[6] - 6 * i11i1Iii1I1[7] - 6 * i11i1Iii1I1[8] - 21 * i11i1Iii1I1[9]) + 9 * i11i1Iii1I1[10] - 6 * i11i1Iii1I1[11] - 12 * i11i1Iii1I1[12]) + 69 * i11i1Iii1I1[13] - 2 * i11i1Iii1I1[14] - 406 * i11i1Iii1I1[15]) + 651 * i11i1Iii1I1[16] + 2 * i11i1Iii1I1[17] - 10 * i11i1Iii1I1[18]) + 69 * i11i1Iii1I1[19] - 0 * i11i1Iii1I1[20]) + 21 * i11i1Iii1I1[21] == 18768, (((((555 * i11i1Iii1I1[0] - 6666 * i11i1Iii1I1[1]) + 70 * i11i1Iii1I1[2] + 510 * i11i1Iii1I1[3] - 90 * i11i1Iii1I1[4]) + 499 * i11i1Iii1I1[5] + 66 * i11i1Iii1I1[6] - 66 * i11i1Iii1I1[7] - 610 * i11i1Iii1I1[8] - 221 * i11i1Iii1I1[9]) + 9 * i11i1Iii1I1[10] - 23 * i11i1Iii1I1[11] - 102 * i11i1Iii1I1[12]) + 6 * i11i1Iii1I1[13] + 2050 * i11i1Iii1I1[14] - 406 * i11i1Iii1I1[15]) + 665 * i11i1Iii1I1[16] + 333 * i11i1Iii1I1[17] + 100 * i11i1Iii1I1[18] + 609 * i11i1Iii1I1[19] + 777 * i11i1Iii1I1[20] + 201 * i11i1Iii1I1[21] - 22 * i11i1Iii1I1[22] == 111844, (((((((1 * i11i1Iii1I1[0] - 22 * i11i1Iii1I1[1]) + 333 * i11i1Iii1I1[2] + 4444 * i11i1Iii1I1[3] - 5555 * i11i1Iii1I1[4]) + 6666 * i11i1Iii1I1[5] - 666 * i11i1Iii1I1[6]) + 676 * i11i1Iii1I1[7] - 660 * i11i1Iii1I1[8] - 22 * i11i1Iii1I1[9]) + 9 * i11i1Iii1I1[10] - 73 * i11i1Iii1I1[11] - 107 * i11i1Iii1I1[12]) + 6 * i11i1Iii1I1[13] + 250 * i11i1Iii1I1[14] - 6 * i11i1Iii1I1[15]) + 65 * i11i1Iii1I1[16] + 39 * i11i1Iii1I1[17] + 10 * i11i1Iii1I1[18] + 69 * i11i1Iii1I1[19] + 777 * i11i1Iii1I1[20] + 201 * i11i1Iii1I1[21] - 2 * i11i1Iii1I1[22]) + 23 * i11i1Iii1I1[23] == 159029, (((520 * i11i1Iii1I1[0] - 222 * i11i1Iii1I1[1]) + 333 * i11i1Iii1I1[2] + 4 * i11i1Iii1I1[3] - 56655 * i11i1Iii1I1[4]) + 6666 * i11i1Iii1I1[5] + 666 * i11i1Iii1I1[6] + 66 * i11i1Iii1I1[7] - 60 * i11i1Iii1I1[8] - 220 * i11i1Iii1I1[9]) + 99 * i11i1Iii1I1[10] + 73 * i11i1Iii1I1[11] + 1007 * i11i1Iii1I1[12] + 7777 * i11i1Iii1I1[13] + 2500 * i11i1Iii1I1[14] + 6666 * i11i1Iii1I1[15] + 605 * i11i1Iii1I1[16] + 390 * i11i1Iii1I1[17] + 100 * i11i1Iii1I1[18] + 609 * i11i1Iii1I1[19] + 99999 * i11i1Iii1I1[20] + 210 * i11i1Iii1I1[21] + 232 * i11i1Iii1I1[22] + 23 * i11i1Iii1I1[23] - 24 * i11i1Iii1I1[24] == 2762025, ((((1323 * i11i1Iii1I1[0] - 22 * i11i1Iii1I1[1]) + 333 * i11i1Iii1I1[2] + 4 * i11i1Iii1I1[3] - 55 * i11i1Iii1I1[4]) + 666 * i11i1Iii1I1[5] + 666 * i11i1Iii1I1[6] + 66 * i11i1Iii1I1[7] - 660 * i11i1Iii1I1[8] - 220 * i11i1Iii1I1[9]) + 99 * i11i1Iii1I1[10] + 3 * i11i1Iii1I1[11] + 100 * i11i1Iii1I1[12] + 777 * i11i1Iii1I1[13] + 2500 * i11i1Iii1I1[14] + 6666 * i11i1Iii1I1[15] + 605 * i11i1Iii1I1[16] + 390 * i11i1Iii1I1[17] + 100 * i11i1Iii1I1[18] + 609 * i11i1Iii1I1[19] + 9999 * i11i1Iii1I1[20] + 210 * i11i1Iii1I1[21] + 232 * i11i1Iii1I1[22] + 23 * i11i1Iii1I1[23] - 24 * i11i1Iii1I1[24]) + 25 * i11i1Iii1I1[25] == 1551621, (((((777 * i11i1Iii1I1[0] - 22 * i11i1Iii1I1[1]) + 6969 * i11i1Iii1I1[2] + 4 * i11i1Iii1I1[3] - 55 * i11i1Iii1I1[4]) + 666 * i11i1Iii1I1[5] - 6 * i11i1Iii1I1[6]) + 96 * i11i1Iii1I1[7] - 60 * i11i1Iii1I1[8] - 220 * i11i1Iii1I1[9]) + 99 * i11i1Iii1I1[10] + 3 * i11i1Iii1I1[11] + 100 * i11i1Iii1I1[12] + 777 * i11i1Iii1I1[13] + 250 * i11i1Iii1I1[14] + 666 * i11i1Iii1I1[15] + 65 * i11i1Iii1I1[16] + 90 * i11i1Iii1I1[17] + 100 * i11i1Iii1I1[18] + 609 * i11i1Iii1I1[19] + 999 * i11i1Iii1I1[20] + 21 * i11i1Iii1I1[21] + 232 * i11i1Iii1I1[22] + 23 * i11i1Iii1I1[23] - 24 * i11i1Iii1I1[24]) + 25 * i11i1Iii1I1[25] - 26 * i11i1Iii1I1[26] == 948348, ((((((97 * i11i1Iii1I1[0] - 22 * i11i1Iii1I1[1]) + 6969 * i11i1Iii1I1[2] + 4 * i11i1Iii1I1[3] - 56 * i11i1Iii1I1[4]) + 96 * i11i1Iii1I1[5] - 6 * i11i1Iii1I1[6]) + 96 * i11i1Iii1I1[7] - 60 * i11i1Iii1I1[8] - 20 * i11i1Iii1I1[9]) + 99 * i11i1Iii1I1[10] + 3 * i11i1Iii1I1[11] + 10 * i11i1Iii1I1[12] + 707 * i11i1Iii1I1[13] + 250 * i11i1Iii1I1[14] + 666 * i11i1Iii1I1[15] + -9 * i11i1Iii1I1[16] + 90 * i11i1Iii1I1[17] + -2 * i11i1Iii1I1[18] + 609 * i11i1Iii1I1[19] + 0 * i11i1Iii1I1[20] + 21 * i11i1Iii1I1[21] + 2 * i11i1Iii1I1[22] + 23 * i11i1Iii1I1[23] - 24 * i11i1Iii1I1[24]) + 25 * i11i1Iii1I1[25] - 26 * i11i1Iii1I1[26]) + 27 * i11i1Iii1I1[27] == 777044, (((((177 * i11i1Iii1I1[0] - 22 * i11i1Iii1I1[1]) + 699 * i11i1Iii1I1[2] + 64 * i11i1Iii1I1[3] - 56 * i11i1Iii1I1[4] - 96 * i11i1Iii1I1[5] - 66 * i11i1Iii1I1[6]) + 96 * i11i1Iii1I1[7] - 60 * i11i1Iii1I1[8] - 20 * i11i1Iii1I1[9]) + 99 * i11i1Iii1I1[10] + 3 * i11i1Iii1I1[11] + 10 * i11i1Iii1I1[12] + 707 * i11i1Iii1I1[13] + 250 * i11i1Iii1I1[14] + 666 * i11i1Iii1I1[15] + -9 * i11i1Iii1I1[16] + 0 * i11i1Iii1I1[17] + -2 * i11i1Iii1I1[18] + 69 * i11i1Iii1I1[19] + 0 * i11i1Iii1I1[20] + 21 * i11i1Iii1I1[21] + 222 * i11i1Iii1I1[22] + 23 * i11i1Iii1I1[23] - 224 * i11i1Iii1I1[24]) + 25 * i11i1Iii1I1[25] - 26 * i11i1Iii1I1[26]) + 27 * i11i1Iii1I1[27] - 28 * i11i1Iii1I1[28] == 185016, ((((((77 * i11i1Iii1I1[0] - 2 * i11i1Iii1I1[1]) + 6 * i11i1Iii1I1[2] + 6 * i11i1Iii1I1[3] - 96 * i11i1Iii1I1[4] - 9 * i11i1Iii1I1[5] - 6 * i11i1Iii1I1[6]) + 96 * i11i1Iii1I1[7] - 0 * i11i1Iii1I1[8] - 20 * i11i1Iii1I1[9]) + 99 * i11i1Iii1I1[10] + 3 * i11i1Iii1I1[11] + 10 * i11i1Iii1I1[12] + 707 * i11i1Iii1I1[13] + 250 * i11i1Iii1I1[14] + 666 * i11i1Iii1I1[15] + -9 * i11i1Iii1I1[16] + 0 * i11i1Iii1I1[17] + -2 * i11i1Iii1I1[18] + 9 * i11i1Iii1I1[19] + 0 * i11i1Iii1I1[20] + 21 * i11i1Iii1I1[21] + 222 * i11i1Iii1I1[22] + 23 * i11i1Iii1I1[23] - 224 * i11i1Iii1I1[24]) + 26 * i11i1Iii1I1[25] - -58 * i11i1Iii1I1[26]) + 27 * i11i1Iii1I1[27] - 2 * i11i1Iii1I1[28]) + 29 * i11i1Iii1I1[29] == 130106] if all(ii1iIi1i11i): print('Congratulation!!!') else: print('wrong_wrong!!!')
就是统计了每个字符出现次数,然后弄了大把的公式,直接丢给ai生成z3求解器求解from z3 import *
s = Solver()
# 定义30个变量(对应iiIII的前30个字符的ASCII值)
vars = [Int(f'c_{i}') for i in range(30)]
# 约束:ASCII可打印字符(32-126)
for v in vars:
s.add(v >= 32, v <= 126)
# 添加方程(直接从原代码复制并调整)
s.add(7 * vars[0] == 504)
s.add(9 * vars[0] - 5 * vars[1] == 403)
s.add((2 * vars[0] - 5 * vars[1]) + 10 * vars[2] == 799)
s.add(3 * vars[0] + 8 * vars[1] + 15 * vars[2] + 20 * vars[3] == 2938)
s.add((5 * vars[0] + 15 * vars[1] + 20 * vars[2] - 19 * vars[3]) + 1 * vars[4] == 2042)
s.add((7 * vars[0] + 1 * vars[1] + 9 * vars[2] - 11 * vars[3]) + 2 * vars[4] + 5 * vars[5] == 1225)
s.add(11 * vars[0] + 22 * vars[1] + 33 * vars[2] + 44 * vars[3] + 55 * vars[4] + 66 * vars[5] - 77 * vars[6] == 7975)
s.add((21 * vars[0] + 23 * vars[1] + 3 * vars[2] + 24 * vars[3] - 55 * vars[4]) + 6 * vars[5] - 7 * vars[6] + 15 * vars[7] == 229)
s.add((2 * vars[0] + 26 * vars[1] + 13 * vars[2] + 0 * vars[3] - 65 * vars[4]) + 15 * vars[5] + 29 * vars[6] + 1 * vars[7] + 20 * vars[8] == 2107)
s.add((10 * vars[0] + 7 * vars[1] + -9 * vars[2] + 6 * vars[3] + 7 * vars[4] + 1 * vars[5] + 22 * vars[6] + 21 * vars[7] - 22 * vars[8]) + 30 * vars[9] == 4037)
s.add((15 * vars[0] + 59 * vars[1] + 56 * vars[2] + 66 * vars[3] + 7 * vars[4] + 1 * vars[5] - 122 * vars[6]) + 21 * vars[7] + 32 * vars[8] + 3 * vars[9] - 10 * vars[10] == 4950)
s.add((13 * vars[0] + 66 * vars[1] + 29 * vars[2] + 39 * vars[3] - 33 * vars[4]) + 13 * vars[5] - 2 * vars[6] + 42 * vars[7] + 62 * vars[8] + 1 * vars[9] - 10 * vars[10] + 11 * vars[11] == 12544)
s.add((23 * vars[0] + 6 * vars[1] + 29 * vars[2] + 3 * vars[3] - 3 * vars[4]) + 63 * vars[5] - 25 * vars[6] + 2 * vars[7] + 32 * vars[8] + 1 * vars[9] - 10 * vars[10] + 11 * vars[11] - 12 * vars[12] == 6585)
s.add((223 * vars[0] + 6 * vars[1] - 29 * vars[2] - 53 * vars[3] - 3 * vars[4]) + 3 * vars[5] - 65 * vars[6] + 0 * vars[7] + 36 * vars[8] + 1 * vars[9] - 15 * vars[10] + 16 * vars[11] - 18 * vars[12] + 13 * vars[13] == 6893)
s.add((29 * vars[0] + 13 * vars[1] - 9 * vars[2] - 93 * vars[3]) + 33 * vars[4] + 6 * vars[5] + 65 * vars[6] + 1 * vars[7] - 36 * vars[8] + 0 * vars[9] - 16 * vars[10] + 96 * vars[11] - 68 * vars[12] + 33 * vars[13] - 14 * vars[14] == 1883)
s.add((69 * vars[0] + 77 * vars[1] - 93 * vars[2] - 12 * vars[3]) + 0 * vars[4] + 0 * vars[5] + 1 * vars[6] + 16 * vars[7] + 36 * vars[8] + 6 * vars[9] + 19 * vars[10] + 66 * vars[11] - 8 * vars[12] + 38 * vars[13] - 16 * vars[14] + 15 * vars[15] == 8257)
s.add((23 * vars[0] + 2 * vars[1] - 3 * vars[2] - 11 * vars[3]) + 12 * vars[4] + 24 * vars[5] + 1 * vars[6] + 6 * vars[7] + 14 * vars[8] - 0 * vars[9] + 1 * vars[10] + 68 * vars[11] - 18 * vars[12] + 68 * vars[13] - 26 * vars[14] + 15 * vars[15] - 16 * vars[16] == 5847)
s.add((24 * vars[0] + 0 * vars[1] - 1 * vars[2] - 15 * vars[3]) + 13 * vars[4] + 4 * vars[5] + 16 * vars[6] + 67 * vars[7] + 146 * vars[8] - 50 * vars[9] + 16 * vars[10] + 6 * vars[11] - 1 * vars[12] + 69 * vars[13] - 27 * vars[14] + 45 * vars[15] - 6 * vars[16] + 17 * vars[17] == 18257)
s.add((25 * vars[0] + 26 * vars[1] - 89 * vars[2]) + 16 * vars[3] + 19 * vars[4] + 44 * vars[5] + 36 * vars[6] + 66 * vars[7] - 150 * vars[8] - 250 * vars[9] + 166 * vars[10] + 126 * vars[11] - 11 * vars[12] + 690 * vars[13] - 207 * vars[14] + 46 * vars[15] + 6 * vars[16] + 7 * vars[17] - 18 * vars[18] == 12591)
s.add((5 * vars[0] + 26 * vars[1] + 8 * vars[2] + 160 * vars[3] + 9 * vars[4] - 4 * vars[5]) + 36 * vars[6] + 6 * vars[7] - 15 * vars[8] - 20 * vars[9] + 66 * vars[10] + 16 * vars[11] - 1 * vars[12] + 690 * vars[13] - 20 * vars[14] + 46 * vars[15] + 6 * vars[16] + 7 * vars[17] - 18 * vars[18] + 19 * vars[19] == 52041)
s.add((29 * vars[0] - 26 * vars[1]) + 0 * vars[2] + 60 * vars[3] + 90 * vars[4] - 4 * vars[5] + 6 * vars[6] + 6 * vars[7] - 16 * vars[8] - 21 * vars[9] + 69 * vars[10] + 6 * vars[11] - 12 * vars[12] + 69 * vars[13] - 20 * vars[14] - 46 * vars[15] + 65 * vars[16] + 0 * vars[17] - 1 * vars[18] + 39 * vars[19] - 20 * vars[20] == 20253)
s.add((45 * vars[0] - 56 * vars[1]) + 10 * vars[2] + 650 * vars[3] - 900 * vars[4] + 44 * vars[5] + 66 * vars[6] - 6 * vars[7] - 6 * vars[8] - 21 * vars[9] + 9 * vars[10] - 6 * vars[11] - 12 * vars[12] + 69 * vars[13] - 2 * vars[14] - 406 * vars[15] + 651 * vars[16] + 2 * vars[17] - 10 * vars[18] + 69 * vars[19] - 0 * vars[20] + 21 * vars[21] == 18768)
s.add((555 * vars[0] - 6666 * vars[1]) + 70 * vars[2] + 510 * vars[3] - 90 * vars[4] + 499 * vars[5] + 66 * vars[6] - 66 * vars[7] - 610 * vars[8] - 221 * vars[9] + 9 * vars[10] - 23 * vars[11] - 102 * vars[12] + 6 * vars[13] + 2050 * vars[14] - 406 * vars[15] + 665 * vars[16] + 333 * vars[17] + 100 * vars[18] + 609 * vars[19] + 777 * vars[20] + 201 * vars[21] - 22 * vars[22] == 111844)
s.add((1 * vars[0] - 22 * vars[1]) + 333 * vars[2] + 4444 * vars[3] - 5555 * vars[4] + 6666 * vars[5] - 666 * vars[6] + 676 * vars[7] - 660 * vars[8] - 22 * vars[9] + 9 * vars[10] - 73 * vars[11] - 107 * vars[12] + 6 * vars[13] + 250 * vars[14] - 6 * vars[15] + 65 * vars[16] + 39 * vars[17] + 10 * vars[18] + 69 * vars[19] + 777 * vars[20] + 201 * vars[21] - 2 * vars[22] + 23 * vars[23] == 159029)
s.add((520 * vars[0] - 222 * vars[1]) + 333 * vars[2] + 4 * vars[3] - 56655 * vars[4] + 6666 * vars[5] + 666 * vars[6] + 66 * vars[7] - 60 * vars[8] - 220 * vars[9] + 99 * vars[10] + 73 * vars[11] + 1007 * vars[12] + 7777 * vars[13] + 2500 * vars[14] + 6666 * vars[15] + 605 * vars[16] + 390 * vars[17] + 100 * vars[18] + 609 * vars[19] + 99999 * vars[20] + 210 * vars[21] + 232 * vars[22] + 23 * vars[23] - 24 * vars[24] == 2762025)
s.add((1323 * vars[0] - 22 * vars[1]) + 333 * vars[2] + 4 * vars[3] - 55 * vars[4] + 666 * vars[5] + 666 * vars[6] + 66 * vars[7] - 660 * vars[8] - 220 * vars[9] + 99 * vars[10] + 3 * vars[11] + 100 * vars[12] + 777 * vars[13] + 2500 * vars[14] + 6666 * vars[15] + 605 * vars[16] + 390 * vars[17] + 100 * vars[18] + 609 * vars[19] + 9999 * vars[20] + 210 * vars[21] + 232 * vars[22] + 23 * vars[23] - 24 * vars[24] + 25 * vars[25] == 1551621)
s.add((777 * vars[0] - 22 * vars[1]) + 6969 * vars[2] + 4 * vars[3] - 55 * vars[4] + 666 * vars[5] - 6 * vars[6] + 96 * vars[7] - 60 * vars[8] - 220 * vars[9] + 99 * vars[10] + 3 * vars[11] + 100 * vars[12] + 777 * vars[13] + 250 * vars[14] + 666 * vars[15] + 65 * vars[16] + 90 * vars[17] + 100 * vars[18] + 609 * vars[19] + 999 * vars[20] + 21 * vars[21] + 232 * vars[22] + 23 * vars[23] - 24 * vars[24] + 25 * vars[25] - 26 * vars[26] == 948348)
s.add((97 * vars[0] - 22 * vars[1]) + 6969 * vars[2] + 4 * vars[3] - 56 * vars[4] + 96 * vars[5] - 6 * vars[6] + 96 * vars[7] - 60 * vars[8] - 20 * vars[9] + 99 * vars[10] + 3 * vars[11] + 10 * vars[12] + 707 * vars[13] + 250 * vars[14] + 666 * vars[15] + -9 * vars[16] + 90 * vars[17] + -2 * vars[18] + 609 * vars[19] + 0 * vars[20] + 21 * vars[21] + 2 * vars[22] + 23 * vars[23] - 24 * vars[24] + 25 * vars[25] - 26 * vars[26] + 27 * vars[27] == 777044)
s.add((177 * vars[0] - 22 * vars[1]) + 699 * vars[2] + 64 * vars[3] - 56 * vars[4] - 96 * vars[5] - 66 * vars[6] + 96 * vars[7] - 60 * vars[8] - 20 * vars[9] + 99 * vars[10] + 3 * vars[11] + 10 * vars[12] + 707 * vars[13] + 250 * vars[14] + 666 * vars[15] + -9 * vars[16] + 0 * vars[17] + -2 * vars[18] + 69 * vars[19] + 0 * vars[20] + 21 * vars[21] + 222 * vars[22] + 23 * vars[23] - 224 * vars[24] + 25 * vars[25] - 26 * vars[26] + 27 * vars[27] - 28 * vars[28] == 185016)
s.add((77 * vars[0] - 2 * vars[1]) + 6 * vars[2] + 6 * vars[3] - 96 * vars[4] - 9 * vars[5] - 6 * vars[6] + 96 * vars[7] - 0 * vars[8] - 20 * vars[9] + 99 * vars[10] + 3 * vars[11] + 10 * vars[12] + 707 * vars[13] + 250 * vars[14] + 666 * vars[15] + -9 * vars[16] + 0 * vars[17] + -2 * vars[18] + 9 * vars[19] + 0 * vars[20] + 21 * vars[21] + 222 * vars[22] + 23 * vars[23] - 224 * vars[24] + 26 * vars[25] - -58 * vars[26] + 27 * vars[27] - 2 * vars[28] + 29 * vars[29] == 130106)
# 求解
if s.check() == sat:
m = s.model()
solution = [m[vars[i]].as_long() for i in range(30)]
print("iiIII的前30个字符的ASCII值:", solution)
print("对应的字符串:", ''.join([chr(c) for c in solution]))
else:
print("无解")
得出H1Z1N1U1C1T1F1{1a6d275f7-463}1
前面都不用看了,就是固定格式,a6d275f7-463,说明a出现6次 d出现2次这样。
O0o00 != '111111116257645365477364777645752361
前面的111不用管了,后面的1是},对着这个来看,6代表的就是a 2代表d 5代表的是7这样子,
对着这样搓出来ad7fa-76a7-ff6a-fffa-7f7d6a
浙公网安备 33010602011771号