以太幣交易所 以太幣交易所
Ctrl+D 以太幣交易所
ads
首頁 > FTX > Info

比特幣時間戳的安全性_比特幣

Author:

Time:1900/1/1 0:00:00

JamesonLopp文

本文由幣信原創編譯,原文鏈接:

https://medium.com/@lopp/bitcoin-timestamp-security-8dcfc3914da6

本文版權歸原作者所有,僅代表作者本人觀點,不代表幣信的觀點或立場。

本文約4000字,閱讀全文需約10分鐘。

比特幣通常被稱為一種安全的時間戳服務。我們從未獲得過一種帶有可信時間戳的全球性真實記錄,那么這是怎么產生的呢?這主要是得益于工作量證明與礦工必須遵守的一些簡單規則的結合。礦工的主要職能是:

?獲取無序的未確認交易并以特定順序對其進行排列

?將交易打包到有效容器當中

?在可接受的時間范圍內為區塊蓋上時間戳

最后一個屬性使得比特幣能夠控制比特幣供應的釋放。否則,只要算力增加,比特幣就會受到快速通脹的影響。但事實證明,這個屬性為比特幣協議賦予了相當多的實用性,也使得人們可以將比特幣用作其他服務的數據錨點。因為我們有合理強度的保證,讓時間戳落在給定范圍內,并且我們有重寫區塊鏈歷史所需能量的數學保證,所以,比特幣為數據的時間戳提供了一個可靠的錨點。但是,它有多可靠呢?

東營市首起利用黑客技術盜竊比特幣案件告破:12月16日消息,東營市局東營分局偵破一起“黑客”犯罪案件,也是東營市“凈網”行動以來偵破的首起利用黑客技術盜竊比特幣案件。2020年7月13日,東營分局網安大隊接群眾報警稱其網絡賬戶疑似被人非法入侵,帳號內價值三萬余元的比特幣被盜走。根據報警人陳述,其賬號被盜的網站是一境外網購網站,可使用比特幣進行交易,這是東營分局首次接到此類虛擬貨幣被盜的案件。綜合相關線索,民警最終鎖定但某某有重大嫌疑,并火速趕往浙江臺州將其抓獲。但某某對利用黑客技術入侵云服務器盜取他人賬戶內比特幣的行為供認不諱,目前犯罪嫌疑人被東營分局依法采取刑事強制措施,案件正在進一步辦理中。[2020/12/16 15:22:08]

比特幣時間戳的彈性

為了使區塊頭的時間字段被各個節點視為有效,它必須滿足兩個標準:

小于你電腦的當前時間2小時大于過去11個區塊的中位數時間戳

第一條規則是有道理的——我們顯然不希望任何人聲稱來自未來,并且,節點很容易拒絕這樣的聲明,因為我們大家對當前時間是一致認可的。有多種方法可以檢查當前時間,而一種非常流行的計算機同步時鐘的方法,是通過網絡時間協議。

但是,確保時間不要在合理點之前太遠要難一些。這是因為我們不能假設節點在區塊被最初創建的時間附近驗證區塊。節點需要能夠離開并重新加入網絡,這可以是出于任何原因或并無理由。如果必須在當前時間的幾個小時內創建區塊,那么距離鏈頂端太遠的節點將開始拒絕歷史區塊。

行情 | 比特幣兌法幣交易美元占比升至68.06%:據Coinhills數據顯示,當前比特幣兌法幣交易占比中美元占比下降68.06%,仍排名第一;排名第二為日元,占比為23.38%;韓元排名第三,占比為5.62%;排名四五位的分別為歐元(1.10%)、英鎊(0.86%)。[2019/8/26]

“節點可以隨意離開并重新加入網絡,接受工作量證明鏈作為它們離開時發生的事情的證明。”——中本聰,比特幣白皮書

也許這很違背直覺,但并沒有規則要求區塊的時間戳必須在前一個塊的時間戳之后。如果你考慮一下,這樣一個規則可能會導致問題——如果一個礦工創建了一個時間戳接近未來2個小時的區塊,那么下一個區塊也必須在未來很久以后——對其他礦工來說,自我糾正過去11個區塊的中位數時間就更難了。

