标题: XOR相关的趣味数学题(2) 创建: 2020-07-15 22:18 更新: 2020-08-31 17:00 链接: https://scz.617.cn/misc/202007152218.txt 如果求解题(1)时感觉比较费力,不要轻易尝试题(2)。 背景参看: 《XOR相关的趣味数学题(1)》 https://scz.617.cn/misc/202007101723.txt 有若干网友各自独立地、飞快地从secret.msg.enc析取出敏感信息: The Big Brother is watching you! 再后来,陆续有网友通过微信、微博给出64字节的xorkey,我没有仔细检查,但大体 上看过去,是正确的。 其中有部分网友通过简单处理,猜测、推测出明文的前几个单词,然后放狗搜中明文 的前64字节,进而还原出xorkey。单就题(1)本身而言,这不失一种策略。在逆向工程 中善用搜索引擎是很好的开始。 另有一些网友还停留在YY阶段。具体编程实现的时候,如何判断解密成功,这本身是 个技术活,这是穷举猜测的约束条件。更进一步,要避免基于xorkey各字节候选集的 全排列穷举;假设keysize是64,就算每个字节有2个候选,2的64次方是什么概念? 之所以明说了keysize=64,就是想降低难度,让初次接触此类问题的人去工程实践并 给出答案,而不是说一些似是而非的理论解,那有毛用,现代赵括。相比之下,动用 搜索引擎的都不知强出这种YY党多少倍。 回过头来说正事,推荐这两篇: Part 2: Breaking Repeating Key XOR, the Theory - Carter Bancroft [2019-07-02] https://carterbancroft.com/breaking-repeating-key-xor-theory/ Part 3: Breaking Repeating Key XOR Programmatically - Carter Bancroft [2019-07-03] https://carterbancroft.com/breaking-repeating-key-xor-programmatically/ 看完之后不妨动手实践一番,就以题(1)中的secret.msg.enc为目标,检验一下学习 成色。如果涉猎较广,不妨再试试模拟退火算法,对比一下解密效果;这种方案虽然 求解速度较慢,却是一种通用思路,可以解决其他问题。或许题(1)诸多应答者另有 第三种、第四种高招,我没有细问过他们。 题(1)留言区myvyang这样写道: -------------------------------------------------------------------------- 基于enc[1]^enc[2]=plain[1]^plain[2],把密文分成21组分别异或可以得到明文的 异或结果。选择一组plain[0],因为英文里面有很多空格,因此两个明文异或,空格 和字母的异或结果是大小写翻转,加上[., ]和空格的异或结果,如果其他20组和 plain[0]的异或结果字符在这个范围内,就当把明文解密出来了。循环跑一遍,可以 还原绝大多数原文。 -------------------------------------------------------------------------- Peter Zhang指出,myvyang的解法原理和这篇文章类似: 流加密算法XOR解密 - Jason Ye [2016-03-17] https://jasonye.xyz/2016/03/17/stream-cipher-xor/ 这个算法不错,题(1)还原后的xorkey只有3个字节不匹配,而且运气很好,敏感信息 直接还原成功。 部分题(1)的应答者显然手中有了求解程序,本文出一道新题,稍微加大了求解难度, 你们如果仍有兴趣,可以用新题验证一下自己的算法。 已知secret3.msg是一段英文,对之进行异或加密得到secret3.msg.enc。 $ xxd -g 1 secret3.msg.enc 00000000: 41 f2 db d3 06 dd be 5b ef 09 98 8b 7e 3a 64 ac A......[....~:d. 00000010: 2f 6f ea c1 13 31 41 aa 06 d6 26 e5 72 e1 70 22 /o...1A...&.r.p" 00000020: 65 2a 30 b3 58 7a 5b fd eb 11 02 6a 8b e0 86 c8 e*0.Xz[....j.... 00000030: 87 d6 92 9f f3 07 2f 2b d9 47 7a 67 a5 5c 84 3a ....../+.Gzg.\.: 00000040: c0 c8 8b bf 73 ab 38 77 bc cb 6d 02 6c 7c 3a 21 ....s.8w..m.l|:! 00000050: bc 15 8d 83 58 98 c4 1b 9d b6 56 0f 06 8f 14 14 ....X.....V..... 00000060: 04 49 23 f5 b1 67 49 e8 d9 a2 4b 0e a1 42 3f 27 .I#..gI...K..B?' 00000070: b8 4a c5 17 2f c2 e4 86 52 e4 30 6c 2f ac e6 8f .J../...R.0l/... 00000080: 7b ac cc 41 74 38 70 be 8e 20 5d 15 19 6e 35 81 {..At8p.. ]..n5. 00000090: ef 82 b8 c4 e8 79 f3 7a 01 5a 62 81 21 d7 d8 14 .....y.z.Zb.!... 000000a0: b1 83 e3 4f 8c 12 d1 6d 9b d6 1e fc b8 65 f6 d7 ...O...m.....e.. 000000b0: 80 4e d1 a7 4c a1 0e 99 cc 3b 7e 48 ed 6d 6b f0 .N..L....;~H.mk. 000000c0: c4 47 20 4a aa 1c d0 37 e5 67 a9 66 67 78 2a 3c .G J...7.g.fgx*< 000000d0: b0 4e 73 0e ac 86 1d 03 7d ce e9 c3 c5 82 ce d7 .Ns.....}....... 000000e0: cb f4 46 30 20 8f 4c 66 67 ed 41 82 38 8d 9c 8d ..F0 .Lfg.A.8... 000000f0: f1 37 b0 70 65 f5 cc 71 4d 7b 7f 7f 6c ae 13 8f .7.pe..qM{..l... 00000100: 8b 59 da 91 21 9d b0 57 0e 14 d6 40 1e 14 1d 21 .Y..!..W...@...! 00000110: e9 bf 31 45 a6 c1 a8 4c 12 e8 45 36 27 b8 4d 80 ..1E...L..E6'.M. 00000120: 53 33 96 fc 8c 4d ac 7f 2d 3a a2 ed 9e 2b e3 80 S3...M..-:...+.. 00000130: 6f 74 38 6a b3 86 2d 46 15 24 26 27 92 e4 d6 b4 ot8j..-F.$&'.... 00000140: d3 e8 63 f3 7a 16 47 7e 92 30 cd c4 5a b6 83 eb ..c.z.G~.0..Z... 00000150: 4b 8c 1d d5 77 95 93 0b f7 f7 61 f2 d7 80 55 c5 K...w.....a...U. 00000160: b3 43 e4 03 82 cc 33 74 49 ac 39 6b fa 93 08 36 .C....3tI.9k...6 00000170: 4f ef 0a d7 7c e5 52 af 67 67 6a 38 21 b8 49 3f O...|.R.ggj8!.I? 00000180: 18 b0 c8 03 19 7f df f9 8d c0 d7 d7 96 d1 e2 46 ...............F 00000190: 3d 27 9a 5d 7c 7c a3 54 98 34 85 cf c4 f0 79 a8 ='.]||.T.4....y. 000001a0: 71 6e b0 93 25 6b 38 72 2a 73 bb 09 81 9c 0d 97 qn..%k8r*s...... 000001b0: de 06 db b2 4b 0c 06 92 14 02 19 5c 77 a1 b3 3e ....K......\w..> 000001c0: 00 e9 dd ae 5f 13 ef 4a 3d 27 a9 5a d0 45 39 c5 ...._..J='.Z.E9. 000001d0: f8 8c 56 aa 7d 7e 35 a8 f6 97 3d a2 8e 66 2d 6f ..V.}~5...=..f-o 000001e0: 75 b9 89 24 1b 15 12 3b 36 c0 f2 99 b0 c5 a0 62 u..$...;6......b 000001f0: eb 7a 10 4a 77 d3 2b d6 c2 53 ac 85 e3 57 8c 0c .z.Jw.+..S...W.. 00000200: d5 6d 96 93 00 fa b2 35 f0 c7 d3 52 90 a2 4c e4 .m.....5...R..L. 00000210: 0d 85 cc 33 79 4e e9 3d 77 fe d1 0b 31 05 fe 06 ...3yN.=w...1... 00000220: 83 3f a0 3f e1 62 33 2b 32 30 bc 48 6b 5b b2 df .?.?.b3+20.Hk[.. 00000230: 50 05 7d df e5 8a d3 9e d5 99 9f f2 08 3a 22 90 P.}..........:". 00000240: 47 70 60 ed 41 85 7d 84 d9 81 f2 37 b0 70 65 f5 Gp`.A.}....7.pe. 00000250: cc 60 4c 6c 71 31 62 aa 41 87 81 5f 86 d4 0b c9 .`Llq1b.A.._.... 00000260: f5 19 20 10 d6 40 19 51 50 7a a1 ab 29 44 e3 dd .. ..@.QPz..)D.. 00000270: b4 4c 1b ef 4f 38 69 ab 0e 80 43 34 d3 ab 96 4d .L..O8i...C4...M 00000280: b6 28 6e 29 b2 f1 9e 79 ed 8a 23 79 70 62 f6 94 .(n)...y..#ypb.. 00000290: 26 5b 41 35 20 21 85 a1 84 b8 d3 ad 60 fe 36 01 &[A5 !......`.6. 000002a0: 51 32 87 2c c1 8b 51 bd 9b f0 5e df 0c d9 6c 8c Q2.,..Q...^...l. 000002b0: d6 4c e9 b8 60 f4 d6 80 52 d8 b4 09 ef 01 9f 80 .L..`...R....... 000002c0: 72 6d 44 f8 25 23 fe 93 0f 35 48 e7 0c d1 70 eb rmD.%#...5H...p. 000002d0: 33 83 76 2b 67 2d 3d b4 4f 33 5b ab ce 15 4c 55 3.v+g-=.O3[...LU 000002e0: c7 f1 84 87 9e c9 d7 d7 f2 02 3d 2b 97 09 7d 76 ..........=+..}v 000002f0: bf 50 c6 7d c2 eb 8c fe 63 e4 79 72 b0 9f 7c 4d .P.}....c.yr..|M 00000300: 6d 34 33 6e a0 0a 8d 80 4a d4 d7 07 cf e4 19 49 m43n....J......I 00000310: 43 95 5e 56 2f 1d 65 f0 fe 6e 00 a3 8f a0 40 5a C.^V/.e..n....@Z 00000320: bc 16 71 5c ec 4a d8 17 76 9c ab 8f 5f e4 00 2d ..q\.J..v..._..- 00000330: 72 e8 a3 91 28 a0 c0 23 74 7d 66 be cb 63 41 5d r...(..#t}f..cA] 00000340: 39 3d 62 93 f5 84 bc ce af 68 bc 29 01 4c 66 96 9=b......h.).Lf. 00000350: 2a c7 ce 14 ac 98 a2 4f c4 1a 90 45 8e 97 09 b5 *......O...E.... 00000360: f7 72 f5 c6 80 4f c4 ee 24 8b 6d fc ae 27 6e 0d .r...O..$.m..'n. 00000370: c5 6d 68 f1 d6 10 74 6c aa 1e c2 21 e5 64 b3 6c .mh...tl...!.d.l 00000380: 29 6c 72 75 94 1b 75 0e ac d2 50 0f 7c de fc 87 )lru..u...P.|... 00000390: 87 99 d5 83 9f fd 0f 37 2a d9 5d 7d 76 ed 47 8b .......7*.]}v.G. 000003a0: 29 89 d3 8a fe 7b a1 38 74 ba 9f 60 5a 68 78 3e )....{.8t..`Zhx> 000003b0: 68 a1 41 93 8b 41 98 91 1f d5 a2 17 6c 69 fb 3e h.A..A......li.> 000003c0: 22 19 58 6d a1 97 67 54 f3 dd a9 5d 1e a1 5f 3e ".Xm..gT...].._> 000003d0: 27 a1 5b 80 43 39 d7 e8 8d 5c b6 7d 6b 32 b5 a3 '.[.C9...\.}k2.. 000003e0: 93 3c ee 9c 2f 2d 79 69 b2 c7 37 5d 50 3e 6e 2a .<../-yi..7]P>n* 000003f0: 85 a1 97 b3 d3 bf 68 ee 3f 00 02 7f 96 68 84 c6 ......h.?....h.. 00000400: 4d e5 8e fa 4b de 1a c3 70 8b 99 00 b9 be 66 ba M...K...p.....f. 00000410: d1 cf 4b c0 bd 4c f5 05 9a 95 72 79 42 fe 3f 66 ..K..L....ryB.?f 00000420: fc c7 49 74 6d e7 04 ce 7e e5 67 a9 62 33 2c 2d ..Itm...~.g.b3,- 00000430: 75 b6 52 71 1f be 86 19 02 67 ce e2 86 d4 83 d3 u.Rq.....g...... 00000440: 99 d8 b5 48 77 60 f4 23 18 19 8c 15 8c 38 97 9c ...Hw`.#.....8.. 00000450: 80 fe 6e b7 38 61 b2 d0 29 02 51 34 3c 60 a2 04 ..n.8a..).Q4<`.. 00000460: c4 8f 4e 86 de 1b ce fb 58 0f 0c 82 5c 13 03 1d ..N.....X...\... 00000470: 70 e4 b0 34 54 e3 c1 a4 5d 5a a3 47 38 74 b8 47 p..4T...]Z.G8t.G 00000480: ce 17 3d d8 ef c5 5f ab 31 61 32 b0 a3 8f 31 e7 ..=..._.1a2...1. 00000490: cc 67 64 6a 62 b5 93 2a 5a 5b 23 6e 2d 86 a1 8f .gdjb..*Z[#n-... 000004a0: b2 d5 ba 2d f0 35 07 43 7e d3 25 d1 df 5c aa 99 ...-.5.C~.%..\.. 000004b0: eb 4f c5 1a c3 21 ce d6 07 b9 bc 7b ff c5 80 04 .O...!.....{.... 000004c0: dc b8 5a f5 05 98 cc 33 74 49 ac 2b 6c f3 df 08 ..Z....3tI.+l... 000004d0: 23 05 f9 1d cb 70 e5 7a b2 23 26 2b 3d 3a b0 56 #....p.z.#&+=:.V 000004e0: 70 15 ff d3 03 0d 74 ce bc c3 c5 82 ce d7 f6 bb p.....t......... 000004f0: 0c 2c 3d 8d 09 76 7c b8 59 8e 7d 8e d3 90 bf 72 .,=..v|.Y.}....r 00000500: bc 68 6c b4 d6 6b 02 6f 7c 26 21 a6 12 c4 80 42 .hl..k.o|&!....B 00000510: 80 91 4a d1 b2 4a 15 06 98 14 02 1e 1d 62 ef ba ..J..J.......b.. 00000520: 67 46 e9 c3 ab 57 0d a3 05 71 53 a4 47 ce 17 28 gF...W...qS.G..( 00000530: d3 ea 86 51 a1 2f 2d 29 a8 ef 9f 79 ef 89 23 79 ...Q./-)...y..#y 00000540: 70 66 a2 c7 3a 5a 40 70 26 23 96 e4 d6 a9 cf e8 pf..:Z@p&#...... 00000550: 7e f9 3f 44 4b 66 d3 25 d7 8b 55 e5 9c ea 54 c0 ~.?DKf.%..U...T. 00000560: 1a 90 6a 8c 85 1a fc b6 71 ba dd c6 06 d1 f1 5a ..j.....q......Z 00000570: e8 0e 91 80 37 3a 5b e9 3f 61 b1 be 6d 59 2f de ....7:[.?a..mY/. 00000580: 01 c6 21 a0 33 ac 6a 20 63 2a 75 bf 5e 3f 0a aa ..!.3.j c*u.^?.. 00000590: cf 04 09 33 d8 e4 91 c6 9e dd 9f cb fd 09 2b 39 ...3..........+9 000005a0: 98 5b 71 33 b9 5a ca 2e 8f d1 81 bf 78 a2 38 79 .[q3.Z......x.8y 000005b0: ba ca 25 45 6d 6d 2c 2d ef 03 91 9a 0d 80 de 48 ..%Emm,-.......H 000005c0: d0 be 15 41 0a 82 14 1f 02 1d 6d ee aa 67 54 ee ...A......m..gT. 000005d0: ca e7 5b 1b f2 4e 7f ..[..N. 求解明文中包含的敏感信息。 我假设题(2)的应答者都是有现成求解程序的,此时就算多猜几次keysize也不是什么 难事,毕竟明文是英文文章,这个特异性足够,所以我干脆没说keysize的取值范围。 为了不减少其他应答者的乐趣,我不会回答keysize的问题。但你可以直接说答案, 如果正确,我会明说。 做完题(1)、题(2),再碰上此类问题,不敢说百分之百搞掂,至少可以无所畏惧。 这里有个难度很低的同型挑战: https://cryptopals.com/sets/1/challenges/6 能Google到不少求解程序,可参考。 此类题目本身没有价值,求解时掌握的技能、经验有价值,我换个问法,你的求解程 序是否同时适用于题(1)、题(2)和上述挑战?能否直接给出最终精确解,无需后期手 工修正?题(1)难度较低,空格匹配法求解结果非常接近精确解,基于字母频率的评 估算法可以直接精确求解。题(2)难度上升,如果只是打CTF,可以先用某些简单算法 求近似解,再辅以后期手工修正,但我鼓励有技术追求的朋友寻求更优异的算法直接 精确求解。Peter Zhang、bluerust各自独立提及基于高频单词的评估算法,前者在 微信后台简要提过几句,后者有个NB实现让我围观过。 高频单词可以参考: https://github.com/first20hours/google-10000-english 字母频率可以参考: https://en.wikipedia.org/wiki/Letter_frequency 2020-08-29 20:44 ID为"蔡"的网友在题(2)留言区给出了解答,以下是他的原话。 -------------------------------------------------------------------------- 分组大小应该是173,我用了很笨的办法猜出隐藏信息为: Bullshit, the Flag is hidden here, "What are you looking for? ( cj ^ fq ) % gx == [ hx ** jf ] // jq", yeah, this strange sentence is the Flag -------------------------------------------------------------------------- 答案正确。 2020-08-31 17:32 Yinhong 2019年出的DDCTF Question中包含此型问题,其中一道如下: Question: MulTzor Solution: Basic multi-byte xor decryption based on frequency analysis of English text. Set as an entry-level simple question. Many tools exist to decode this, level of difficulty can be increased by using non-english language if needed. Ciphertext: 9f01d02d8caef42cc33885a9fc31823b9afae12ac774b9b4fc25cf35dcb9fc32ca318eb3fb25822785a9e127cf7499b4f420ce3198fae12ac7748bbfe636c72692fad42ece3d99a9b52bcc74abb5e72ec674abbbe762eb1ddcaefa62d0319dbeb531d7368faef42cd63d9db6b523cf3b89b4e131823b9afad82dd02799f7f62dc63198fae723c63d93faf62dcf3989b4fc21c32095b5fb31823b9afae12ac774bda2fc31822493adf030d17488b2f436823c9dbeb520c73192faf02cc13d8cb2f030c730dcafe62bcc33dc9ffb2bc5399dfaf823c13c95b4f0318c74a8b2fc31822d95bff926c730dcb7fc2ecb209da8ec62cb3a88bff92ecb3399b4f627822394b3f62a8e749db6fa2cc5748bb3e12a822094bbe162c42693b7b52dd63c99a8b526c7378ea3e536c730dc9bed2bd1748ebbf12bcd749db4f162d63190bfe530cb3a88bfe762d6269db4e62fcb278fb3fa2cd178dcadf431823395acf02c822094bfb521cd3099b4f42fc774a9b6e130c37adc8efd2bd1748bbbe662c13b92a9fc26c72699beb520db748bbfe636c72692fac637d22699b7f062e33890b3f026821793b7f823cc3099a8b506d53d9bb2e162e67adc9ffc31c73a94b5e227d07488b5b52ac32299faf727c73adcf8f127c13d8fb3e327807488b5b536ca31dc9bf92ecb3198fae32bc12093a8ec6ca85ea8b2f062e73a95bdf82382399db9fd2bcc318ffae227d031dcbbb524c33995b6ec62cd32dcaafa30d6359eb6f062c13d8cb2f03082399db9fd2bcc318ffae22bd63cdca8fa36cd26dca9f630c3399eb6f030d17adc9dfa2dc67493aaf030c32095b4f262d22693b9f026d72699a9b962d22693aaf030ce2ddcbffb24cd269fbff16e822393aff926823c9dacf062cf3598bfb536ca31dcaaf937c53693bbe726821192b3f22fc37491bbf62acb3a99fae02cc02699bbfe23c03899f4b50acd2399acf0308e7491b5e636823b9afae12ac774bbbfe72fc33adcb7fc2ecb209da8ec62c43b8eb9f0318e748fbff630c720dca9f030d43d9fbfe662c33a98faf62bd43d90b3f42c82359bbffb21cb318ffae12ac320dcafe627c674b9b4fc25cf35dcbff832ce3b85bff162d23b93a8b52dd2318ebbe12bcc33dcaae72dc13198afe727d178dcbbfb26823d88fae223d17488b2f031c7748cb5fa3082248eb5f627c6218ebfe662d63c9daeb523ce3893adf026822094bfb507cc3d9bb7f462cf359fb2fc2cc727dcaefa62c031dca8f034c7268fbfb827cc3395b4f027d03198faf42cc67488b2f062c13d8cb2f030d17488b5b520c7748ebff4268c5ef68efd27821399a8f823cc748cb6e025c03b9da8f16fc72589b3e532c730dc9ffb2bc5399dfaf727c13591bfb50cc32e95fad227d0399db4ec65d1748ca8fc2cc13d8cbbf962c12685aae12d8f2785a9e127cf7adc93e162d5358ffaf730cd3f99b4b520db7488b2f062f23b90b3e62a821399b4f030c338dc89e123c432dba9b501cb2494bfe762e0218ebff437823d92fad127c13191b8f0308265c5e9a76e822395aefd62d63c99faf42bc67493bcb504d03192b9fd6fd1218caaf92bc730dcb3fb36c73890b3f227cc3799faf823d6318eb3f42e823b9eaef42bcc3198faf330cd39dcbbb505c72691bbfb62d12485f4b503823993b4e12a823699bcfa30c77488b2f062cd2188b8e727c33fdcb5f362f53b8eb6f162f5358efadc0b8e749daeb523823793b4f327d03192b9f062ca3190beb52cc7358efac223d0279dadb962d63c99fac52dce3d8fb2b501cb2494bfe762e0218ebff437822794bbe727c67495aee662e73a95bdf8238f368ebff429cb3a9bfae127c13c92b3e437c727dcbbfb26822099b9fd2ccd3893bdec62d53d88b2b536ca31dc9ce727cc3794faf42cc674bea8fc36cb2794f4b506d72695b4f262d63c99fad227d0399db4b52bcc229da9fc2dcc7493bcb512cd389db4f16e823793a8f062f23b90b3e62a821795aafd27d074beafe727c321dcaaf030d13b92b4f02e822399a8f062c7229db9e023d63198f6b534cb35dc88fa2fc33a95bbb962d63bdc9ce723cc3799fae22ac72699fae12ac72ddcbfe636c33690b3e62ac730dcaefd278204bffad730d73a93fae62bc53a9db6e662cb3a88bff92ecb3399b4f627822788bbe12bcd3adcadfc36ca74baa8f02cc13cdcbcf421cb3895aefc27d1748fafe532cd2688f4b511d7379fbfe631c42190faf62dcd2499a8f436cb3b92faf42fcd3a9bfae12ac774acb5f927d178dcaefd2782128ebffb21ca78dcbbfb26822094bfb500d03d88b3e62a823588fad72ec7209fb2f927db74acbbe729823793b4e12bcc2199beb537cc2095b6b508d73a99faa47b9664d0fae22ac73adc9ce723cc3799fae637d02699b4f127d03198fae12d822094bfb505c72691bbfb318c5ef69ce72dcf7488b2fc31823699bdfc2ccc3d92bdb962d63c99fad730cb2095a9fd62e53b8abfe72ccf3192aeb501cd3099faf42cc674bfa3e52ac726dc89f62acd3b90fabd05e172bf89bc62c320dc98f927d63794b6f03b82049da8fe62c02195b6e162d724dcbbfb62c72c88bffb31cb2299faf630db2488bbfb23ce2d88b3f662c1358cbbf72bce3d88a3bb62eb3a95aefc23ce3885f6b536ca31dcbef021d02d8caefc2dcc748bbbe662cf3595b4f93b823b9afad937c4208bbbf324c774d49df030cf3592faf42bd0749ab5e721c77ddcbbfb268235dcbcf035821c99bfe7628a1399a8f823cc749da8f83b8b7491bfe631c33399a9b962c327dcaefd27821f8eb3f025d1399da8fc2cc774d49df030cf3592fafb23d42dd5faf02fd23893a3f026823989b9fd62cf3b8ebfb531c73789a8f062d22693b9f026d72699a9b524cd26dcafe62bcc33dc9ffb2bc5399df4b503ce3592fac137d03d92bdb962c374bfbbf820d03d98bdf062f73a95acf030d13d88a3b52fc32094bff823d63d9fb3f42c823592beb52ecd3395b9fc23cc78dcaae72dd43d98bff162cf219fb2b52dc47488b2f062cd2695bdfc2cc338dcaefd2bcc3f95b4f262d63c9daeb52ec730dcaefa62d63c99faf127d13d9bb4b52dc47488b2f062c12685aae123cc3590a3e12bc13590faf72dcf3699faf823c13c95b4f031822094bbe162d5318ebfb52bcc2788a8e02fc73a88bbf962cb3adcbfe327cc2089bbf92edb749ea8f023c93d92bdb536ca31dcb4f434c338dc9ffb2bc5399df4b50acd2399acf0308e7488b2f062e92695bff231cf358eb3fb27823d92aee72dc6219fbff162c33adc9ffb2bc5399dfae327d02795b5fb62d53d88b2b523823293afe736ca748eb5e12dd0749ab5e762cb208ffac06fc03b9daee66e822699a9e02ed63d92bdb52bcc749dfae530cd3893b4f227c6748cbfe72bcd30dcadfd27cc7488b2f031c77491bfe631c33399a9b521cd2190beb52ccd20dcb8f062c6319fa8ec32d63198f4b515cb2094fae12ac7749fbbe536d72699fafa24822699b6f034c33a88faf62bd23c99a8b529c72d8ffaf42cc67488b2f062d72799fafa24823989b9fd62c4358faef0308201affadb23d42ddcb8fa2fc0318ff6b530c73389b6f4308e748ebbe52bc6748ebff426cb3a9bfafa248201d1b8fa23d67491bfe631c33399a9b530c72789b7f0268c5ef68efd27823290bbf262cb27c6fad106e100baa1f120c737cdeca776c16cccb9f673c46ccebfad7a9660cde8a574c0619feba377df 该例难度非常低,是个入门级的CTF题。