當前位置:首頁 » 比特幣問答 » 比特幣拜占庭將軍

比特幣拜占庭將軍

發布時間: 2022-04-20 15:15:01

1. 比特幣如何防止篡改

比特幣網路主要會通過以下兩種技術保證用戶簽發的交易和歷史上發生的交易不會被攻擊者篡改:

  • 非對稱加密可以保證攻擊者無法偽造賬戶所有者的簽名;

  • 共識演算法可以保證網路中的歷史交易不會被攻擊者替換;

  • 非對稱加密


  • 非對稱加密演算法3是目前廣泛應用的加密技術,TLS 證書和電子簽名等場景都使用了非對稱的加密演算法保證安全。非對稱加密演算法同時包含一個公鑰(Public Key)和一個私鑰(Secret Key),使用私鑰加密的數據只能用公鑰解密,而使用公鑰解密的數據也只能用私鑰解密。

  • 圖 4 - 51% 攻擊


  • 1使用如下所示的代碼可以計算在無限長的時間中,攻擊者持有 51% 算力時,改寫歷史 0 ~ 9 個區塊的概率9:

  • #include

  • #include


  • double attackerSuccessProbability(double q, int z) {

  • double p = 1.0 - q;

  • double lambda = z * (q / p);

  • double sum = 1.0;

  • int i, k;

  • for (k = 0; k <= z; k++) {

  • double poisson = exp(-lambda);

  • for (i = 1; i <= k; i++)

  • poisson *= lambda / i;

  • sum -= poisson * (1 - pow(q / p, z - k));

  • }

  • return sum;

  • }


  • int main() {

  • for (int i = 0; i < 10; i++) {

  • printf("z=%d, p=%f\n", i, attackerSuccessProbability(0.51, i));

  • }

  • return 0;

  • }


  • 通過上述的計算我們會發現,在無限長的時間中,佔有全網算力的節點能夠發起 51% 攻擊修改歷史的概率是 100%;但是在有限長的時間中,因為比特幣中的算力是相對動態的,比特幣網路的節點也在避免出現單節點佔有 51% 以上算力的情況,所以想要篡改比特幣的歷史還是比較困難的,不過在一些小眾的、算力沒有保證的一些區塊鏈網路中,51% 攻擊還是極其常見的10。


  • 防範 51% 攻擊方法也很簡單,在多數的區塊鏈網路中,剛剛加入區塊鏈網路中的交易都是未確認的,只要這些區塊後面追加了數量足夠的區塊,區塊中的交易才會被確認。比特幣中的交易確認數就是 6 個,而比特幣平均 10 分鍾生成一個塊,所以一次交易的確認時間大概為 60 分鍾,這也是為了保證安全性不得不做出的犧牲。不過,這種增加確認數的做法也不能保證 100% 的安全,我們也只能在不影響用戶體驗的情況下,盡可能增加攻擊者的成本。

  • 總結


  • 研究比特幣這樣的區塊鏈技術還是非常有趣的,作為一個分布式的資料庫,它也會遇到分布式系統經常會遇到的問題,例如節點不可靠等問題;同時作為一個金融系統和賬本,它也會面對更加復雜的交易確認和驗證場景。比特幣網路的設計非常有趣,它是技術和金融兩個交叉領域結合後的產物,非常值得我們花時間研究背後的原理。


  • 比特幣並不能 100% 防止交易和數據的篡改,文中提到的兩種技術都只能從一定概率上保證安全,而降低攻擊者成功的可能性也是安全領域需要面對的永恆問題。我們可以換一個更嚴謹的方式闡述今天的問題 — 比特幣使用了哪些技術來增加攻擊者的成本、降低交易被篡改的概率:

  • 比特幣使用了非對稱加密演算法,保證攻擊者在有限時間內無法偽造賬戶所有者的簽名;

  • 比特幣使用了工作量證明的共識演算法並引入了記賬的激勵,保證網路中的歷史交易不會被攻擊者快速替換;


  • 通過上述的兩種方式,比特幣才能保證歷史的交易不會被篡改和所有賬戶中資金的安全。

