區塊鏈專案實戰

4. Solidity智慧合約enum型別(列舉)

本小節主要討論enum型別, 1. enum基本結構 先對enum結構有個基本的認識,這個enum主要描述產品是否用過(New,Used)     enum ProductCondition{         New,        Used             } 2. 在struct中使用e […]

1. 區塊鏈專案開發常見錯誤-1-npm ERR! missing script: start

本節主要討論在通過npm start 時,出現“npm ERR! missing script: start“錯誤 出現這個錯誤的常見原因是 在package.json中沒有配置start 在通過truffle建立專案時,可以通過  1. truffle unbox webpack 通過這種方式建立 […]

04.區塊鏈的那些事兒-以太坊中的 Patricia Tree

本節主要討論以太坊中儲存的 Patricia Tree 比特幣只有1棵Merkle樹,而以太坊的每一個區塊頭,並非只包含1棵Merkle Tree,而是包含了3棵Merkle Tree,分別對應了三種物件: 交易(Transactions) 收據(Receipts)展示每一筆交易影響的資料條 狀態( […]

05.區塊鏈的那些事兒-Bitcoin原始碼的編譯與部署

本小節主要討論基於gitbhub.com進行Bitcoin原始碼的編譯與安裝,從而生成bitcoin 注意以下過程會是個比較漫長的過程,讀者要做好心裡準備,另外我的作業系統是mac  1. 安裝依賴 首先需要安裝相關依賴 brew install automake berkeley-db4 libt […]

06.區塊鏈的那些事兒-基於Bitcoin原始碼檢視區塊資訊

上一小節已經將bitcoin原始碼下來並進行了編譯和安裝,本節基於前一節的內容,在後臺檢視第一個區塊的資訊 1. 檢視BitCoin Core的位置 完成上一小節的操作之後,BitCoin Core的位置在 ./src/bitcoind 後續我們通過位於src下面的bitcoind完成bitcoin […]

07.區塊鏈的那些事兒-SPV和Merkle樹(默克爾)

本節討論區塊頭(head)中的Merkle(默克爾)樹,默克爾樹如下圖所示: 1.為什麼用到Merkle樹 Merkle樹用到SPV中。在這裡要討論一個問題,那就是如何通過輕錢包來保障支付的有效性,在比特幣中用到了Simplified Payment Verification,簡稱SPV,SPV指的 […]

2. Solidity智慧合約-建構函式與解構函式

本小節討論Solidity的建構函式和解構函式 1. 把以下程式碼拷貝到 http://remix.ethereum.org/ 其中標記藍色的部分為建構函式,標記紅色的部分為解構函式,與java中的一樣, 建構函式主要用於初始化,解構函式主要用於銷燬,在建構函式中初始化amount為90 pragm […]

1. 基於Solidity,Truffle,IPFS構建去中心化專案

本章我們討論如何基於以太坊的智慧建立去中心化的二手交易系統 主要目標:   掌握區塊鏈專案開發的整體邏輯 主要內容: 1. 基於Truffle框架進行專案建立 2. 基於Solidity編寫智慧合約 3. 基於IPFS實現圖片的儲存 操作步驟: 1. 在Shell中建立專案資料夾 upsale    […]

1. Solidity編寫智慧合約-智慧合約整體結構

Solidity是一種語法類似JavaScript的高階語言。它被設計成以編譯的方式生成以太坊虛擬機器程式碼。 所謂智慧合約是指執行在區塊鏈上的程式碼 本小節從一個簡單的案例講解智慧合約的結構,為了方便期間,我們使用線上編譯器 1. 開啟線上編輯器  http://remix.ethereum.or […]