# 复盘 dendekaden 破签

By [ruoshui](https://paragraph.com/@ruoshui) · 2023-04-10

---

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

### 思路

1、找到所有白名单地址

2、生成 merkle tree

3、验证

### 所有白单地址

ddd mint 地址

[https://www.dendekaden.com/batch-mint](https://www.dendekaden.com/batch-mint)

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

![](https://storage.googleapis.com/papyrus_images/234aa63bbd4ac5a2ece91a1f3f67151d94c7af768c41e423c00a84079f8d1a9b.png)

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

![](https://storage.googleapis.com/papyrus_images/22cc633222b48cf506ed6467b288bfcc6e7afc5e0c1233037ef2daa9660ce20c.png)

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

![](https://storage.googleapis.com/papyrus_images/393a182b11a1b4ed667eff6befae0912abe496145511d338d1ea73458ef11340.png)

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

![](https://storage.googleapis.com/papyrus_images/f17c849b638135895e6255dac4c4fdcae9529b1587329a040f6ad60ed763a03f.png)

### Merkle tree

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

![](https://storage.googleapis.com/papyrus_images/84fb7f6172f9c03ad45a44dd5a6506263ff96cdd83a437b63bdca6a6d82acde4.png)

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

![](https://storage.googleapis.com/papyrus_images/4c32f8ffdd831c1afbf3b2bee0cc669c7b6dd5de066c06e9e0fb14a02881d1d7.png)

### 验证

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

---

*Originally published on [ruoshui](https://paragraph.com/@ruoshui/dendekaden)*
