Tokens

智能合約是否可以中繼原始簽名交易

  • March 13, 2019

我正在重新考慮網路上令牌傳輸和確認的流程(ERC20、ERC721…)。

我目前不知道有一種方法:

1- 轉移代幣和

2- 觸發不同合約中的呼叫,

全部在一筆交易中,對不同合約的呼叫仍然來自msg.sender(代幣的所有者)。

我知道,可以通過兩次交易來實現。

在調查時,我考慮了智能合約中繼原始簽名交易的可能性,就像它可以發送到 rpc 端點一樣。

流(修飾符樣式):

  • 使用者簽署交易以將代幣發送到地址
  • 使用者將交易以字節的形式發送到智能合約
  • 合約中繼已簽署的交易,該交易應維護msg.sender代幣所有者的身份。
  • 合約確認交易成功,然後呼叫下一個函式

這是基於您無法控制代幣智能合約的假設,因此您無法設計支持它的功能。所以,基本上應該適用於已經部署在網路上的任何令牌。

不幸的是,合約不能處理原始交易。如果可能的話,我們將面臨各種各樣的新問題(例如誰為汽油買單)。

沒有什麼能阻止您創建自己的合約來轉移代幣並觸發另一個合約。但是這樣一來,合約本身就必須擁有代幣,因此需要提前將它們轉移到合約中,這可能會使這個選項變得毫無意義。

或者,您可以為您的自定義合約提供代幣轉移津貼。這可能會使您的方案更加合理,具體取決於您的特定業務需求。

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