看板 DigiCurrency 關於我們 聯絡資訊
首先為什麼BCH會有deep-reorg protection,因為BCH被51%攻擊的風險是真實存在的。 要51%攻擊BTC大概只有國家力量可以辦到,但BCH算力根本不到BTC一成。 只要一兩個大礦池願意幫助Blockstream Core搞掉BCH就可以輕鬆達成51%攻擊BCH。 在本來的Bitcoin下是把51%攻擊當作萬萬不能發生的事情,所以只考慮算力最長鏈。 反正就算惡意節點佔10%,那麼只要六個確認就可以確保被雙花攻擊到的機率在0.1%以下。 而交易所普遍最多也接受6個確認就當作存款入帳,因為幾乎不可能再被變更了。 也就是交易所把6個確認當作交易已達成finality 但是再重複一次,BCH被51%攻擊的風險是真實存在的 而且我從BCH剛出來的時候就說BCH算力太少會是問題。 後來的確也發生BSV算力高過BCH,對BCH造成非常大的威脅。 為了避免可能發生的BSV對BCH進行51%攻擊。 假如大家有印象的話,那個時候有些交易所甚至把BCH的確認數拉到 ==========100個確認以上================ 請問有人想要等上一天才能存款確認嗎???有人會想要用這種東西來交易嗎???? 而且就算拉到100個確認以上,也不代表交易就達成finality 而是只要BSV燒多一點錢,1000個確認也照樣給你deep-reorg回來達成雙花攻擊 這種垃圾東西被交易所下架是遲早的事情。總不能說交易所你自認倒楣吧? 結果BSV先被下架了 XDDDDDDD 所以Bitcoin abc的dev加上了高度10個block的deep-reorg protection 這代表交易所最多只要接受10個確認,就可以100%保證達到finality。 而BCH真的被51%攻擊也很好知道哪條是攻擊鏈, 因為交易所被雙花的那一條一定就是攻擊鏈。 我敢保證大家一定會非常有共識地的拋棄攻擊鏈,這實在太好辨別了。 假如交易所普遍都接受10個確認入帳, 那當然要攻擊交易所雙花只能選擇10個區塊後才放出攻擊鏈, 不然交易所當然馬上切到算力最長鏈,所以我實在不曉得到底誰要自認倒楣。 10個區塊高度內試圖雙花 -> 交易所還沒入帳,發現雙花 -> 攻擊失敗 10個區塊高度後試圖雙花 -> deep-reorg protection觸發 -> 攻擊還是失敗 那在高度10之內的reorg就依照中本聰原有的想法繼續進行。 當有分叉鏈產生,依照中本聰原有的想法,在沒有51%攻擊的狀態下,會迅速產生共識。 因為押錯鏈,你產生的區塊都會不算數,Bitcoin沒有Uncle block的設計。 區塊鏈本來就是Permissionless的系統,礦工要押哪條分叉鏈就壓哪條。 只是中本聰的假設就是礦工是貪婪的,當然是押勝率最高的算力最長鏈啊。 (當然在有segwit或是avalanche的機制下就要考量其他因素了) 這個設計我認為只是對於本來BTC上很難發生的51%攻擊的一個補足。 尤其BCH自己的問題就是算力太少,51%攻擊是不能被忽視掉的風險。 -- simpleledger:qryeahexpqszdt9ffech6jhxu6wsfp0fnyhgd44ahf Bitcoin: 1GxtyprMfcxE366BDUsg1skQyuAnxktZjc https://www.blockchain.com/zh/btc/address/1GxtyprMfcxE366BDUsg1skQyuAnxktZjc Bitcoin Cash: bitcoincash:qp928h4q4xasa5wh2x88xhsxgc4vwj6g95uzq0ak97 https://goo.gl/2qNr43 Ethereum: 0x4A2B1e35eb64141bbad4C58cB7D79692bC5Dbbc2 https://etherscan.io/address/0x4A2B1e35eb64141bbad4C58cB7D79692bC5Dbbc2 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.237.120.157 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/DigiCurrency/M.1560099850.A.1C6.html ※ 編輯: DarkerDuck (36.237.120.157 臺灣), 06/10/2019 01:24:06
kugwa: 謝謝說明 所以只是算力不夠的暫時解囉? 06/10 01:24
kugwa: 理想上算力夠了的話就可以拿掉 雖然我不知道有沒有必要拿掉 06/10 01:25
DarkerDuck: 假如BCH算力跟BTC一樣多的時候,拿掉我覺得OK 06/10 01:26
kugwa: 另外想知道是否有 只有部分交易所觸發protection的先例 06/10 01:28
kugwa: 就是攻擊鏈剛好在深度9的時候廣播出來造成大家判斷不一致 06/10 01:28
kugwa: 我原文最底下是想問這個 06/10 01:28
kugwa: 這樣的話社群要依據什麼來判定這是否是攻擊 06/10 01:29
kugwa: *我在原文裡最底下的推文是想問這個 06/10 01:31
這判別是非常明確的,基本上沒有模糊地帶。 if (reorg的深度>=10) then 觸發deep-reorg protection 所以就算在深度9的時候廣播,理論上大部分的礦工仍然會切到算力最長鏈 除非說它就這麼剛剛好,誠實鏈區塊傳播到一半,網路節點的高度不一致 那麼高度9的會跳到攻擊鏈上,高度10的維持在誠實鏈上 不過在這種狀態下,網路仍然是分裂了,基本上就一樣是觸發了deep-reorg protection 假如交易所不想要遇到這種被隕石砸到的機率,大可以把確認數設成11就解決了。 ※ 編輯: DarkerDuck (36.237.120.157 臺灣), 06/10/2019 01:38:46
kugwa: 假如真的有人可以隨意發起51%攻擊 他要觸發這個「被隕石砸 06/10 01:41
kugwa: 到的機率」應該不會很難? 06/10 01:41
就算他真的要這樣搞,把確認數調成11就解決了,區塊傳播在BCH裡面也不過數秒的事情。 而且最重要的是,他這樣搞,仍然造成有許多節點被觸發了deep-reorg protection 避免不掉的
kugwa: 他就盯著深度9的時候 然後連線跟大礦池近一點 06/10 01:42
kugwa: 等一看到大礦池挖到下個區塊 馬上廣播攻擊鏈 06/10 01:43
kugwa: 要有共識的更改確認數應該是要發布軟體更新? 06/10 01:44
不用,那是交易所自己覺得多少確認達到finality可入帳而已,交易所自己設定 其實更正確的改法應該是10個確認後延遲一分鐘後入帳,等區塊都傳播完。 不用11個確認。
kugwa: 改軟體改成11之後 攻擊的人就改用10的時候廣播 06/10 01:45
不是,deep-reorg protection一樣是深度10的reorg觸發 ※ 編輯: DarkerDuck (36.237.120.157 臺灣), 06/10/2019 01:47:43
kugwa: 但是無論如何 還是讓眾交易所分裂了不是嗎 06/10 01:51
kugwa: 有的交易所走誠實鏈 有的走攻擊鏈 06/10 01:52
kugwa: 這樣大家要依據什麼來決定這次算不算攻擊 06/10 01:52
依一般的通則來看,先看有沒有交易所被雙花,試圖雙花的鏈一定會被當作攻擊鏈。 而後來出現的鏈也通常會被當作攻擊鏈。 因為中本聰本來就假設區塊產生就要立刻廣播到整個網路上,讓大家產生共識。 這些看交易所和各礦池的數據都很容易推估。 ※ 編輯: DarkerDuck (36.237.120.157 臺灣), 06/10/2019 01:57:35
Ayukawayen: 這好像很難做到很好,只是產生不同的攻擊手法,感覺攻 06/10 13:18
Ayukawayen: 擊者可以靠DRP蓄意製造網路分裂(不雙花,一塊一塊出, 06/10 13:18
Ayukawayen: 交替跟隨短鏈),然後在分裂出的兩條鏈上進行重放攻擊 06/10 13:18
要故意製造網路分裂當然也可以,不過這需要擁有大算力。 在算力只跟隨最長鏈的狀態下,你就要有51%的算力才能這樣玩。 既然有這樣的算力為什麼不乾脆雙花? 而且一但進到了reorg-protection基本上大部分的交易所就會不再入帳 直到網路重新回到共識 其實就算BCH不做deep-reorg protection 交易所自己也都會做deep-reorg alert 入帳後的加密貨幣不見了可是很恐怖的事情。 像上次ETC被deep-reorg,也是交易所第一時間發現和警告。 既然這種事件都會需要社群介入,不如就直接鎖定凍結,更方便於事後補救。 ※ 編輯: DarkerDuck (118.171.106.208 臺灣), 06/10/2019 17:46:15
Ayukawayen: 謝謝回覆,我再思考看看 XD 06/11 15:12
Ayukawayen: 感覺deep-reorg alert有其效用,但有DRA情況下做DRP的 06/11 15:44
Ayukawayen: 效用就不太確定... 06/11 15:44
Feira: 算一下攻擊成本沒那麼難吧 06/12 20:37
那你何不算算看?國中數學會吧。 ※ 編輯: DarkerDuck (36.237.121.186 臺灣), 06/12/2019 21:15:02 ※ 編輯: DarkerDuck (111.255.218.160 臺灣), 08/13/2019 09:13:16
slayptter: 不錯 04/16 01:00
slayptter: 蠻有趣的 04/16 01:00