2. 你知道區塊鏈本質是什麼嗎比特幣的原理又是什麼

區塊鏈發展到今天已經有一段時間了,在這段時間里,人們對區塊鏈的認知經歷了快速的更換。

區塊鏈的本質是技術

既然說到本質,什麼是本質?本質應該是不停向前追溯,一直追溯到不能進一步追溯為止,那時得到的東西才能稱之為本質。區塊鏈的本質,是一種技術。回到區塊鏈最初的那個原點,回到比特幣剛剛誕生的時候,它要解決的問題是拜占庭將軍問題,從專業角度來講,也就是要解決如何在分布式環境下達成一致性的問題。區塊鏈這種技術,是多項技術的組合,它天然適合多方合作,可以為多方合作提供可信環境。

區塊鏈不可篡改特性的應用

比特幣的技術原理P2P網路

比特幣是一個P2P的計算機網路,每一個網路節點存儲著這個網路上所有的交易記錄。 一般來說任何信息記錄在一個節點加若干備份就可以了。在每一個節點上存儲一遍這個網路的所有交易記錄,這導致交易記錄被每個節點可以看見、每個節點不能獨立任意修改交易記錄,所以形成了一套公開透明的交易記錄。

3. 什麼是比特幣加密技術

比特幣和區塊鏈的誕生需要依賴於很多核心技術的突破:一是拜占庭容錯技術;二是非對稱加密技術;三是點對點支付技術。下面會依次介紹。
拜占庭容錯技術
比特幣和區塊鏈誕生的首要難點在於如何創建分布式共識機制,也就是菜斯利·蘭伯特等人1982年提出的拜占庭將軍問題。所謂拜占庭將軍問題是指,把戰爭中互不信任的各城邦軍隊如何達成共識並決定是否出兵的決策過程。延伸至計算機領域,試圖創建具有容錯性的分布式系統,即使部分節點失效仍可確保系統正常運行,也可讓多個基於零信任基礎的節點達成共識,並確保信息傳遞的一致性。
中本聰所提到的「拜占庭將軍問題」解決方法起始於亞當﹒拜克在1997年發明的哈希現金演算法機制,起初該設計是用於限制垃圾郵件發送與拒絕服務攻擊。2004年,密碼朋克運動早期和重要成員哈爾·芬尼將亞當﹒拜克的哈希現金演算法改進為可復用的工作量證明機制。他們的研究又是基於達利亞·馬凱與邁克爾·瑞特的學術成果:拜占庭容錯機制。正是哈爾·芬尼的可復用的工作量證明機制後來成為比特幣的核心要素之一。哈爾·芬尼是中本聰的最早支持者,同時也是第一筆比特幣轉賬的接受者,在比特幣發展的早期與中本聰有大量互動與交流。
非對稱加密技術
比特幣的非對稱加密技術來源於以下幾項密碼學的技術創新:1976年,Sun公司前首席安全官Whitfield Diffie與斯坦福大學教授Martin Hell,在開創性論文《密碼學的新方向》首次提出公開鑰匙密碼學的概念,發明了非對稱加密演算法。1978年省理工學院的倫納德·阿德曼、羅納德·李維斯特、阿迪·薩莫爾三名研究人員,共同發明了公開鑰匙系統「RSA」可用於數據加密和簽名,率先開發第一個具備商業實用性的非對稱RSA加密演算法。1985年,Neal Koblitz和Victor Miller倆人,首次提出將橢圓曲線演算法(ECC),應用於密碼學,並建立公鑰加密的演算法,公鑰密碼演算法的原理是利用信息的不對稱性,公鑰對應的是私鑰,私鑰是解開所有信息的鑰匙,公鑰可以由私鑰反推算出。ECC能夠提供比RSA更高級別的安全。比特幣使用的就是橢圓曲線演算法公鑰用於接收比特幣,而私鑰則是比特幣支付時的交易簽名。這些加密演算法奠定了當前非對稱加密理論的基礎,被廣泛應用於網路通信領域。但是,當時這些加密技術發明均在NSA嚴密監視的視野之內。NSA最初認為它們對國家安全構成威脅,並將其視為軍用技術。直到20世紀90年代末,NSA才放棄對這些非對稱加密技術的控制,RSA演算法、ECC演算法等非對稱加密技術最終得以走進公眾領域。
不過,中本聰並不信任NSA公布的加密技術,在比特幣系統中沒有使用RSA公鑰系統,原因除了ECC能夠提供比RSA更高級別的安全性能外,還擔心美國安全部門在RSA留有技術後門。2013年9月,斯諾登就曾爆料NSA採用秘密方法控制加密國際標准,比特幣採用的RSA可能留有後門,NSA能以不為人知的方法弱化這條曲線。所幸的是,中本聰神一般走位避開了RSA的陷阱,使用的加密技術不是NSA的標准,而是另一條鮮為人知的橢圓曲線,這條曲線並不在美國RSA的掌握之下。全世界只有極少數程序躲過了這一漏洞,比特幣便是其中之一。

