當前位置:首頁 » 區塊鏈知識 » 區塊鏈怎麼避免雙花

區塊鏈怎麼避免雙花

發布時間: 2021-04-24 09:17:48

區塊鏈使用安全如何來保證呢

區塊鏈本身解決的就是陌生人之間大規模協作問題,即陌生人在不需要彼此信任的情況下就可以相互協作。那麼如何保證陌生人之間的信任來實現彼此的共識機制呢?中心化的系統利用的是可信的第三方背書,比如銀行,銀行在老百姓看來是可靠的值得信任的機構,老百姓可以信賴銀行,由銀行解決現實中的糾紛問題。但是,去中心化的區塊鏈是如何保證信任的呢?
實際上,區塊鏈是利用現代密碼學的基礎原理來確保其安全機制的。密碼學和安全領域所涉及的知識體系十分繁雜,我這里只介紹與區塊鏈相關的密碼學基礎知識,包括Hash演算法、加密演算法、信息摘要和數字簽名、零知識證明、量子密碼學等。您可以通過這節課來了解運用密碼學技術下的區塊鏈如何保證其機密性、完整性、認證性和不可抵賴性。
基礎課程第七課 區塊鏈安全基礎知識
一、哈希演算法(Hash演算法)
哈希函數(Hash),又稱為散列函數。哈希函數:Hash(原始信息) = 摘要信息,哈希函數能將任意長度的二進制明文串映射為較短的(一般是固定長度的)二進制串(Hash值)。
一個好的哈希演算法具備以下4個特點:
1、 一一對應:同樣的明文輸入和哈希演算法,總能得到相同的摘要信息輸出。
2、 輸入敏感:明文輸入哪怕發生任何最微小的變化,新產生的摘要信息都會發生較大變化,與原來的輸出差異巨大。
3、 易於驗證:明文輸入和哈希演算法都是公開的,任何人都可以自行計算,輸出的哈希值是否正確。
4、 不可逆:如果只有輸出的哈希值,由哈希演算法是絕對無法反推出明文的。
5、 沖突避免:很難找到兩段內容不同的明文,而它們的Hash值一致(發生碰撞)。
舉例說明:
Hash(張三借給李四10萬,借期6個月) = 123456789012
賬本上記錄了123456789012這樣一條記錄。
可以看出哈希函數有4個作用:
簡化信息
很好理解,哈希後的信息變短了。
標識信息
可以使用123456789012來標識原始信息,摘要信息也稱為原始信息的id。
隱匿信息
賬本是123456789012這樣一條記錄,原始信息被隱匿。
驗證信息
假如李四在還款時欺騙說,張三隻借給李四5萬,雙方可以用哈希取值後與之前記錄的哈希值123456789012來驗證原始信息
Hash(張三借給李四5萬,借期6個月)=987654321098
987654321098與123456789012完全不同,則證明李四說謊了,則成功的保證了信息的不可篡改性。
常見的Hash演算法包括MD4、MD5、SHA系列演算法,現在主流領域使用的基本都是SHA系列演算法。SHA(Secure Hash Algorithm)並非一個演算法,而是一組hash演算法。最初是SHA-1系列,現在主流應用的是SHA-224、SHA-256、SHA-384、SHA-512演算法(通稱SHA-2),最近也提出了SHA-3相關演算法,如以太坊所使用的KECCAK-256就是屬於這種演算法。
MD5是一個非常經典的Hash演算法,不過可惜的是它和SHA-1演算法都已經被破解,被業內認為其安全性不足以應用於商業場景,一般推薦至少是SHA2-256或者更安全的演算法。
哈希演算法在區塊鏈中得到廣泛使用,例如區塊中,後一個區塊均會包含前一個區塊的哈希值,並且以後一個區塊的內容+前一個區塊的哈希值共同計算後一個區塊的哈希值,保證了鏈的連續性和不可篡改性。
二、加解密演算法
加解密演算法是密碼學的核心技術,從設計理念上可以分為兩大基礎類型:對稱加密演算法與非對稱加密演算法。根據加解密過程中所使用的密鑰是否相同來加以區分,兩種模式適用於不同的需求,恰好形成互補關系,有時也可以組合使用,形成混合加密機制。
對稱加密演算法(symmetric cryptography,又稱公共密鑰加密,common-key cryptography),加解密的密鑰都是相同的,其優勢是計算效率高,加密強度高;其缺點是需要提前共享密鑰,容易泄露丟失密鑰。常見的演算法有DES、3DES、AES等。
非對稱加密演算法(asymmetric cryptography,又稱公鑰加密,public-key cryptography),與加解密的密鑰是不同的,其優勢是無需提前共享密鑰;其缺點在於計算效率低,只能加密篇幅較短的內容。常見的演算法有RSA、SM2、ElGamal和橢圓曲線系列演算法等。 對稱加密演算法,適用於大量數據的加解密過程;不能用於簽名場景:並且往往需要提前分發好密鑰。非對稱加密演算法一般適用於簽名場景或密鑰協商,但是不適於大量數據的加解密。
三、信息摘要和數字簽名
顧名思義,信息摘要是對信息內容進行Hash運算,獲取唯一的摘要值來替代原始完整的信息內容。信息摘要是Hash演算法最重要的一個用途。利用Hash函數的抗碰撞性特點,信息摘要可以解決內容未被篡改過的問題。
數字簽名與在紙質合同上簽名確認合同內容和證明身份類似,數字簽名基於非對稱加密,既可以用於證明某數字內容的完整性,同時又可以確認來源(或不可抵賴)。
我們對數字簽名有兩個特性要求,使其與我們對手寫簽名的預期一致。第一,只有你自己可以製作本人的簽名,但是任何看到它的人都可以驗證其有效性;第二,我們希望簽名只與某一特定文件有關,而不支持其他文件。這些都可以通過我們上面的非對稱加密演算法來實現數字簽名。
在實踐中,我們一般都是對信息的哈希值進行簽名,而不是對信息本身進行簽名,這是由非對稱加密演算法的效率所決定的。相對應於區塊鏈中,則是對哈希指針進行簽名,如果用這種方式,前面的是整個結構,而非僅僅哈希指針本身。
四 、零知識證明(Zero Knowledge proof)
零知識證明是指證明者在不向驗證者提供任何額外信息的前提下,使驗證者相信某個論斷是正確的。
零知識證明一般滿足三個條件:
1、 完整性(Complteness):真實的證明可以讓驗證者成功驗證;
2、 可靠性(Soundness):虛假的證明無法讓驗證者通過驗證;
3、 零知識(Zero-Knowledge):如果得到證明,無法從證明過程中獲知證明信息之外的任何信息。
五、量子密碼學(Quantum cryptography)
隨著量子計算和量子通信的研究受到越來越多的關注,未來量子密碼學將對密碼學信息安全產生巨大沖擊。
量子計算的核心原理就是利用量子比特可以同時處於多個相干疊加態,理論上可以通過少量量子比特來表達大量信息,同時進行處理,大大提高計算速度。
這樣的話,目前的大量加密演算法,從理論上來說都是不可靠的,是可被破解的,那麼使得加密演算法不得不升級換代,否則就會被量子計算所攻破。
眾所周知,量子計算現在還僅停留在理論階段,距離大規模商用還有較遠的距離。不過新一代的加密演算法,都要考慮到這種情況存在的可能性。

