为什么 Metamask if web3.js 可以直接与 ganache 交互?

Why Metamask if web3.js can interact directly with ganache?

我是区块链应用程序开发的新手,我看到一个项目,其中将 ganache 帐户导入 Metamask,然后 web3.js 用于在前端(用户界面)访问和打印这些帐户和余额。

如果web3.js可以直接访问ganache区块链账户和余额,为什么我们还需要中间的Metamask?

If web3.js can directly acccess ganache blockchain accounts and balances, why we need metamask in between?

在这种情况下,您不需要 MetaMask 来签署交易,因为节点 (Ganache) 持有您的私钥。

但在 public 环境(测试网和主网)中,节点不持有您的私钥,因此您需要使用 MetaMask(或任何其他持有私钥的工具)签署交易键)。