1. 程式人生 > >【譯】用JavaScript寫一個區塊鏈

【譯】用JavaScript寫一個區塊鏈

幾乎每個人都聽說過像比特幣和以太幣這樣的加密貨幣,但是隻有極少數人懂得隱藏在它們背後的技術。在這篇部落格中,我將會用JavaScript來建立一個簡單的區塊鏈來演示它們的內部究竟是如何工作的。我將會稱之為SavjeeCoin!

全文分為三個部分:

  1. part1:實現一個基本的區塊鏈
  2. part2:實現POW
  3. part3:交易與挖礦獎勵

Part1:實現一個基本的區塊鏈

區塊鏈

區塊鏈是由一個個任何人都可以訪問的區塊構成的公共資料庫。這好像沒什麼特別的,不過它們有一個有趣的屬性:它們是不可變的。一旦一個區塊被新增到區塊鏈中,除非讓剩餘的其餘區塊失效,否則它是不會再被改變的。

這就是為什麼加密貨幣是基於區塊鏈的原因。你肯定不希望人們在交易完成後再變更交易!

創造一個區塊

區塊鏈是由許許多多的區塊連結在一起的(這聽上去好像沒毛病..)。鏈上的區塊通過某種方式允許我們檢測到是否有人操縱了之前的任何區塊。

那麼我們如何確保資料的完整性呢?每個區塊都包含一個基於其內容計算出來的hash。同時也包含了前一個區塊的hash。

下面是一個區塊類用JavaScript寫出來大致的樣子:

原文連結