不懂程式,也能理解的區塊鏈錢包技術原理(一)角色與功能
你好!新手上路,有錯還請指正。
誰適合閱讀這系列文章?
本系列文章會分成三小篇,從錢包軟體的用途、功能範圍開始,至三個錢包技術原理,無任何程式碼,以及複雜的技術,或是詳細的運算函式解說,整體以有邏輯與架構的方式說明,希望給不懂程式技術的讀者,有個易讀的內容。
(一)角色與功能
(二)創建地址&數位簽章
(三)HD Wallet
若讀者尚未了解區塊鏈一些基礎知識,例如:地址、私鑰與助記詞,可以參考我的文章「看完頓然開悟了!區塊鏈錢包使用指南(一)基礎入門知識」。
錢包軟體的技術範疇
一般在談錢包軟體的技術範疇時,會由三個部分所構成。
⦿ 區塊鏈技術(私鑰、公鑰與地址的生成)
⦿ 錢包本身技術(助記詞、HD Wallet)
⦿ 接入網路技術(Http、RPC)
以技術角度來說,上述是很棒的切分,但若直接介紹技術,可能讀者在理解上會有些生硬,於是我將會從錢包的角色與功能切入,帶大家認識其背後有趣的技術。
錢包軟體的角色
我先以一張圖來表示錢包軟體運作所牽涉的範圍。
錢包軟體的角色,可以比喻成連上區塊鏈網路的瀏覽器,是我們與區塊鏈網路 P2P Network 的中間橋樑,我們透過錢包連線上區塊鏈網路,讀取鏈上的資訊,也可發出使用資產的指令。
也可以想像它是一個傳譯員,將我們想要指令訊息,翻譯傳送給區塊鏈網路,以及接收與顯示網路傳回的訊息,例如:
- 傳送:我要轉500顆以太幣給A帳戶
- 傳送:我要發行一千萬顆的房地產代幣(智能合約)
- 傳送:我要部署一個應用程式(Dapp)
- 顯示:轉帳成功/失敗等。
錢包軟體的功能
❶ 創建私鑰、地址
使用者想與某區塊鏈網路互動(比特幣、以太坊)就必須有地址與私鑰,於是錢包軟體一開始要協助使用者創建私鑰,並依照該區塊鏈的地址協議與定義,推算出地址給使用者使用。
❷ 傳遞訊息
錢包要傳送的訊息,可能價值很高,例如:轉出500顆以太幣(市值280萬)、發行房地產代幣(擔保品市值3000萬),發布應用程式的程式碼(百人工程團隊花費三年打造)等,所以傳遞訊息的可靠性與安全性,相當重要。
❸ 接入網絡
接入網絡的技術(Http、RPC),跟過往做法沒什麼差異,所以本系列文章不會探討,讀者可另行查詢相關資料。
❹ 管理私鑰
私鑰是使用區塊鏈上資產的關鍵,於是如何妥善的進行私鑰備份與分類使用,會直接影響到錢包服務的多元性與易用性。
本篇就到這邊,下兩篇會針對上述❶❷❹功能,說明其背後的技術原理或解決方案。
如果喜歡這篇文章,可以透過拍手👏給我鼓勵一下。
*拍手按鈕可以點擊 1–50 次
*長按按鈕會自動增加次數。
歡迎至下方拍手鼓勵,謝謝大家 😄