如何用椭圆曲线数学将比特币私钥转换为地址



我有一个大的转储(约25K)来自我的比特币钱包的所有私钥,但我没有映射到每个私钥的相关地址。在我重新创建钱包之前,我需要这个地址,因为我需要跳过一些地址,而不是将它们添加到新钱包中。

有人给我指了一个包含转换方法的python工具:pywallet,但我宁愿用Perl来做,这样我可以更容易地编写脚本。我还发现了这两个JavaScript网站:bitaddress.org和brainwallet.org。

我在CPAN上找到了以下库,听起来它们可能有助于做到这一点,但我不知道如何将这些部分连接在一起:Math::EllipticCurve::Prime, Crypt::OpenSSL::EC。前者的文档说它真的很慢,后者可能更快,因为它使用了C库,但文档令人困惑。我还在罗塞塔代码上发现了一些椭圆曲线代码。CPAN上曾经有Crypt::ECDSA,但在某个时候被删除了。

那么,使用Perl从私钥中获取比特币地址的最好、最快速的方法是什么呢?

你应该先检查这个:https://github.com/grondilu/libbitcoin-perl -也许会给你一些想法。

最新更新