在 web3js (NodeJS) 交易期间我需要私钥吗

Do I need private key during transaction in web3js (NodeJS)

我目前经营一家销售鞋子的电子商务网站。 这时候想实现一个以太坊交易支付系统。用户将他们的以太币发送到我们的以太坊地址。

我真的很想知道我们的访问者是否尝试发送以太坊交易, 用户必须提交他们的以太坊私钥,但我认为这种方法在我们的电子商务网站中是非常危险的情况。

当然我们不会将任何私钥保存到我们的数据库中。 但是我不想使用这种方法来收集用户个人密钥。

有没有什么方法可以让用户在没有私钥的情况下进行支付?

因此,以太坊或类似加密货币中的所有交易都是使用私钥进行的。我认为用户不会同意向您发送私钥,因为您将能够管理他们的钱包并发送任意数量的交易。 我认为为了使用以太坊实现支付功能,你应该使用 MetaMask。用户应该有一个 MetaMask 帐户和关联的钱包。这是可信的应用程序,用户可以插入他们的私钥。因此,当他们使用 MetaMask 进行交易时,您只需获取交易 ID(哈希)并检查交易和转移的以太币的有效性。如果交易成功,那么用户将足够的以太币转移到你的钱包,你就接受付款。 看一篇文章就可以了,Building-Ethereum Dapps with MetaMask