⑴ 什麼是比特幣加密技術
比特幣和區塊鏈的誕生需要依賴於很多核心技術的突破:一是拜占庭容錯技術;二是非對稱加密技術;三是點對點支付技術。下面會依次介紹。
拜占庭容錯技術
比特幣和區塊鏈誕生的首要難點在於如何創建分布式共識機制,也就是菜斯利·蘭伯特等人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的掌握之下。全世界只有極少數程序躲過了這一漏洞,比特幣便是其中之一。
⑵ 中本聰是怎麼解決拜占庭將軍問題的a設計了可復用的工作量證明por+pow+pow工作
摘要 故事大概是這么說的:
⑶ 如何理解拜占庭將軍問題
拜占庭將軍問題(Byzantine failures)又稱兩軍問題,是由萊斯利·蘭伯特提出的點對點通信中的基本問題。含義是在存在消息丟失的不可靠信道上試圖通過消息傳遞的方式達到一致性是不可能的。因此對一致性的研究一般假設信道是可靠的,或不存在本問題。
⑷ 區塊鏈的核心技術:共識機制&智能合約
不論你是否接受,未來終將改變。
區塊鏈技術給數字經濟時代帶來了巨變的曙光。
這種巨變在互聯網近50年的歷史上曾發生過兩次。第一次巨變是全球性的聯
網……第二次巨變是全球性的應用……第三次巨變正在蘊釀。
————摘自《騰訊區塊鏈方案白皮書》
當第一次讀到這段時,完全不敢想像這是一家世界級企業對一項新技術的評價,
瞬間引起了我的興趣。「巨變」是什麼含義?就是說完全有可能顛覆我們現有的
經濟結構和認知,徹底改變我們的生活方式。
一種從2009年才誕生的比特幣技術中 抽象而來的block chain(區塊鏈)技術,
居然獲得了這么高的評價,這難道不是很神奇的一件事么?不管這件事會不會發
生,已經令人非常激動了,我們正在迎接一項變革並且可能參與其中,不是任何
時代的人都有這種機會,何其幸運!
不論你是否接受,未來終將改變。全球眾多經濟學家、企業家、國家政要都在推
崇區塊鏈,聲稱區塊鏈技術將重塑商業、貨幣和世界,將顛覆互聯網、銀行、證
券、保險、物流、電力、製造、會計稅收、法律服務、文化創業、醫葯衛生等眾
多行業。
雖然說到「區塊鏈」,大家都會提到「去中心化」,也舉了很多形象的例子。但
是我是一個較真的人,希望能夠找到大家做出這種判斷,背後的邏輯到底是什
么?就需要搞懂一切推斷背後的本質,就需要了解區塊鏈的核心技術邏輯。
閱讀了一些書籍和資料之後,拋開「比特幣」不說,要了解區塊鏈,有兩個核心
名詞:共識機制、智能合約。
共識機制是區塊鏈技術的核心,要搞清楚」共識機制「,就不得不提著名的「拜
占庭將軍問題」,拜占庭將軍問題由萊斯利·蘭伯特提出的點對點通信中的基本
問題,主要是用於分析在分布式節點傳輸信息時如何保持數據的一致,即共識這
個問題。
拜占庭將軍問題
一組拜占庭將軍分別各率領一支軍隊共同圍困一座城市。為了簡化問題,將各支
軍隊的行動策略限定為進攻或撤離兩種。
因為部分軍隊進攻部分軍隊撤離可能會造成災難性後果,因此各位將軍必須通過
投票來達成一致策略,即所有軍隊一起進攻或所有軍隊一起撤離。因為各位將軍
分處城市不同方向,他們只能通過信使互相聯系。
在投票過程中每位將軍都將自己投票給進攻還是撤退的信息通過信使分別通知其
他所有將軍,這樣一來每位將軍根據自己的投票和其他所有將軍送來的信息就可
以知道共同的投票結果而決定行動策略。
系統的問題在於,將軍中可能出現叛徒,他們不僅可能向較為糟糕的策略投票,
還可能選擇性地發送投票信息。這樣各支軍隊的一致協同就遭到了破壞。由於將
軍之間需要通過信使通訊,叛變將軍可能通過偽造信件來以其他將軍的身份發送
假投票。而即使在保證所有將軍忠誠的情況下,也不能排除信使被敵人截殺,甚
至被敵人間諜替換等情況。因此很難通過保證人員可靠性及通訊可靠性來解決問
題。
假始那些忠誠的將軍仍然能通過多數決來決定他們的戰略,便稱達到了拜占庭容
錯。
拜占庭將軍問題被認為是容錯性問題中最難的問題類型之一。在一個有n個節點的
系統中,每一個節點都有一個輸入的值,其中一些節點具有故障,甚至是惡意
的。
在分布式計算中,不同的計算機通過通訊交換信息達成共識而按照同一套協作策
略行動。但有時候,系統中的成員計算機可能出錯而發送錯誤的信息,用於傳遞
信息的通訊網路也可能導致信息損壞,使得網路中不同的成員關於全體協作的策
略得出不同結論,從而破壞系統一致性。
但是中本聰在設計比特幣系統時應用的「工作量證明鏈」(PoW)模型很好的解決
了共識問題,至於什麼是「PoW」,感興趣的可以研究下。
智能合約是一套以數字形式定義的承諾(promises) ,包括合約參與方可以在
上面執行這些承諾的協議。一個合約就是存在區塊鏈里的程序。合約的參與雙方
將達成的協議提前安裝到區塊鏈系統中。在雙方的約定完成後,開始執行合約,
不能修改。至於合約執行所需要的「燃料」,也就是手續費,也需要提前支付。
智能合約可以解決日常生活中常見的違約問題,如果應用到各行業中,可以避免
違約的信用問題。
在區塊鏈出現之前,商業領域的信任關系通常要依賴於正直、誠信的個人、中介
機構或其他組織才能建立起來。在區塊鏈這個新興的領域中,信任關系的建立是
基於網路,甚至是網路上的某個對象。由區塊鏈驅動的智能合約將會要求雙方遵
守他們的承諾。
在區塊鏈體系中,共識機制和智能合約,保證了數據的真實性和合約執行力,實
現「去中心化」。當然還有很多技術層面的東西沒有說到,感興趣的可以深入了
解下。
雖然大部分人對於區塊鏈的認知還停留在比特幣、各種代幣上,也就是對金融行
業的變革。但是了解區塊鏈核心邏輯後,結合自己所在的行業「區塊鏈 +」,區
塊鏈的各行業的應用剛進前半場,相信都會想到很多好的創新方向。