4. 比特幣真正的價值是什麼

「價值」不應與價格混淆,價格是比特幣的貨幣成本。比特幣的價值是其創新,網路和功能的許多方面的結果。

1.科學價值

在科學領域,比特幣創新對解決長期存在的拜占庭將軍問題。中本聰解決了數字雙重支出的困境是通過一個自我組織和時間的共識記錄來實現的。區塊鏈,一個共享的公共分類帳,是由填充比特幣網路的對等網路節點保持。通過雲挖礦賺取比特幣!

比特幣合約由中本聰編寫,盡管該協議的這個方面迄今為止只有很少的應用。合同擴展了比特幣的多重簽名功能,允許兩方或多方參與由比特幣網路外部實現的協議。例如選項合同,遺囑,甚至簡單的二元賭注,例如足球比賽的結果。將來,比特幣的這種功能將會被更好地理解,更頻繁地使用,並為協議增加更多的價值。

5. 如何理解拜占庭將軍問題

拜占庭將軍問題(以下簡稱「共識問題」)的正式表述是:如何在一個不基於信任的分布式網路中就信息達成共識?這個表述聽起來有些晦澀,但其本質並不復雜,下面的例子與共識問題雖然並不完全一致,但卻有助於我們的理解[9]。 想像一下在遙遠的拜占庭時代,有一個富饒的城邦,金銀珠寶綾羅綢緞應有盡有,它的領主哆啦A夢獨享著這一切奢華與榮耀。而在城邦的外圍,四位拜占庭將軍大雄、胖虎、小夫和靜香都覬覦著哆啦A夢的財富,於是他們決定聯手攻佔哆啦A夢的城邦。根據雙方的實力對比,必須有超過半數的將軍同時發起進攻方能克敵制勝,因此獲勝條件就是四人中至少三個人可以就進攻時間達成一致。那麼四位將軍的勝算有多少呢? 這個問題的答案就要取決於四個人的合作方式了,如果是集中式系統,有一個盟主,比如胖虎(相當於中央伺服器),那麼他們的勝利是毫無懸念的,因為就進攻時間達成一致非常簡單,只要胖虎召集大雄、小夫和靜香開個會討論一下就可以了,即使大家意見有分歧胖虎也可以在最後予以定奪。下面讓我們回到拜占庭將軍問題的假設里,在不基於信任的分布式網路中,四位將軍的勝算又如何呢? ? 首先由於四位將軍之間缺乏信任,因此聚到小黑屋裡開個密謀會的可能性被排除了(一旦在小黑屋裡被胖虎綁架了怎麼辦?);其次由於沒有盟主,四個人的意見都會被同等的看重。在這種情況下,四位將軍只能通過信使在各自營地之間傳遞消息,來商定進攻時間了。比如大雄覺得早上6點是發動進攻的好時機,他就會派信使將自己的意見告訴胖虎、小夫和靜香,與此同時,胖虎可能認為晚上9點發動突襲更好,小夫更喜歡下午3點出擊,而靜香希望是上午10點,他們三人也會在同一時間派出自己的信使。這樣一來,在第一輪通信結束後,四位將軍每個人都有了四個可供選擇的進攻時間,他們各自要在下一輪通信中把自己選定的時間告知另外三人。由於四個人的決策都是獨立做出的,因此最終的選擇結果就有256種可能,而只有當三人以上都恰好選擇了同一時間的時候,共識才被達成,而這樣的結果才64種,也就是說達成共識的概率僅為1/4。這還只是四位將軍的情況,如果將軍的人數是10人,100人,1000人呢?我們稍加計算就可以發現隨著人數的增加,達成共識的希望會變得越來越渺茫。 把上面例子中的將軍換成計算機網路中的節點,把信使換成節點之間的通信,把進攻時間換成需要達成共識的信息,你就可以理解共識問題所描述的困境了。達成共識的能力對於一個支付系統來說重要性不言而喻,如果你給家裡匯了一筆錢買車,第二天去銀行核實的時候櫃台告訴你「關於你匯了多少錢的問題,我們的系統里有三個版本的記錄」,這樣的銀行你顯然是不敢把錢存進去的。在比特幣出現之前共識問題是很難被完美解決的,要保證達成共識就需要採用集中式系統(除非節點滿足特定條件),要想去中心化共識就無法保證。那麼區塊鏈技術又是如何解決這一難題的呢?

