Go-Ethereum

metamask 和乙太坊提供者的區別

  • August 26, 2021

在此處輸入圖像描述

我在網上找到了這張圖片,但我無法區分元遮罩和乙太坊提供者之間的區別。元遮罩也不使用提供商連接到網路嗎?我很困惑

是的,Metamask 在後台使用 Infura 連接到網路。所以 Metamask 是 Infura 服務之上的使用者界面。

然而,沒有什麼會強迫你使用 Metamask,它恰好對使用者互動很方便。但通常 dApp 也有與乙太坊的單獨後端連接:例如,後端需要讀取代幣餘額並將其呈現給使用者,因此後端使用直接 RPC 連接到某個乙太坊節點(或節點服務提供商,例如作為Infura)。

所以這一切都取決於你的需求。

您可能知道,乙太坊網路由每個節點組成nodes,每個節點都有一個區塊鏈副本。當我們想要與區塊鏈互動時,我們需要與這些節點之一進行互動。

如果您想與節點對話,您要做的第一件事就是指定要與哪個節點對話。您可以設置自己的節點,也可以通過 Infura 和 Alchemy 等第三方服務使用其中一個節點。當您與區塊鏈互動時連接的這些節點,無論您是自己設置還是使用來自服務的現有節點,都稱為providers.

通過提供者連接到區塊鏈後,您可以讀取區塊鏈的狀態,但要更改狀態並寫入區塊鏈,您需要sign消息。要簽署您需要的消息keys。現在,如果您正在建構一個 dApp,儲存使用者密鑰或向他們索要它可能不是最好的主意。這就是Metamask進來的地方。

Metamask 是處理此密鑰管理的工具。最重要的是,它還提供了與區塊鏈的連接。這是因為 Metamask 已經與nodesInfura 提供的連接。因此,要連接到區塊鏈,只需向 MetaMask 詢問提供者(Infura 節點之一)。

所以回答你的問題:

  1. Provider是您用來與區塊鏈互動的節點。
  2. Metamask 是一個工具,它通過處理密鑰管理並將 dApp 與提供者連接起來,使 dApp 開髮變得容易。

有關更多詳細資訊,請參閱 MetaMask文件

引用自:https://ethereum.stackexchange.com/questions/93261