Transactions

可以在契約之外儲存數據嗎?

  • June 28, 2017

我試圖圍繞一個特定的場景來思考:

一家公司希望通過儲存文件的雜湊值並將其儲存在網路上來利用乙太坊的區塊鏈。這個想法是,一旦數據發布,公司就無法訪問或控制它。如何實現?

我的看法/答案:

  1. 創建一個儲存變數(如文件雜湊)的合約,然後在需要時進行查詢。問題是,您需要一個擁有合約的合約賬戶。這很可能是公司為了與網路互動而擁有的帳戶。因此,在這種情況下,這種方法是不可接受的。
  2. 另一種選擇是將所需數據作為交易輸入/有效負載發送。除非可以對“網路”進行交易,並且可以通過查詢網路或非公司擁有的帳戶來檢索數據,否則這種方法也行不通。據我目前所知,這是不可能的。

對於給定的場景,我的答案和/或方法可以實現嗎?我不是在尋找簡單的答案,而是在尋找資源和指導(儘管簡單的答案也會有幫助:p)

問題是,您需要一個擁有合約的合約賬戶。

我認為您假設契約的創建者比他們更重要。合約的創建者沒有任何特殊的權利或能力;一旦部署了合約,它就是它自己的獨立實體,只遵循部署它的程式碼。

合約正是您所需要的,創建一個充當僅附加分類帳的合約非常簡單,其中只能添加數據,而不能更改或刪除數據。

這個問題令人困惑。我認為您可能會將隱藏的假設帶入圖片中。

這是一個入門概念。

  1. 簽訂契約以保存文件清單。
  2. 每個人都可以看到列表。誰擁有契約沒有區別。他們可以看到。制定契約,以便只有所有者才能更改數據。
  3. 將文件儲存在“某處”並生成雜湊。
  4. 將帶有文件位置和雜湊的交易發送到合約。

IPFS 為您提供文件位置和雜湊,因為對文件內容的任何更改也是對文件名的更改。雜湊(內容)= 文件名。

任何人都可以仔細閱讀合約持有的文件列表並自己獲取文件。

儘管“所有者”可能能夠更新合約中的數據庫,但不可能(充其量是不方便)向觀察者隱藏此更改。

希望能幫助到你。

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