6. 比特幣的價值是什麼

從本質上來說,比特幣只是一個計算機軟體,對大部分人來說也就是一堆看不懂的代碼,幾乎沒辦法看清它到底有什麼價值。
而要說憑一個軟體能賺那麼多身家的,我們最耳熟能詳且最容易理解的也就是比爾蓋茨和它的微軟windows操作系統了。Windows 走入千家萬戶、各行業,人們通過這個計算機程序提高了生產力、創造出了巨大的價值,於是微軟甚至一度成為全世界市值最高的公司。
那麼同樣作為一個「身價」特別高的軟體比特幣呢?「價值來自共識」,這句話聽得耳朵都起了老繭,其實很多人更想要知道的是,比特幣具體都給哪些人和事帶來了什麼樣的價值,從而支撐了對它的共識,並穩步推高它的市值超過1萬億?

1. 礦工及其它礦業生態參與者
簡單的說,比特幣礦機對於礦工來說就是源源不斷獲利的機器,它能像雞一樣下蛋產生價值,甚至走向百億身家富豪之路,這就是比特幣對於礦工、礦機場商、礦池(服務商)等參與礦業生態上下游這些人的價值。礦工對於比特幣來說是最為重要的參與者,而對於礦工來說,能夠生產比特幣的礦機,就是一隻會下金蛋的「母雞」。盡管挖礦一途並非想像中那麼簡單,而且真的有點像開「養雞場」一般需要提供各種合適的環境、維護以及「食物」(能源)的輸送才能夠順利產下「金蛋」獲利,但是礦工們是被比特幣的利益分配機制所吸引,並不斷有新的礦工加入進來。

2. 使用者
比特幣系統全名叫做:一個點對點的電子現金系統,因此對於使用者來說,就是可以用它來發起轉賬交易。那麼為什麼要用它來轉賬呢?說白了就是省時、省力和省錢。比特幣不需要通過銀行、第三方支付公司等等中轉而直接到達對方賬戶,也就免去了第三方機構的處理時間、操作人力和費用,銀行等金融機構通過金融業務收取來的費用給自己建起的高樓大廈就能說明這筆費用有多龐大。其實很多人對第三方擔保機構的概念不是很理解,很多時候我們轉賬是免費的,因為在信用社會里,小額轉賬是通過不同金融機構之間的信用額度完成的,並不是真正的轉移。

