ETH靓地址生成脚本
我的ens域名bugmaker.eth
绑定的ETH地址是0xB888888888241d1D6b07158c501eD45f909a8465
,可能很多人都觉得地址再好看也没什么用,反正只是一个地址而已。
正所谓千金难买心头好,只要自己觉得好看就行了。
大多数人都是通过钱包软件生成ETH地址的,生成的地址随机性很高,看起来并不怎么好看。其实可以使用python写代码来生成比较好看的地址,而且可以自定义靓地址的规则,比如生成以下类型的地址:
1 2 3 4 5
| * 0x88888888... //重复字符 * 0x12345678... //递增数字 * 0x5201314.... //特殊数字 * 0xdeadbeef... //特殊单词 * 0x19990909... //生日日期
|
网上也有一些在线生成靓地址的工具,但是代码是在别人服务器运行的,也就是说服务器可能会偷偷保存钱包的私钥,使用这样的工具并不是很安全。
而我们在本地运行的代码,是离线生成钱包地址的,也就是说可以先关闭网络再运行代码,基本上不会有风险问题。
因此,我们可以使用以下python代码来生成地址:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| from eth_account import Account from multiprocessing import Process
def check_address(address): address = address[2:] if address[0] == address[1] == address[2] == address[3]: return "aaaa_" if address[-1] == address[-2] == address[-3] == address[-4]: return "_aaaa" return None
def run(): while True: account = Account.create() address = str(account.address) address_type = check_address(address) if not address_type: continue print(address) private_key = str(account._key_obj) with open(f"{address_type}.txt", "a+") as f: f.write(f"{address} {private_key}\n") f.close
if __name__ == "__main__": for i in range(4): process = Process(target=run) process.start()
|
由于python不能使用多线程,所以代码使用多进程运行。代码默认使用4个进程,如果电脑的CPU核数比较高,可以把进程数调大一点,每个进程对应一个核,运行效率会比较高。
也可以克隆以下仓库的代码运行: