参考DappReview的第一篇文章(扫描二维码查看)
我们知道图片中隐藏了一个二维码和一段黑白点连成的线,想得到这个信息需要用名为XnView的软件查看此图片。打开图像,将“图像”菜单中的“映射”选项设置为“规格化”,“提取通道”设置为“Alpha”,设置完成后会发现整个图片只剩下了一行线与一个二维码,这条线应该是对应一个2进制数字,而二维码是一个网址。
将那段线段转换为二进制数字后再转换为ASCII码可以得到以下信息:
U2FsdGVkX19Q3I//VCH0U3cVtITZ3ckILJnUcdPX3Gs5qjdF1UjZ3mAftGivtFYD
N5ZCSkBynnVqBawl4p8wKO0O8zI6D0A1+VEVCUyEvEeNoUfGcS0El9d93vsPxbg7
D5avufQsScgsk3QEtq9/M4Do32OKFeq00/3NrxWOsMmh3AXmDzuuZ0qmZaI7re16
FcXIrmPPiQDOHRc7wt0ng6qLiNz7VqESRTdxPOahKFRkWT8sT+Ur2y+2iZ2LEaxN
M7UZqcPwYgm6FoKOVjnqdeg30R27jc6AoFPyRZ2g8+EJMp3n/pf94oSCLEWkc0os
jH9DqbM6DUptu3HJbAVwXQ==
这个字符串的开头"U2FsdGVkX1"经过base64转换,可以得到"Salted__",这想必也是作者的提示。
第二关的关键就是上面的这个字符串。下面我们来降解如何破译。
首先把图中六条曲线对称翻转,让这些曲线可以连接到10个字母。如下图所示:
这会让我们得到7组字符数字组合分别是: L3, 02,7, 5,8,4, 9F。
尝试用L3, 02,7, 5,8,4, 9F 的排列组合作为秘钥来破解文章开头提到的字符串。我们没有找到排列组合的逻辑,不过经过暴力尝试,我们得到了L3+7+9F+4+8+5+02=L379F48502 这个正确答案。
如下图所示:
结果如下:
Bitcoin Challenge ..... 310 BTC
https://bitcoinchallenge.codes/
---
Well done!
Now find something really interesting here:
511 B20 332 328 410 530
245 651 58F C2C 03A 717
401 9AC 36A 53F 4C6 B26
332 328 410 530 491 312
---
310 BTC
这个给了我们一个和第一关类似的表格,并且解法与第一关一样(扫二维码,看DappReview第一关解法)
同样的用20181002作为移位密码,应用于所有的16进制数值,得到新的表格数字如下:
Original Hex | 511 | B20 | 332 | 328 | 410 | 530 |
---|---|---|---|---|---|---|
shift | 201 | 810 | 022 | 018 | 100 | 220 |
decrypted hex | 310 | 310 | 310 | 310 | 310 | 310 |
Original Hex | 245 | 651 | 58F | C2C | 03A | 717 |
shift | 181 | 002 | 201 | 810 | 022 | 018 |
decrypted text | 1C4 | 65F | 38E | 41C | 018 | 70F |
Original Hex | 401 | 9AC | 36A | 53F | 4C6 | B26 |
shift | 100 | 220 | 181 | 002 | 201 | 810 |
decrypted text | 301 | 78C | 2E9 | 53D | 2C5 | 316 |
Original Hex | 332 | 328 | 410 | 530 | 491 | 312 |
shift | 022 | 018 | 100 | 220 | 181 | 002 |
decrypted text | 310 | 310 | 310 | 310 | 310 | 310 |
第一排和最后一排的310,是作者在提示玩家,这是正确的解法。所以我们去头去尾,这样就只剩12组16进制数字了。
16进制
1C4 65F 38E 41C 018 70F 301 78C 2E9 53D 2C5 316
然后我们将它转为十进制:
10进制
452 1631 910 1052 24 1807 769 1932 745 1341 709 790
这明显是助记词序号,我们可以在助记词表里面找到12个助记词:
debris slim immune lock actual tide gas vapor fringe pole flat glance
遗憾的是这12个助记词是无效的,但是当我们把第一关的12个助记词放在其前面,组成一个新的24位助记词,第二关就解决了。
cry buyer grain save vault sign lyrics rhythm music fury horror mansion
debris slim immune lock actual tide gas vapor fringe pole flat glance
来验证一下,我们在助记词相关网站上输入这24个助记词:
得到了:
"1G7qsUy5x9bUd1pRfhVZ7cuB5cMUP4hsfR"正是第二关的钱包地址。
对应的私钥为:
KxPEUpQ5BE75UGRUVjNmf8dQuWsmP9jqL3FUUjavdRW69MEcmg6C
从该地址我们可以看到0.2 BTC已经在10月9日被一位解密高手领走了。