Oracles
如果預言機(chainlink)可以在每次呼叫中改變其價值,它們的確定性如何?
我一直在玩chainlink getRandom 呼叫,每次呼叫它都會返回一個隨機數。我感到困惑的是區塊鏈應該是確定性的,所以如果我們要從節點 0 重建整個網路,那麼對 getRandom 的相同呼叫不會是一個不同的數字,這不是確定性的嗎?外部 api 呼叫也是如此,如果該節點消失並且當您重建該數據不再可用時,這不會改變整個鏈條嗎?
你說區塊鍊是確定性的是正確的,但是預言機在區塊鏈之外執行。預言機提供數據的方式與人們進行交易的方式相同。
當您重放使用預言機數據的區塊鏈時,您將重放預言機返回的內容。以同樣的方式,當您重放具有人工交易的區塊鏈時,您將重放這些交易的結果。
預言機通過在事務中傳遞數據來工作。所以預言機只傳遞一次數據,就成為區塊鏈歷史交易數據的一部分。
那有意義嗎?