3. 儲存者、投機者
因為比特幣有使用價值,並且有很多優質的特性特別像黃金,且有部分特性優於黃金,也有了黃金一樣的「部分」避險和儲值功能,於是它逐漸被當做是黃金這種國際硬通貨一樣開始被許多人囤積起來。

4. 貧窮落後或「動盪」地區的人民
由於比特幣的轉賬成本低、所需時間短。在許多貧窮落後的國家,通過加密網路來轉賬可以不必建設昂貴的網路基礎設施,比特幣的基礎設施由世界各地的礦工組建而成,不需要貧窮國家政府負擔,而用於支付和發放薪水沒有任何中間費用,可以節省很大一筆錢。

5. 能源價值儲存
在這個世界上有許多這樣的角落,地處偏遠但礦產豐富或者水利、風力等自然資源豐富。比如部分地區有很多煤礦,但迫於運輸成本過高無法往外運輸,同時由於人煙稀少,這些地區建設起來的火電、水電站、風電場產生的電能是非常過剩的,往往這些地區的經濟又比較落後。這時候他們就非常需要和歡迎礦工的入駐,礦工們不但帶來了大量工作崗位,還把當地富餘的能源轉換成電力資源再通過比特幣挖礦大量產出收益,此舉其實相當於把原本可能富餘浪費的能源價值通過比特幣網路儲存起來,然後再通過電費繳付給當地政府和人民,帶動當地的經濟。

鏈喬教育在線旗下學碩創新區塊鏈技術工作站是中國教育部學校規劃建設發展中心開展的「智慧學習工場2020-學碩創新工作站 」唯一獲準的「區塊鏈技術專業」試點工作站。專業站立足為學生提供多樣化成長路徑,推進專業學位研究生產學研結合培養模式改革,構建應用型、復合型人才培養體系。

7. 中本聰是怎麼解決拜占庭將軍問題的a設計了可復用的工作量證明por+pow+pow工作

摘要 故事大概是這么說的:

8. 剛剛了解,誰能告訴我區塊鏈是什麼通俗解釋一下區塊鏈技術的方法

大家共同記賬的方式,也被稱為「分布式」或「去中心化」,因為人人都記賬,且賬本的准確性由程式演算法決定,而非某個權威機構。

這就是區塊鏈,核心講完了,區塊鏈就這么簡單,一個共同記賬的賬本

區塊鏈技術六大核心演算法:

區塊鏈核心演算法一:拜占庭協定

拜占庭的故事大概是這么說的:拜占庭帝國擁有巨大的財富,周圍10個鄰邦垂誕已久,但拜占庭高牆聳立,固若金湯,沒有一個單獨的鄰邦能夠成功入侵。任何單個鄰邦入侵的都會失敗,同時也有可能自身被其他9個鄰邦入侵。拜占庭帝國防禦能力如此之強,至少要有十個鄰邦中的一半以上同時進攻,才有可能攻破。然而,如果其中的一個或者幾個鄰邦本身答應好一起進攻,但實際過程出現背叛,那麼入侵者可能都會被殲滅。於是每一方都小心行事,不敢輕易相信鄰國。這就是拜占庭將軍問題。

區塊鏈核心演算法二:非對稱加密技術

在上述拜占庭協定中,如果10個將軍中的幾個同時發起消息,勢必會造成系統的混亂,造成各說各的攻擊時間方案,行動難以一致。誰都可以發起進攻的信息,但由誰來發出呢?其實這只要加入一個成本就可以了,即:一段時間內只有一個節點可以傳播信息。當某個節點發出統一進攻的消息後,各個節點收到發起者的消息必須簽名蓋章,確認各自的身份。

區塊鏈核心演算法三:容錯問題

