
如何競拍波卡平行鏈?
TechFlow Selected深潮精選

如何競拍波卡平行鏈?
越晚競拍,失敗率越大。
Polkadot 的平行鏈插槽將根據無需許可的蠟燭拍賣進行出售,我們在這個蠟燭拍賣的基礎上做了一些改進,以確保區塊鏈的安全。
蠟燭拍賣機制
蠟燭拍賣是公開拍賣的一種變體,在公開拍賣中,競買人提交的出價越來越高,拍賣結束時,出價最高的人被認為是贏家。
蠟燭拍賣最初是在 16 世紀用於出售船隻,並從決定拍賣開放期的 “一寸蠟燭” 中得名。當火焰熄滅,蠟燭熄滅時,拍賣會突然終止,此刻的競價者將獲勝。
當蠟燭拍賣在網上使用時,他們需要一個隨機數來決定終止時間。
平行鏈插槽拍賣與普通蠟燭拍賣略有不同,因為它不使用隨機數來決定其開盤階段的持續時間。相反,它有一個已知的開放階段,在正常結束時,追溯性地確定在過去的某個時候結束。因此,在開盤階段,投標將繼續被接受,但由於追溯性確定的結束時間可能早於投標提交時間,因此後面的投標有更高的失敗概率。
Acala &Laminar 亮哥解讀:”在正常結束時,追溯性地確定在過去的某個時候結束“ 的意思就是說在最終結束的時候,再隨機算一個過去的區塊,這個過去的區塊是真正拍賣截止的時間,但這個是在完整流程走完後才算的,所以沒人會提前知道拍賣什麼時候結束。
為什麼使用蠟燭拍賣?
區塊鏈系統的開放性和透明性會打開傳統拍賣形式中不存在的攻擊拍賣。在互聯網或區塊鏈上進行時,普通的開放式拍賣尤其容易受到拍賣攻擊。
拍賣攻擊發生在拍賣結束時,競拍者不願提前出價,希望能以低於實際價值的價格出價。
例如,Alice 可能在拍賣會上以 30 美元的價格估價一件物品。她提交了 10 美元的初始出價,希望能以更低的價格購買這些物品。Alice 的策略是逐步提高出價,直到超過 30 美元的真實價值。另一位出價人 Eve 對同一物品的估價為 11 美元。Eve 的策略是觀看拍賣,並在最後一秒出價 11 美元。在拍賣結束前,Alice 將沒有時間回應這一出價,並將失去該物品。這種拍賣機制是次優的,因為它沒有發現物品的真實價格,而且物品也沒有交給最看重它的人。
在區塊鏈上,這個問題可能更糟,因為它可能會給區塊的生產者一個機會,通過添加它自己,或忽略其他出價,在最後一個結束區塊時攻擊任何拍賣。也有可能是惡意競拍者或區塊生產者試圖通過攻擊拍賣來傷害誠實的競拍者。
正因為如此,Vickrey auction 是第二價格拍賣的一種變體,在第二價格拍賣中,出價是隱藏的,只有在後期才被揭示出來,它已經成為一種備受推崇的機制。例如,它被實現為在 ENS(https://ens.domains/)上拍賣人類可讀名稱的機制。蠟燭拍賣是另一種不需要兩步提交和披露方案(Vickrey auctions 的主要組成部分)的解決方案,因此允許智能合約參與。
蠟燭拍賣讓每個人都能知道競拍的狀態,但不知道拍賣何時結束,這有助於確保競拍者更願意儘早出價。否則,他們可能會發現自己處於這樣一種情況:拍賣甚至在他們出價之前就已經確定“結束”。
它在波卡中的使用
Polkadot 將使用一個基於 VRF 的隨機信標,該信標也在協議的其他地方使用。VRF 將提供隨機性的基礎,這將追溯確定拍賣的“結束時間”。
當一個帳戶出價時,他們可以在一個插槽中出價任何可用的期間或範圍。然而,如果一個 parachain(具有相同的 STF)出價,那麼該 parachain 必須在一個連續的週期或範圍內出價,直到它們已經佔據了一個區間。他們將無法競標一個重疊的插槽(同一時間沒有多個平行鏈),如果兩者之間存在差距,他們也將無法競標未來的插槽。如果一個 parachain 在已經結束其插槽持續時間之後重新啟動,它將需要從一個新的 genesis(可能是所有舊狀態的快照)重新啟動,並且需要從外部帳戶出價。
插槽持續時間上限為 2 年,每個階段分為 6 個月。Parachains 可以在插槽持續時間內的任何連續範圍內租用一個插槽。隨著時間的推移,Parachains 可能會租賃多個插槽,這意味著它們可以通過租賃一個連續的插槽將其租約延長到超過 2 年的插槽期限。
如何競價?
每個平行鏈插槽最長持續時間為 2 年。每 6 個月的時間間隔被劃分為自己的租賃期。多個連續週期(period )就是一個範圍(range )。
在一系列平行鏈插槽租賃開始前的六個月,將有幾次拍賣會舉行。
投標人將提交一個配置的投標文件,具體說明他們願意鎖定的 DOT 金額和範圍。插槽範圍可以是週期 1-4 的任何連續範圍。
單個投標人的投標人配置可能如下所示:

贏家選擇算法將選擇可能不重疊的出價,以最大限度地增加在整個 2 年租賃期的平行鏈插槽持有的 DOT 數。這意味著,在任何給定的插槽租賃期內,出價最高的人可能不會總是獲勝(請參閱下面的示例)。
在每個塊上確定一個隨機數,它基於 Polkadot 使用的 VRF。此外,每個拍賣都有一個從 0 開始並增加到 1 的閾值。VRF 產生的隨機數在閾值旁邊被檢查,以確定該塊是否是拍賣的結束。此外,VRF 將從上一個 epoch 中選擇一個塊來獲取出價狀態(以減輕來自惡意驗證人的某些類型的攻擊)。
案例
不存在競爭的場景
有一個平行鏈插槽可用。
Alice 出價 20 DOT,選擇範圍是 1-2。
Bob 出價 30 DOT,選擇的範圍 3-4。
拍賣結束。
Alice 綁定了 20 DOT,將在第一年使用平行鏈的插槽。
Bob 綁定了 30 DOT,將在第二年使用平行鏈的插槽。
競爭場景
有一個平行鏈插槽可用。
Charlie 出價 75 DOT,選擇的範圍是 1-4。
Dave 出價 100 DOT,選擇的範圍 3-4。
Emily 出價 40 DOT,選擇的範圍 1-2。
讓我們根據算法計算出每個投標人的估價。我們通過將綁定的金額乘以投標指定範圍內的期限來實現這一點。
Charlie:75*4 = 300,選擇範圍 1-4。
Dave:100*2 = 200,選擇範圍 3-4。
Emily:40*2 = 80,選擇範圍 1-2。
儘管根據 DOT 金額,Dave 的出價最高,但當我們進行計算時,我們會發現,由於他只競拍了 2個週期,他需要與出價更低的 Emily 分享這個插槽。Dave 和 Emily 的出價加起來只有 280 的估價。
Charlie 對整個範圍的估價為 300,因此 Charlie 得到 Parachin 插槽的完整範圍。
常見問題解答
為什麼大家不直接競拍最大的期限?
在這個插槽內,DOT 在拍賣中的出價將被鎖定。這意味著存在可能使用這些 DOT 做其他事情的機會成本。對於有利於 Polkadot 的 parachains,應該使 parachains 和 Polkadot 中繼鏈之間的利益保持一致。
這種機制如何確保平行鏈的多樣性?
將平行鏈插槽劃分為六個月的時間間隔的方法,部分也是源於希望存在更多的平行鏈多樣性,並防止特別大和資金充足的平行鏈囤積插槽位。通過將每個週期定為 6 個月,但整個插槽的持續時間為 2 年,該機制可以應對資金充足的平行鏈,以確保它們在租約結束時獲得一個插槽,同時逐漸允許其他平行鏈進入生態系統,佔據其他還沒有被使用的 6 個月的週期。例如,如果一個大型的,資金充足的 parachain 已經獲得了一個範圍為 1-4 的插槽,那麼他們將非常有興趣獲得下一個 2-5 範圍的插槽。在這個機制下,平行鏈可以獲得週期 5(因為它只需要週期 5),並允許第二個平行鏈插槽使用範圍 2-4。
為什麼區塊鏈上的隨機性很難?
對於區塊鏈系統來說,隨機性是個問題。在一個透明和開放的網絡上產生一個不可信任的隨機數,在這個網絡中,其他各方必須能夠驗證,這為參與者試圖改變或操縱隨機性打開了可能性。已經提出了一些解決方案,包括像 RANDAO 這樣的 hash-onions 和可驗證隨機函數(VRFs)。後者是波卡用來作為其隨機性的基礎。
資源
Parachain Allocation :W3F 研究頁面上關於的 parachain 分配更深入的機制說明https://research.web3.foundation/en/latest/polkadot/Parachain-Allocation.html。
平行鏈插槽的代碼
https://github.com/paritytech/polkadot/pull/239
原文鏈接
https://wiki.polkadot.network/docs/en/learn-auction
翻譯:PolkaWorld
歡迎加入深潮 TechFlow 官方社群
Telegram 訂閱群:https://t.me/TechFlowDaily
Twitter 官方帳號:https://x.com/TechFlowPost
Twitter 英文帳號:https://x.com/BlockFlow_News












