使用比特幣難度參數和/或智能合約的時間鎖定密碼學?
結果:創建帶有倒數計時器的消息。輸入頂級密碼後,倒計時開始。一旦計時器到期,消息就會被解密。
已知方法:工作證明。使用者必須使用計算能力來解密消息。
問題:未來電腦電源會發生變化。我想要相對準確的時間鎖定,現在和幾年後。
這些可能的解決方案是……嗎?
與比特幣難度相關的工作時間鎖定證明:比特幣有一個反應難度參數,它將反映處理技術的目前狀態。
無論如何使用比特幣難度參數來製作具有相對準確時間鎖定時間的時間鎖定消息,現在和將來?
基於智能合約:一種智能合約,一旦輸入第一層密碼,倒計時計時器就會開始,基於某種現在的時間預言機。一旦過期,第二層消息就會被解密。
**A)**這些有可能嗎?
**B)**目前是否有任何其他現有的解決方案可以獲得預期的結果?
**消除串列雜湊負擔,但仍然獲得相同的好處:**當輸入頂級密碼時,會記錄 BTC 目前塊。當 BTC 區塊到達目前區塊 + X 時,第二層消息被解密。
可能的?
這些確實是主要的已知解決方案。請注意,您的解決方案 A 已在密碼學社區中進行了探索,本文是有關該主題的理論工作的範例,但我認為還有其他更實用的建議將區塊鏈用作計時器(在最近的這篇論文中的上下文略有不同)。
注1:據我所知,還沒有這種方法在實踐中進行過評估和試驗,但單獨部署。
注2:對您的第一個項目“工作證明”的小修正:實際上,工作證明在這裡是不夠的。這是因為如果所涉及的工作是可並行的,這意味著工作可以分配到多個 CPU 上,那麼就無法保證完成任務所需的時間——對手是使用 1 個 CPU 和時間 T,還是 T 個 CPU 和時間1?
正確的解決方案是使用順序工作證明,證明證明者已經執行了一個被推測不可能並行化的問題的 T 步。存在許多範例,主要基於推測的硬度以並行化模平方(給定一個隨機 $ r $ 和一個模數 $ n $ , 計算 $ r^{2^T} \bmod n $ , 在哪裡 $ n $ 是一個難以分解的 RSA 模數)。最近的許多論文都在研究相關結構,例如查找“順序工作證明”或“可驗證延遲函式”。
使用順序工作證明的一個副產品是無法使用更多 CPU 來加速工作,因此正確的使用者將只使用一個專用於解決它的 CPU,這使得所需的工作變得不那麼繁瑣(不需要數千個電腦“耕種”證明)。