首页 > 解决方案 > 我们可以从以太坊公共地址生成公钥吗?

问题描述

我知道如何从公钥或私钥生成以太坊公共地址。但我想知道我们是否可以从以太坊公共地址生成公钥?

标签: ethereumcryptojspki

解决方案


从以太坊地址创建公钥是不可能的。

如您所知,从公钥中,您可以通过 keccak 过程散列的数组的 40% 获得地址,这是一条单向路径。

那么,让我们看看这个算法:

1- 拥有公钥(128 个字符,十六进制格式表示 0-F)

2- keccak 散列它以接收 64 个字符,再次是十六进制格式

3- 删除前 24 个字符,留给我们 40 个字符作为地址

4-您现在可以将“0x”添加到该数组的开头。

keccak 散列是不可逆的,如果你想暴力破解它需要 16^64 次猜测,如果你可以访问每秒可以猜测 3.6*10^67 个数组的量子计算机,则需要一个世纪。除了您删除的 24 个十六进制字符之外,因此在其上添加 40% 的负载。还没有发明量子处理​​器!!!


推荐阅读