此外,要記得,雖然預計約每10分鐘生產一個區塊,但并沒有真正的保證。區塊的時間間隔可以從幾毫秒到幾個小時不等。雖然過去11個區塊的預期中位時間應該是1小時前,但它可能早得多或者晚得多。

來源:https://en.bitcoin.it/wiki/Confirmation

推動時間戳窗口

如果您考慮一下敵對礦工可能會如何嘗試擴展可接受的時間戳窗口,很明顯,無論他有多少算力,他都無法將時間戳推遲超過2小時。然而,一個擁有足夠算力的攻擊者,可能會通過只打包時間戳幾乎沒有效的區塊——過去11個塊的中值時間之后僅一秒——來對“比特幣時間”的累進施加一些拖拽。

聲音 | SBI總裁北尾孝吉:本打算推廣比特幣現金 因其分叉打消了此想法:據EWN消息,SBI總裁北尾孝吉在2019年3月決算說明會上透露,自己本打算推廣比特幣現金,但當時比特幣現金硬分叉出BCHSV和BCHABC,就打消了此想法。他表示,他不喜歡經常分叉的加密貨幣。[2019/4/29]

是否存在激勵去這樣做?在極端情況下,“時間扭曲攻擊”會提供短期的財務激勵,我們將在稍后討論它們。對于只是將時間戳到處拖拽幾個小時,目前還不太清楚可能存在什么樣的激勵。雖然考慮到其他協議可以構建在比特幣之上并且可能涉及時間鎖,但未來也可能存在其他協議可能被減慢區塊鏈上的時間戳累進騙過去。

算力時間拖拽

由于最早的有效區塊時間基于過去11個塊的中位數時間,一個敵對礦工需要生成大量區塊來在過去的中位數時間上引起任何明顯的拖拽。

我們假設一種情況,所有礦工都通過網絡時間協議大致同步,但有一個敵對礦工試圖盡可能地拖拽過去11個區塊的中位數時間。

有一點非常明確:中本聰使用過去11個區塊的中位數時間戳而非平均值是一個聰明的決定,因為平均值會更易于操縱。另一種思考“過去的中位數時間”的方法是,如果所有時間戳都按順序排列,它簡單來說就意味著第6個最新塊的時間戳。如果不是,算法會對它們重新排序。因此,如果你希望對這個值產生不可忽略的影響,你需要算出過去11個塊中的6個。為了維持這種攻擊,你需要55%的算力,此時比特幣的熱力學安全性的一個主要假設就會破裂。但是運氣好,一個擁有較少算力的礦工有時候仍然可以實現這一目標。

在美被指控用比特幣洗錢的加密貨幣企業家拒絕在美國受審 希望將其引渡回俄:\t\t\t\t \t\t\t\t5月26日,美國華盛頓指控俄羅斯加密貨幣企業家Aleksandr Vinnik通過交易平臺,使用比特幣洗錢至少40億美元。近日,他的律師表示,他拒絕接受美國調查人員的審問,希望被引渡回俄羅斯受審。此外,報道還稱,Aleksandr Vinnik可能還涉嫌利用加密貨幣進行詐騙。[2018/5/27]

在11個塊中挖出6個有多難?好吧,給定礦工算出下一個塊的可能性,基本上等同于其占全網算力的百分比。因此,如果你只有1%的算力,那么你在任意11個連續塊中挖出6個的機會=(0.01?*0.99?)*(11!/(5!*6!))=約20億分之一。如果你保持1%的算力,那么在你挖出11個中的6個之前需要發生的預期塊數將超過43000年。

對于實現一次成功的時間拖拽攻擊的預期等待時間,一個更一般化的公式將是:

(1/(462*(算力百分比?*(1-算力百分比)?)))/144區塊/天=天數

我們可以看到,對于想在任何有意義的時間尺度上進行此類攻擊的攻擊者來說,他們需要一個相當大的礦池,至少占全網算力的10%。