㈡ 區塊鏈是怎樣防止數據篡改的

區塊鏈是分布式數據存儲、點對點傳輸、共識機制、加密演算法等計算機技術的新型應用模式。

跟傳統的分布式存儲有所不同,區塊鏈的分布式存儲的獨特性主要體現在兩個方面:一是區塊鏈每個節點都按照塊鏈式結構存儲完整的數據,傳統分布式存儲一般是將數據按照一定的規則分成多份進行存儲。二是區塊鏈每個節點存儲都是獨立的、地位等同的,依靠共識機制保證存儲的一致性,而傳統分布式存儲一般是通過中心節點往其他備份節點同步數據。

沒有任何一個節點可以單獨記錄賬本數據,從而避免了單一記賬人被控制或者被賄賂而記假賬的可能性。也由於記賬節點足夠多,理論上講除非所有的節點被破壞,否則賬目就不會丟失,從而保證了賬目數據的安全性。

存儲在區塊鏈上的交易信息是公開的,但是賬戶身份信息是高度加密的,只有在數據擁有者授權的情況下才能訪問到,從而保證了數據的安全和個人的隱私。

區塊鏈提出了四種不同的共識機制,適用於不同的應用場景,在效率和安全性之間取得平衡。

基於以上特點,這種數據存儲技術是可以完美防止數據被篡改的可能性,在現實中也可以運用到很多領域之中,比我們的電子存證技術在電子合同簽署上提供了更安全可靠的保證。

㈢ HNB是怎麼應對「區塊鏈不可能三角」的呢

「區塊鏈不可能三角」是指在一個分布式計算機系統中,一致性、可用性和分區容錯性這三種特性,無法保證同時得到滿足,最多同時滿足其中的兩個特性;系統設計者需要根據不同的需求進行取捨。

HNB當前應用場景與經濟模型,效率應當是首先被考慮的,需要支持更大的並發事務和高性能。同時作為一個圍繞支付作為核心的系統,在保證低延遲的前提下,需要避免出現雙花問題,因此安全可靠也是至關重要的。基於上述分析,HNB提出了DPoS+Algorand的演算法,通過DPoS進行共識組的選舉,然後Algorand進行區塊鏈的生成。

