JavaScript 使用 ETH 地址作为公钥签署消息

问题描述 投票:0回答:1

据我了解,在以太坊上,每个钱包都有一个私钥和一个公钥。

公钥就是地址。我想要实现的是用公共地址签署一个“字符串”,这样只有那个地址(带有私钥)才能“读取”消息。

我正在努力寻找最好的库来做到这一点:我见过 openpgp 和 JEncrypt,但两者都需要以某种特定格式指定“公钥/私钥”。

有什么SDK可以帮忙吗?使用 web3 只能用私钥签名..

encryption web3js public-key-encryption private-key
1个回答
1
投票

公钥密码学中的术语“签名”具有非常具体的含义:它通常表示生成数字签名以验证给定消息的内容和发送者。

这听起来像你说“SIGN”时所描述的是你想要encrypt带有ETH地址/公钥的消息,以及decrypt带有钱包私钥的消息。

在公钥密码学中,您使用公钥加密并使用私钥解密。

我正在努力寻找最好的库来做到这一点:我见过 openpgp 和 JEncrypt 但两者都需要以某种特定格式指定“公共/私人”密钥。

对于任何 pgp 实现,公钥和私钥都需要采用正确的格式,这可能是 ETH 地址的问题,因为 ETH 地址是从底层密钥对派生的。 这篇博文详细解释了ETH地址和密钥对之间的关系

© www.soinside.com 2019 - 2024. All rights reserved.