走進開源代碼
目錄
走進開源代碼
前言
從哪里開始?
總結
前言
今天是個既特殊又年輕的節日——雙十一(剁手節),也算是個有紀念意義的開端吧!上周參加了系統架構設計師考試,論文沒有寫完,雖然這次肯定是過不了了,也算體驗了一把,論文肯定要事先練習,否則邊想邊寫在2小時內寫3000字——相當于2秒寫一個字,還是很緊張的,
作為一個老程式員,碼了不少的代碼,其實沒什么精品,也就是熟練一些,看代碼稍微快一點,而今開源代碼已經成為熱愛技術,喜愛分享,勤于探索的人心馳神往的寶庫,因此想擠出一點時間學習一些開源專案的代碼,并記錄下學習的心得,供同樣熱愛代碼的小伙伴參考交流,
近年來,區塊鏈技術越來越收到各國的關注,在2017年,一次偶然的機會,我了解到了區塊鏈這個概念,然后就在圖書館借了幾本有關區塊鏈的書,詳細了解了一下,看完我挺震驚的,隱約感覺到,區塊鏈的去中心化,資產數字化,價值傳遞將會給金融領域的一場變革,他還可以與其他技術比如物聯網,5G,人工智能相結合,最終對其他的行業和領域產生巨大影響,由于作為區塊鏈2.0的代表以太坊是使用Go語言開發的,所以我就開始自學Go語言,并入職了一家區塊鏈公司,
雖然后來由于一些原因離開了公司,但我一直關注區塊鏈技術的發展,也堅信區塊鏈技術的前途不可限量,所以決定就從區塊鏈技術的先鋒——位元幣,開始吧!
從哪里開始?
開源代碼通常都比較龐大,位元幣的原始碼也不例外!有關區塊鏈和位元幣的介紹就不贅述了,網上也有不少關于位元幣原始碼的介紹,
首先我重溫了論文《位元幣:一種點對點電子貨幣系統》,然后參考了這篇文章,位元幣的架構并不像當前流行的微服務以及C/S,B/S三層架構,這是由于區塊鏈是基于P2P(Peer-to-Peer)對等網路實作的,位元幣架構總體上分為兩部分,一部分是前端,包括錢包(Wallet)或圖形化界面;另一部分是運行在每個節點的后臺程式,包括挖礦、區塊鏈管理、腳本引擎以及網路管理等功能,

總結
正所謂“麻雀雖小,五臟俱全”,作為區塊鏈1.0,真正的解決了論文中提到的問題:
1.在缺少可信任第三方的情況下如何防止雙重支付?——所有交易就必須公開發布 ,而且需要一個能讓所有參與者對交易收到順序的單一歷史達成共識的系統,
2.如何解決在分布式系統中維護一個統一的“賬本”并保證“賬本”不被篡改?——每個節點都只承認包含時間戳資訊的哈希值組成的一條最長鏈,
3.如何保證區塊鏈中節點的“活性”?——給計算出來新區快哈希值的節點獎勵,也就是給“礦工”獎勵,“礦工”計算新區塊哈希值的程序就稱為“挖礦”,
位元幣是當之無愧老大,解決了上述三個問題就是這10多年來幾經浮沉而依然屹立的重要原因,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/218643.html
標籤:其他
