學習區塊鏈

區塊鏈

一、區塊鏈的基本流程
在這裏插入圖片描述
任何機器都可以運行一個完整的比特幣節點,一個完整的比特幣節點包括如下功能:

1.錢包,允許用戶在區塊鏈網絡上進行交易
2.完整區塊鏈,記錄了所有交易歷史,通過特殊的結構保證歷史交易的安全性,並且用來驗證新交易的合法性
3.礦工,通過記錄交易及解密數學題來生成新區塊,如果成功可以賺取獎勵

4.路由功能,把其它節點傳送過來的交易數據等信息再傳送給更多的節點

在這裏插入圖片描述

二、區塊鏈技術創新的發展方向

1. 從上面的流程圖片我們可以分開來看

  1-2 是交易的部分,我們可以將此部分進行擴展,比如:
  • 從一方轉移價值到另一方

  • 一方或幾方需要匿名

  • 價值必須存儲在合約本身,並且存儲一段時間

  • 希望避免轉移真實貨幣產生的交易費用

  • 需要建立共識

  • 希望顯示公開性,把狀態存儲在公共域

  • 需要確保物理或虛擬材料的來源和真實性

    馬上想到的應用有:拍賣,借貸,遺囑,註冊,衆籌,股權,和投票。智能合約就是再發展。

2.確認驗證

   3部分是交易的確認驗證部分-區塊鏈共識算法,比特幣使用的工作量證明俗稱挖礦,在此基礎上進行擴展,還有其他一些驗證機制,雙花、分叉等問題的解決方案

在這裏插入圖片描述

3.區塊鏈的結構

   4-5部分主要是數據鏈的組成-比如 Merkle Tree,雙鏈等機制。

三、代碼的簡單實現
對於研發人員來說,要透徹理解這些最簡單的就是看代碼研究明白或者自己寫一遍。很幸運有前人這樣做了。我們可以站在巨人的肩膀上。我也是從別人那裏fork了一份。java版本的模擬比特幣的源碼

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章