Solidity

拆分和合併令牌

  • May 28, 2019

我在這裡問我的項目是否可行。

我實際上正在閱讀 Andreas M. Antonopoulos 的“掌握乙太坊”,所以我有一些基本的 Solidity 知識。

我有一個項目:

我有一棟大樓,每層都有樓層和房間。

我的想法是“標記”建築物的每個元素以便發送它(類似於出租的想法),例如:

我在一個樓層有 4 個房間,分配給 2 個不同的人(每個人擁有 2 個房間),​​過了一段時間有人來要求整個樓層。

所以 4 個標記(房間)應該合併為建築物的一個標記(樓層)(另一個標記)。

另一個例子:

我有一整個樓層,我想給某人 3 個房間(共 5 個),所以我必須將樓層令牌分成 5 個房間令牌。

所以我有 3 種令牌:建築物、樓層和房間。

我正在努力尋找某種解決方案來解決這個問題,我的想法是將建築物作為具有結構的單個令牌來操作,並創建一個“授權”契約,以便不改變令牌的原始所有者。

很難弄清楚如何使用 3 個不同的令牌(不可替代,我在考慮 erc721)。

感謝任何會回答我的人:)

看看 ERC-1155,https://github.com/ethereum/EIPs/issues/1155

這是由 Gnosis 團隊設計的,用於解決在出現唯一代幣的情況下使用 ERC20 和 ERC721 代幣的問題。您可以這樣做,並根據規則進行分解/重組以配置您每次部署新合約都會遇到 gas 成本問題。

我懷疑這方面真正具有挑戰性的方面不是標記資產,而是定義它們所代表的內容和轉換方法。*從我的角度來看,*我沒有一個通用的答案,這就是為什麼它看起來像挑戰。

希望能幫助到你。

在我看來,這取決於你想要達到的目標。最大的問題是您是否希望您的代幣遵循某些標準(例如 ERC20 或 ERC721)。

如果你不需要你的代幣遵循任何標準,我建議只創建一個處理所有這些類型的(代幣)合約——至少一開始是這樣。因此,一份契約知道誰擁有建築物以及誰擁有建築物內部的東西。您可以創建靈活的資料結構來處理拆分和合併。基本上你可以寫成你想要的任何方式。這樣一來,它就不是傳統的代幣合約,可能有 1 個代幣或 3 個不同的代幣,或者它是否是一個代幣合約。但如果這對你來說沒問題,那麼這可能是最簡單的方法。

但是,如果您希望您的令牌遵循某些標準,事情就會變得更加棘手。ERC721 可能是您的最佳選擇。(或者,可能有很多更好的標準建議,但它們不像 ERC721 那樣被廣泛接受。)您將面臨的第一個問題是您無法拆分/合併此類令牌。因此,您需要首先將所有內容劃分為盡可能小的單位(例如平方米?)並分配它們。此外,ERC721 本身並不包含擁有另一個 ERC721 的選項,但沒有什麼能阻止您在合約中包含此類程式碼。

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