最大拖拽

然而,為了在過去的中位數時間上引起最大拖拽,礦工必須連續算出6個塊。如果他們在過去11個區塊中的6個不是全部按順序挖的,那么其他礦工創建的時間間隔將迫使該敵對礦工將其區塊的時間戳設置為超過彼此一秒,因為每個區塊的過去的中位數時間將顯著地跳向誠實礦工在其區塊上設置的更準確的時間戳。

比特幣止跌回升 現價報14800美元:根據火幣pro數據顯示,28日上午10點左右韓國宣布禁止加密貨幣交易所的匿名賬戶,數字貨幣市場整體呈現跌勢,下午6點45分比特幣價格最低跌至14762美元,隨后價格開始回升,現價格收于14800美元,日內漲幅5.72%。[2017/12/29]

連續挖出6個塊有多難?如果我們再次假設礦工擁有1%的全網算力,那么挖到任意連續6個塊的機會是0.01?=大約萬億分之一。如果你保持1%的算力,那么在你挖出連續6個塊之前需要發生的預期塊數將近200萬年。

對于一次成功的時間拖拽攻擊的預期時間,更一般化版本的公式將是:

(1/算力百分比?)/144區塊/天=天數

這種攻擊更難以實現,需要更多的全網算力,比如20%或30%,才能在合理的時間范圍內發生。你可以想象,這很少發生,而當它發生時,人們會注意到。它最后一次發生,是在2014年7月的GHash,GHash有一段時間算力超過了40%,甚至在短時間內觸及了51%。再9個月前也發生了一次,當時BTCGuild有近一半的算力。如果你有50%的算力,你連續挖出6個塊的機會是0.5?=64分之一。如果你保持50%的算力,那么你幾乎每12小時就能連續找到6個塊。

很明顯,在沒有大多數算力的情況下,不可能長期拖拽比特幣的過去的中位數時間,但是你可以在短時間內用運氣和耐心的正確組合拖動它幾個小時。如果你假設其他礦工的時間戳相當準確,那么過去的中位數時間應該大約是1小時前,雖然由于挖出的區塊的波動性可能會多出幾個小時。如果您設法制作6個時間戳為1小時前加1秒、2秒、3秒等的塊,那么在第6個塊,過去的中位數時間就大約是2小時前。如果我們假設區塊間隔為1小時的極端條件,則過去的中位數時間將是6小時前。

通過允許區塊時間戳存在合理的靈活性,然后采用最近區塊的中位數時間,我們最終得到一種非常難以愚弄的算法,但又不那么脆弱,以至于對與真實時間不同步的礦工產生負面影響。

讓我們再做下時間扭曲

如果攻擊者確實擁有超過50%的全網算力并且他們想減緩比特幣時間的流逝怎么辦?他們可以做一些非常討厭的事。這樣的敵對礦工可以防止時間戳以每個新區塊超過1秒的速度前進。如果他們在足夠長的時間里一直這么做,并最終在難度調整間隔上創建了區塊,而時間戳使得它看起來像創建時間遠超2周的之前的2016個區塊,他們就可以操縱調整邏輯,讓每2016個區塊的難度減少高達75%。最終,在難度足夠低的情況下,他們可以在給定的時間段內隨心所欲地產生區塊,從而獲得高于預期的挖礦獎勵。一次優化的時間扭曲攻擊可以在18.7天內挖出所有剩余的比特幣。我們實際上已經看到類似的行為發生在比特幣的測試網3上,因為難度調整異常,現在測試網3在8年內挖出了1482878個區塊,約為預期產量的350%。

時間扭曲攻擊并不是什么新鮮事。這種攻擊最初是在2011年針對一種名為“GeistGeld”的幣進行的,這在BitcoinTalk上被討論為“51%攻擊的變種”。GeistGeld想通過非常短的出塊時間來測試區塊生成速率的上限,以及具有穩定的生成速率且沒有供應上限或供應變化的加密貨幣的行為。

白幣在2014年似乎也遭到了時間扭曲攻擊。

