晴天財經(jīng)閣9星評價
2018-02-25 13:01:32
什么是雙花
雙花就是同一枚比特幣被使用兩次,但是無論在比特幣網(wǎng)絡中還是現(xiàn)實世界都不可能發(fā)生,就像在現(xiàn)實中你不能用1塊錢買個蘋果,又用同一張1塊錢買橙子。如果這都可以的話,錢就變得毫無價值了,因為這樣每個人都會擁有無數(shù)多的錢,用也用不完,貨幣價值也就沒有了。比特幣核心網(wǎng)絡在比特幣區(qū)塊鏈中驗證每筆交易來防止雙花。
那比特幣網(wǎng)絡如何防止雙花呢?
假如你有1個比特幣,你想要花兩次。于是你向商家買了價值1個比特幣的商品。然后,你再在另一個比特幣地址上簽名,并發(fā)送相同的1個比特幣。
兩筆交易都進入了還未進行驗證的交易池。你的第一筆交易得到了確認,并在下一個區(qū)塊中得到了礦工的工作量驗證。但是礦工會認為第二筆交易是無效的,這樣就沒辦法獲得足夠的確認,就會被撤出網(wǎng)絡。
但是如果這兩筆交易是由礦工同時操作呢?
當?shù)V工同時從池中提取交易時,獲得網(wǎng)絡中確認數(shù)量最大的交易將會保留在區(qū)塊鏈中,而另一個將被撤出。也有可能真實的那筆交易無法獲得確認。這就需要6次確認機制。6次確認”就是在這筆交易被添加到區(qū)塊鏈之后,另外6個包含多個其他交易的區(qū)塊就會被添加到這個區(qū)塊之后。每一個都需要6次確認”,且都和前一個區(qū)塊有關聯(lián)。所有這些確認和交易都在加上了時間戳,這就使得區(qū)塊不可逆轉,而且無法篡改。
而當你掌握的算力超過50%時,就可以無限逆轉區(qū)塊。但是有些區(qū)塊鏈網(wǎng)絡已經(jīng)非常之大,想要和它對半抗衡是不可能的,但有一些區(qū)塊鏈網(wǎng)絡比較小,節(jié)點比較少,也有可能遭遇51%算力攻擊,今天的BTG就是一個例子。
那名礦工為了實施雙花攻擊,獲得了至少51%的BTG網(wǎng)絡算力,就能夠臨時控制BTG區(qū)塊鏈。像BTG這樣的小型網(wǎng)絡上,獲得這么大的哈希算力也是非常費錢費力的,但是無利不討好嘛,實施雙花之后就有錢可賺了。
控制了網(wǎng)絡之后,攻擊者開始往加密貨幣交易所充值比如1000個BTG,讓其進入市場,或者提現(xiàn)出來。再運用手中的算力,從自己對外付款交易之前的區(qū)塊開始,忽略自己所有對外的付款交易,重新構造后面的區(qū)塊,利用算力優(yōu)勢與全網(wǎng)賽跑,當最終創(chuàng)建的區(qū)塊長度超過原主分支區(qū)塊,成為新的主分支,至此,攻擊完成;結果就是,由于撤銷了所有對外付款交易,等于收回來所以已賣掉的BTG。就這樣,他們能夠向交易所充值后再迅速收回資金。
比特幣黃金開發(fā)人員建議交易所在用戶交易時通過確認交易數(shù)量來應對攻擊。區(qū)塊鏈數(shù)據(jù)表明,攻擊者成功逆轉了22個區(qū)塊,這導致開發(fā)者建議將需要確認的區(qū)塊提高到50個。
微米-納米SiO21星評價
2020-05-12 15:32:34
雙花問題是指一筆數(shù)字現(xiàn)金在交易過程中被重復使用的現(xiàn)象。
比如,我只有兩百塊錢,想要把這筆錢支付兩次,于是我同時給甲、乙轉200元錢。
遇到這種問題,比特幣是怎么解決的呢?
大家請仔細想一想,這筆錢是固定的,如何保證這筆錢在交易過程中,只支付了一次呢?
比特幣的創(chuàng)始人中本聰在《比特幣白皮書》中寫道,比特幣的支付步驟是這樣說的:
1.有一個新的交易,要向全網(wǎng)公布廣播。
2.每一個節(jié)點,都要將收集到的交易信息,放入一個區(qū)塊中。
3.每一個節(jié)點都要試著在自己的區(qū)塊中,找到一個足夠難的工作量證明。
4.當一個節(jié)點找到了自己的工作量證明,都要對全網(wǎng)進行公布廣播。
5.當且僅當這個區(qū)塊中的所有交易是有效且之前從未有過,其他的節(jié)點才承認這個交易過程的有效性。
6.其他節(jié)點表示承認這個區(qū)塊,表示認可的方法就是,根據(jù)這個區(qū)塊的編碼,往后延長這個鏈接。
有了上述的步驟,我們就能保證交易的唯一性和確定性。
這樣說來,在交易發(fā)生的時刻,比特幣的交易數(shù)據(jù)就被蓋上了一個時間戳;而在這筆交易數(shù)據(jù)被打包到區(qū)塊中這個過程中,就完成了第一次確認,在連續(xù)地進行了六次確認之后,這個記錄就不能被輕易篡改了。
在這種情況下,當我嘗試進行兩次支付交易時,由于確認時間較長,后一交易幾乎不可能與前一次交易同時確認。在第一次交易確認后,資金在第二次交易中無法確認。區(qū)塊鏈的全網(wǎng)記賬需要在整個網(wǎng)絡中達成共識,就無法產(chǎn)生雙花問題。