對于51%攻擊,一般都是共識失敗后才能成功蚌父,其實對于51%攻擊哮兰,并不局限于一種毛萌,所以考慮到多種可能的攻擊,是需要分析哪些可能被這樣的攻擊者利用喝滞。
一
首先攻擊者是無法從他人賬戶中偷幣的阁将,除非攻擊者可以推翻加密方法,否則直接偷幣是不可能的囤躁。然后我們假設(shè)攻擊者制造了一個不正當(dāng)?shù)膮^(qū)塊冀痕,里面有一筆不正當(dāng)交易荔睹,在這筆交易中把比特幣從不受自己控制的地址轉(zhuǎn)移到自己的地址上狸演。攻擊者可以把這筆交易偽裝成正當(dāng)交易,然后繼續(xù)在這個區(qū)塊后面延續(xù)建造區(qū)塊僻他,甚至可以把它變成一個最長的鏈宵距。但是這其中會有個問題,就是其他的誠實節(jié)點不會認(rèn)可這個不正當(dāng)交易所在的區(qū)塊吨拗,他們依舊會去比特幣網(wǎng)絡(luò)中找到之前最后一個正當(dāng)?shù)膮^(qū)塊满哪,然后基于此區(qū)塊繼續(xù)延續(xù)。所以從這一刻開始劝篷,鏈上就出現(xiàn)了分叉哨鸭。
二
當(dāng)攻擊者把其他人錢包中的比特幣轉(zhuǎn)入到自己的地址中后,就會想著把這筆非法的比特幣花出去娇妓,這就是另一種攻擊方式像鸡,通過付給某個商家來購買他的商品。假設(shè)商家運(yùn)行著自己的比特幣節(jié)點哈恰,而且這是一個誠實節(jié)點只估。那么商家的這個節(jié)點就會因為含有這筆不正當(dāng)?shù)慕灰锥芙^這個非法的分支,因為區(qū)塊中的數(shù)字簽名相互不吻合着绷。所以商家的節(jié)點就會自然的忽略掉攻擊者制造的那個最長的鏈蛔钙,因為這是一個非法的分支。然后轉(zhuǎn)向比特幣網(wǎng)絡(luò)中之前最后一個正當(dāng)?shù)膮^(qū)塊荠医,在這后面延續(xù)吁脱。所以這個攻擊是基本上不可能成功的。
三
接下來說另一種攻擊彬向,51%攻擊者可以壓制其他交易嗎兼贡?比如攻擊者特別討厭某個用戶飯飯,他知道飯飯的一些比特幣地址幢泼,想使屬于這些地址的幣都無法使用紧显。但是這可能嗎?由于攻擊者控制了區(qū)塊鏈的共識過程缕棵,他可以輕易地拒絕創(chuàng)造包含來自飯飯地址的交易的新區(qū)塊孵班,他還可以進(jìn)一步拒絕在含有類似交易的區(qū)塊上延展涉兽。但他不能阻止這個交易被廣播到整個點對點網(wǎng)絡(luò),因為網(wǎng)絡(luò)不依賴于區(qū)塊鏈或者共識篙程,我們假設(shè)攻擊者還沒完全掌控網(wǎng)絡(luò)枷畏。他不能阻止這個交易被發(fā)送到絕大部分節(jié)點上,所以即使他成功了虱饿,大家也都知道發(fā)生了攻擊拥诡。
四
攻擊者可以改變區(qū)塊獎勵嗎?比如說攻擊者開始假裝把區(qū)塊獎勵由25個幣改成100個幣氮发?這是對系統(tǒng)規(guī)則的改動渴肉,因為他沒有控制所有誠實節(jié)點上運(yùn)行著的比特幣軟件備份,所以同樣不可能爽冕。這和為什么攻擊者無法裝入一筆非法交易的道理是一樣的仇祭。其他節(jié)點不會輕易認(rèn)可區(qū)塊獎勵提高,所以他也無法使用這些區(qū)塊颈畸。
五
最后乌奇,這個攻擊者會摧毀大家對比特幣的信心嗎?好吧眯娱,讓我們想象一下會發(fā)生什么礁苗。如果有很多雙重支付嘗試,諸如節(jié)點不延展最長的有效分支徙缴,以及發(fā)生其他攻擊试伙,那么人們有可能會覺得比特幣不再是一個他們可以信賴的去中心化賬簿。人們會對貨幣失去信心娜搂,比特幣價格將會無限下跌迁霎。實際上,如果人們知道有一方控制了51%的哈希算力(hash power)百宇,即使這個人沒有發(fā)動任何攻擊考廉,大家也可能會對比特幣失去信心。所以携御,這不僅僅是可能昌粤,事實上任何形式的51%攻擊都會摧毀大家對貨幣的信心,這是51%攻擊可以實現(xiàn)的最主要的實際威脅啄刹′套考慮到在攻擊比特幣,實現(xiàn)51%多數(shù)的過程中誓军,會花費(fèi)掉巨額的代價袱讹,而且這還是一個吃力不討好的活,所以這種情況我們現(xiàn)在看來基本是不可能發(fā)生的。
至此希望您對比特幣的去中心化管理有了一個完整的了解捷雕。你也應(yīng)該理解了比特幣里的身份如何工作椒丧、交易是如何被傳播和驗證的、比特幣里點對點網(wǎng)絡(luò)的作用救巷、如何用區(qū)塊鏈達(dá)成共識壶熏、函數(shù)難題與挖礦是怎么回事。這些概念為理解比特幣的更多微妙細(xì)節(jié)和細(xì)微差別提供了堅實的理論基礎(chǔ)浦译,是一個良好的出發(fā)點棒假。