在2018年,Verge受到了這樣的攻擊。然后在6周后再次被攻擊!

通常,對于給定類型的硬件,算力小的加密貨幣容易受到時間扭曲攻擊,因為它們本身容易受到51%攻擊。

有趣的是,雖然時間扭曲通常被稱為攻擊,因為它會導致系統的意外行為,但是有些人已經表明它可以被用于潛在的期望用途。2015年,VitalikButerin描述了一種通過一次軟分叉加速區塊從而提高了鏈上容量的方法。在2018年,比特幣開發者馬克·弗里鄧巴赫提出了利用這種意外行為的建議,以便為比特幣添加新功能。在他的“前向區塊”提案中,馬克闡述了他的方法,它可以將鏈上交易量擴容到當前水平的3584倍,以向后兼容的方式改變工作量證明算法,分片,一個可退回的費用市場用于共識費用檢測,平滑地終止礦工補貼,以及保密交易的先決協議,mimblewimble,不可鏈接的匿名支出和側鏈。

然而,這些提議是有爭議的,并且可能會強迫那些依靠比特幣區塊頭的時間戳來構建的系統對該數據另尋出路。正如GregMaxwell在比特幣開發者郵件列表上所說的那樣,阻止這樣的改變也相當容易:

它可以通過一次進一步限制區塊時間戳的軟分叉來修復,并且沿著這個思路人們已經提出了一些提案。

結論

比特幣的時間戳安全性,和限制可接受時間戳窗口的一些簡單規則,在對抗環境中經受了10年的考驗,盡管它們存在著已知的缺陷。我們知道,51%的礦工可能會在網絡上造成嚴重破壞,至少在短時間內會如此,但這種情況從未發生過——可能是因為激勵措施并不適合礦工這樣做。理性的礦工不會選擇短期收益而殺死長期的金鵝。

-END-

Tags:比特幣加密貨幣COICOIN比特幣是什么東西怎么產生的加密貨幣市場還有未來嗎現在kucoin是什么平臺被抓piggycoin

FTX
Gate.io Startup非首發項目MixMarvel認購結果及上線交易公告_GAT

關于“Startup非首發打折優惠上線通道”Gate.io正式上線“Startup非首發打折優惠上線通道”,針對已經在主流交易平臺上線的發展穩定有潛力的區塊鏈項目,提供更為快捷的上幣通道.

1900/1/1 0:00:00
BTC發出積極信號:從頭肩頂形態的頸線處反彈,并試圖突破20日均線_BTC

經過周末的震蕩下行,加密貨幣市場于北京時間周一晚間迎來拉升行情,市值最高的加密貨幣比特幣一度突破8000美元.

1900/1/1 0:00:00
PeckShield:MGC錢包疑似跑路,資金已有1,480個ETH流入Bittrex交易所_APE

據PeckShield數字資產護航系統(AML)數據顯示,昨天,MGC錢包被曝疑似跑路,用戶的數字資產在短時間內被匯聚到0x4f9cxx,0x2b29xx開頭的兩個地址中.

1900/1/1 0:00:00
再論幣圈「抄襲」:全方位深度模仿勝過漫無目的的創新_比特幣

強調創新的重要性并沒有問題,但是我們往往過于忽視了模仿的作用。原文標題:《忒修斯之船——幣圈創新的窘境》撰文:RobinGu,就職于X-Order編輯:Shawn,Frank,Eva在開放式金融.

1900/1/1 0:00:00
早間行情:BNB王者歸來,能否再創新高?_數字貨幣

今日LTC開始出現調整,其余主流幣種開始走強,表現最好的應該是平臺幣BNB,目前BNB已經來到了前高附近,注意35.5美元高點的心里壓力,短期內可能會回踩34美元處的壓力.

1900/1/1 0:00:00
JEX上線月ETH期權0711公告_JEX

ETH看漲期權 代碼月ETH看漲0711期權標的ETH合約類型歐式看漲期權計價單位USDT最小價格單位0.0001USDT合約比例50:1.

1900/1/1 0:00:00
ads