复盘 dendekaden 破签

ddd 先到先得白超发,想快人一步,提前找到签名,俗称破签,是有效的一种方式,下面是我ddd破签的一个复盘

思路

1、找到所有白名单地址

2、生成 merkle tree

3、验证

所有白单地址

ddd mint 地址

https://www.dendekaden.com/batch-mint

普通的做法是寻找获取签名的接口,但是ddd并没有,于是开始寻找所有白单地址,一开始也没有找到,但是发现有两个文件跟白单地址非常相似,肯定是通过处理的

post image

然后在另一个文件中找到了如下的逻辑

post image

于是猜到ddd是把所有白单地址通过加密哈希处理,自然能判断出7989那个文件是所有的白单地址,还有能mint的数量和mint时间,部分内容如下图

post image

而6393文件是将白单地址的hash+可以mint的数量+mint时间加密而成的,作为merkle tree 的leaf,部分如图

post image

Merkle tree

有了leaf,然后就是生成 Merkle tree

post image

通过输出结果,再找到ddd在合约中设置的root,验证正确

post image

验证

最后就是验证了,找到之前保证白mint成功的tx,然后用自己的merkle代码进行验证,成功!