iT邦幫忙

2024 iThome 鐵人賽

DAY 4
0

Hi all, 到了第四天終於可以來搞專案了,今天的目標很簡單,我想要寫出取得 Block 的 API。

首先來簡單介紹下 Block 的結構:

{
		Index: Block 的索引值,用來標識這是區塊鏈中的第幾個區塊。
		Timestamp: 區塊創建的時間。
		Data: 儲存在區塊中的資料,可以是任何類型的資料。
		Previous Hash: 前一個區塊的雜湊值,用來鏈接到前一個區塊,確保區塊鏈的連續性。
		Hash: 當前區塊雜湊值。
		Nonce: 一個隨機數,用於工作量證明 (Proof of Work) 算法,確保區塊的有效性。
}

接下來說明下區塊雜湊值的計算:

Hash = SHA256 ( Timestamp + Previous Hash + Data + Nonce)

其中 Nonce 是個變數值,他會隨著當前的計算困難度( Difficulty) 而有所變化,由於是自己的區塊鏈環境,我們不需要太過強的困難度,因此困難度可視為0。

以下就是 TDD 寫出 Get Block 的過程,供參:

Yes

由上面的影片可以看出,我們搭建了專案的三層架構,且在 Repository層 hard code 一個 block 資料作為回傳值,明天的時候再來定義 Block 的生成哈。

今天應該就先到這, 先付上專案 GitHub 任意門

總結: 青藍色星期二,明天不是假日,後天也不是。


上一篇
Day03 Introduce 三層式架構
下一篇
Day05 Generate New Block
系列文
Side-Project:: 為自己打造個可編輯的區塊鏈30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言