基於這樣組合的共識演算法,主要的優勢為:一、利用身份屬性的Dpos選出的節點充分考慮了利益分配和公平性,避免了單一群體作惡的情況。二、共識達成速度較快,且速度不會隨著系統節點增多而降低,能夠支持海量節點.此外利用Dpos來競選候選節點會比利用Algorand來純粹隨機挑選普通用戶更為穩定和相對高性能的配置。三、記賬者完全隨機且隱秘,無法對其產生特定攻擊。四、在保證安全性的前提下不做無意義的運算,節省算力資源。五、單一記賬者出現分叉的概率接近0,容錯率高。

如此一來,「區塊鏈不可能三角」也可以有效解決,為HNB用戶創造了一個充分得到保障的社區環境。

㈣ 區塊鏈的作用和特點是什麼

1.任何節點都可以創建交易,在經過一段時間的確認之後,就可以合理地確認該交易是否為有效,區塊鏈可有效地防止雙花問題的發生。
2.對於試圖重寫或者修改交易記錄而言,它的成本是非常高的。
3.區塊鏈實現了兩種記錄:交易(transactions)以及區塊(blocks)。交易是被存儲在區塊鏈上的實際數據,而區塊則是記錄確認某些交易是在何時,以及以何種順序成為區塊鏈資料庫的一部分。交易是由參與者在正常過程中使用系統所創建的(在加密數字貨幣的例子中,一筆交易是由bob將代幣發送給alice所創建的),而區塊則是由我們稱之為礦工(miners)的單位負責創建。

㈤ VS公鏈如何解決區塊鏈領域經典的「不可能三角「問題

第一,專屬游戲社區的 PoS+PoD 混合共識機制大幅提升公鏈網路的效率和一致性。
第二,社區自治,一切決策由社區成員投票決定。在混合共識機制下,PoS 氪金玩家和 PoD 技術玩家均有較高的收益率和話語權,這有效避免了中心化算力和中心化財力對整個游戲生態的影響,進而降低了分叉風險。如果有節點想針對某協議或標准提出分叉,則需要全體節點參與投票,如果投票結果的 PoD+PoS 加權值超過 50%,則系統默認高加權值的鏈為有效鏈,所有節點會在投票結果中約定的時間遷移至新鏈挖礦
第三,由於游戲玩家對硬體設備的性能、帶寬都有要求,VS 公鏈將參與記賬的節點玩家設置為兩類:全節點與輕節點。玩家可以手動切換全節點與輕節點,一般在游戲過程中採用輕節點模式,給予游戲更多的硬體支持,而在游戲結束後及掛機期間,則啟動全節點模式。
第四,游戲內的所有交易許可權,均來自於玩家,只有玩家通過專有秘鑰授權後,游戲資產才可以流通。同時,所有交易數據均採用的現代密碼學技術 ECC(橢圓加密演算法)進行加密,保障區塊鏈信息安全。
第五,VS 作為游戲領域的垂直公鏈,首先會完成去中心化的游戲製作、虛擬資產發行和通證經濟運行的整體解決方案。包括游戲引擎、開發者環境、標准 SDK 等,這降低了游戲開發者從各個環境進入區塊鏈游戲開發的難度和門檻,這極大地降低了游戲開發團隊的工作量和成本,也使得 VS 公鏈的可拓展性變得極高。

㈥ 區塊鏈項目投資怎麼能避免踩坑 呢

現在區塊鏈概念很火,各種騙局也隨之而來,不少夢想一夜暴富的人,懵里懵懂就被收割,我建議新人最好先來OKEx這樣的專業平台進行學習和投資,這樣可以少踩很多坑。很高興我的回答能夠對您有幫助

㈦ 雙花理論是什麼概念

在學習區塊鏈的過程中,大家一定對會聽到「雙花」這個詞,意思就是雙重支付,或者更直白點就是一筆資金被花費了兩次。這篇文章我們來簡單的分析一下為什麼會有雙花,比特幣是如何避免雙花的。

在傳統的交易中,因為有銀行這樣的中心化機構,所以是不會存在雙花問題的:每一筆支付都將從你的銀行賬戶中扣除相應的資金,所有的明細在銀行都有記錄。但是在比特幣中,因為沒有賬戶的概念,而是引入了UTXO即未花費交易輸出。因為沒有銀行這樣的中心化機構的保證,當發生一筆交易時就可能存在著雙花的危險:比方說A有一個比特幣,然後他同時構造兩筆交易T1和T2來花費這1個比特幣,其中一個給了B,從B那裡買件衣服,一個給了C,從C那裡買雙鞋。如果不引入某種機制來避免這種情況,那作為數字貨幣的比特幣將沒有任何存在的意義。接下來就來分析一下比特幣是如何做到防止這種「雙花」攻擊的。

