Web3js

DApp 在移動設備上簽署交易並轉移到伺服器 - 網路安全

  • January 15, 2018

我目前正在使用 React Native 為 iOS 和 Android 開發一個應用程序,使用者將擁有一個錢包,使用:https ://www.npmjs.com/package/ethereumjs-wallet-react-native 。然後,他們可以使用以下方式簽署交易並將其發送到我的 Web API:https ://github.com/ethereumjs/ethereumjs-tx 。

我絕不是 Web 安全方面的專家,但我使用的伺服器使用 HTTPS 進行客戶端和伺服器之間的通信。我想知道指定過程可能存在哪些安全隱患。

腳步:

  1. 使用者創建錢包並將私鑰儲存在設備上。
  2. 使用者創建交易並在設備上簽署交易。
  3. 使用者通過 HTTPS 將簽名交易發送到我的 WebAPI。
  4. 我的 WebAPI 將其發送到區塊鏈上。

此外,如果設備以某種方式損壞,我想創建一些方法讓使用者能夠取回他們的錢包。我想不出一種特別安全的方法來做到這一點。除非,當我將私鑰儲存在鑰匙串(或類似的 Android 設備)上時,Apple / Android 是否管理恢復?例如,如果我在一台設備上登錄,然後在另一台設備上登錄,它會使用相同的私鑰嗎?

在此先感謝您的幫助。

只要您在設備上簽署交易並僅傳輸已簽署的交易,您就已滿足任何其他錢包部署的基線安全要求。如果您還沒有查看 infura.io,建議檢查一下,因為它模仿了您的 WebAPI 功能(作為代理工作)。

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