我們假設在此網路中,消息可能會丟失、損壞、延遲、重復發送,並且接受的順序與發送的順序不一致。此外,節點的行為可以是任意的:可以隨時加入、退出網路,可以丟棄消息、偽造消息、停止工作等,還可能發生各種人為或非人為的故障。我們的演算法對由共識節點組成的共識系統,提供的容錯能力,這種容錯能力同時包含安全性和可用性,並適用於任何網路環境。

區塊鏈核心演算法四:Paxos 演算法(一致性演算法)

Paxos演算法解決的問題是一個分布式系統如何就某個值(決議)達成一致。一個典型的場景是,在一個分布式資料庫系統中,如果各節點的初始狀態一致,每個節點都執行相同的操作序列,那麼他們最後能得到一個一致的狀態。為保證每個節點執行相同的命令序列,需要在每一條指令上執行一個「一致性演算法」以保證每個節點看到的指令一致。一個通用的一致性演算法可以應用在許多場景中,是分布式計算中的重要問題。 節點通信存在兩種模型:共享內存和消息傳遞。Paxos演算法就是一種基於消息傳遞模型的一致性演算法。

區塊鏈核心演算法五:共識機制

區塊鏈共識演算法主要是工作量證明和權益證明。拿比特幣來說,其實從技術角度來看可以把PoW看成重復使用的Hashcash,生成工作量證明在概率上來說是一個隨機的過程。開采新的機密貨幣,生成區塊時,必須得到所有參與者的同意,那礦工必須得到區塊中所有數據的PoW工作證明。與此同時礦工還要時時觀察調整這項工作的難度,因為對網路要求是平均每10分鍾生成一個區塊。

區塊鏈核心演算法六:分布式存儲是一種數據存儲技術,通過網路使用每台機器上的磁碟空間,並將這些分散的存儲資源構成一個虛擬的存儲設備,數據分散的存儲在網路中的各個角落。所以,分布式存儲技術並不是每台電腦都存放完整的數據,而是把數據切割後存放在不同的電腦里。就像存放100個雞蛋,不是放在同一個籃子里,而是分開放在不同的地方,加起來的總和是100個。想了解更多可以多利用網路搜索,網路搜索結果-小知識

9. 為什麼說區塊鏈是製造信用的機器

區塊鏈技術具有匿名性、去中心化、公開透明等特點。所以,區塊鏈被譽為製造信用的機器.區塊鏈並不是新發明的一種技術,而是一系列技術的集成,包括非對稱加密技術、時間戳、共識機制等。
以比特幣為例,區塊鏈通過時間戳(Timestamp)和工作量證明(Proof of Work)機制解決了雙重支付(Double Spending)和拜占庭將軍問題(Byzantine Generals』 Problem),即保證同一筆比特幣不可能被花費2次,並且在整個去中心化的區塊鏈網路中,在所有節點間保持一致。
非對稱加密機制保證私鑰的安全性,時間戳保證區塊按順序連接成鏈,工作量證明機制解決了在去中心化系統中如何公平地分發2100萬個比特幣的問題。

熱點內容
以太坊瘋玩 發布:2025-07-28 12:11:38 瀏覽:431
比特幣是什麼類型鏈 發布:2025-07-28 12:10:04 瀏覽:683
區塊鏈礦機免費領 發布:2025-07-28 12:09:17 瀏覽:521
去長春市醫保局中心的路線 發布:2025-07-28 12:04:25 瀏覽:35
杭州數字貨幣量化公司 發布:2025-07-28 11:30:25 瀏覽:284
trx運動 發布:2025-07-28 11:21:36 瀏覽:856
什麼幣可以充值usdt 發布:2025-07-28 11:21:36 瀏覽:739
為什麼比特幣跌以太坊升 發布:2025-07-28 11:11:34 瀏覽:53
2019年10月比特幣納斯達克上市了嗎 發布:2025-07-28 11:10:59 瀏覽:139
Usdt交易池 發布:2025-07-28 11:01:42 瀏覽:564