(1) 正常情況

首先我們來看看正常情況,說白了就是絕大多數時候,區塊鏈的共識機制就能將雙花消滅在萌芽狀態。我們還是以上面提到的例子來做說明:

假設A構造了兩筆交易T1和T2,將自己價值1btc的UTXO分別轉給了B和C,妄圖同時從B和C那裡獲得好處。然後A幾乎在同一時間將構造好的這兩筆交易廣播至網路。

假設網路中的礦工節點先收到了交易T1,發現這筆交易的資金來源確實沒有被花費過,於是將T1加入到自己的內存交易池中等待打包進區塊。

大部分情況下,這個礦工節點會在不久後又收到交易T2,此時因為T2所指向的交易輸入與已經加入交易池的T1相同,於是礦工節點會拒絕處理該交易。網路中其他的礦工節點都類似,因此A試圖雙花的嘗試胎死腹中。

(2) 分叉情況

上面說的是正常的情況,但是也有非正常的情況要考慮:假設礦工節點M1和M2幾乎在同一時間挖出了區塊,並且很不幸M1挖到區塊時只收到了交易T1,而M2挖到的區塊時只收到了交易T2,這樣交易T1和T2被分別打包進兩個區塊。因為這兩個區塊是差不多同一時間被挖出,於是造成了區塊鏈的分叉:

網路中某些節點(可能是離M1近的)先收到了M1打包的區塊BLK1,於是用該區塊延長自己的區塊鏈,而另外一些節點(鄰近M2的)則先收到M2打包的區塊BLK2,用該區塊延長自己的區塊鏈,於是整個區塊鏈網路

㈧ 在區塊鏈中,雙花問題是什麼問題呢

  • 什麼是雙花問題呢?

雙花問題,簡單講就是一筆錢能被花兩次三次很多次。為什麼雙花問題會成為比特幣系統裡面一個這么重要的問題呢?

原因就在於:比特幣,是虛擬貨幣,它是虛擬的,通過代碼形式呈現出來的,是可以被復制下來的。一旦被攻破了代碼漏洞,那麼就可以循環使用同一筆比特幣,這樣一來,比特幣這種「錢」就會變得很雞肋。

我們想一下,要是一筆錢可以花很多次,你有500塊錢,你去買一件500塊錢的衣服,還能循環使用,再去買一雙500塊錢的鞋,這樣一來,錢還能叫錢嗎?

所以,中本聰在設定比特幣系統的時候,他所有的技術手段基本上都是圍繞著解決

「雙花問題」的,來保護比特幣作為一種貨幣,它自身的一個支付手段職能。

其實,這個雙花問題在我們現在的中心化世界裡面根本不是問題,因為有銀行,錢的交易結算都是通過銀行,很安全,有問題直接找銀行。

但是,在去中心化世界裡面呢,沒有銀行這樣一個中心機構,還必須保證一筆錢只能花一次,怎麼樣實現在去中心化的前提下,杜絕「雙花問題」呢,這是一個難題。

這里插一句,中本聰為什麼如此執著的追求「去中心化」呢,自找煩惱嗎?不是,他希望能夠通過去中心化,來解決一些社會問題,其中最主要的問題就是:因為權力機構過量發行貨幣造成的通貨膨脹。

所以,我們總結一下他的邏輯:中心化的貨幣增發導致通貨膨脹——所以我們要實現去中心化——去中心化要面臨很多問題,最大的問題是雙花問題——所以我們要解決雙花問題——怎麼解決雙花問題?

這里,中本聰就引入了UTXO和「時間戳」概念,依靠這兩種手段來解決雙花問題。

熱點內容
去奧林匹克中心游泳跳水館怎麼走 發布:2025-05-11 03:59:12 瀏覽:376
比特幣UBl數字貨幣 發布:2025-05-11 03:46:55 瀏覽:248
新媒體與元宇宙的概念 發布:2025-05-11 03:43:25 瀏覽:841
去賽特購物中心有多少公里 發布:2025-05-11 03:43:24 瀏覽:48
元宇宙的引爆點是啥 發布:2025-05-11 03:33:30 瀏覽:147
分眾傳媒屬於元宇宙概念嗎 發布:2025-05-11 03:21:47 瀏覽:611
新華社成立元宇宙聯創中心創時代 發布:2025-05-11 02:51:34 瀏覽:725
杭州in77去嘉里中心 發布:2025-05-11 02:49:20 瀏覽:631
180萬元的宇宙頭像 發布:2025-05-11 02:28:41 瀏覽:490
井通幣是中國數字貨幣嗎 發布:2025-05-11 02:28:00 瀏覽:538