Bitcoin

智能合約中的鬆弛問題和時間

  • August 8, 2018

鬆弛問題說,在高層次上,不可能保證在任何給定時間點,所有誠實的礦工都看到完全相同的區塊鍊長度

$$ 1 $$. 另一方面,正如我們所知,智能合約中函式返回的值是區塊鏈共識的結果。

假設我們定義了一個函式time(),它在智能合約中返回目前時間,即“現在”。

問題:鬆弛問題如何影響函式*time()*返回的值?

$$ 1 $$. https://eprint.iacr.org/2017/149.pdf

now不是絕對真實時間,只是最後一個開採區塊的時間戳。有了 的定義now,就可以清楚地看出,鬆弛問題會像任何其他功能(或價值)一樣影響這一點,可能會有節點在特定時間不屬於共識的一部分,但無論大多數人同意是最後一個區塊,是什麼將time()在執行的那一刻確定函式的值。這意味著其他鏈(分叉)可能對該功能具有不同的價值,但如果該鏈較短,它很可能會死亡,因為誠實節點將遵循最長的鏈。

希望這可以幫助

now()是特定區塊的礦工在區塊上給出的值。now()已經是 Solidity 語言的構造。

乙太坊協議為區塊傾斜提供了一些保證,now()礦工在他們的區塊被認為無效之前對其進行操作的能力有限。

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