Go-Ethereum

安全性 - 鎖定/解鎖 geth 錢包

  • October 2, 2017

如果你在 localhost 上執行 geth 並使用我提供的網頁與乙太坊網路進行互動,我是否無法解鎖帳戶並使用 web3js 和 javascript 將資金轉移到另一個帳戶?我對錢包的鎖定和解鎖如何工作以及如何在不使用 geth/infura 的情況下建構一個自包含的 Web 應用程序感到有些困惑?

此外,是否可以將網路 dapp 連接到網路錢包並以某種方式使用網路錢包與合約進行互動?

如果您在 localhost 上執行 geth 並且遇到我的網頁,我是否無法解鎖帳戶並使用 web3js 和 javascript 將資金轉移到另一個帳戶?

如果您所說的我的網頁的意思是您提供類似錢包的服務,是的,您可以。

假設您提供了一個網頁並讓使用者使用他們自己的本地節點進行互動,並且您要求他們提供密碼以解鎖帳戶,您可以從中檢索密碼並以某種方式找到訪問使用者文件系統的方法電腦(就像一些黑客找到進入系統的方法一樣)並獲取密鑰庫文件。

但主要問題是為什麼人們應該信任您的網頁或服務?

如果您想向其他人表明您的網頁是可以信任的,我可能會建議您提供與乙太坊互動的介面,如果使用者在本地執行的節點或類似元遮罩的服務上解鎖了他的帳戶。因此,即使您可以訪問密鑰庫文件,也很難解密它們以找到私鑰,因為您不知道密碼/片語。

錢包的工作原理是它們生成一個加密密鑰對並在本地加密儲存您的私鑰。因此,當您提供密碼時,密鑰會被解密並用於簽署交易。您可以閱讀這篇文章了解更多詳情。

錢包如何不是 100% 受信任的。有時您可能仍然必須信任錢包服務提供商。這裡有很好的讀物。

總之,我可能會建議您使用類似元遮罩的服務來建構可信賴的 dapp 這個問題也對你有用。

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