這裡讓我們用一個有點廢XD的簡單生活故事,來作為這段旅程的開始:
Lisa 跟 Jason 兩個人是一個部門的同事,Jason 最近在Lisa的IG動態上,常常看到她跑去參加加密貨幣相關的聚會,某天午休放風時間他們聊了起來 …..
Lisa 口頭帶 Jason 基本認識了比特幣,並順帶幫他在手機創建一個比特幣錢包,準備打一筆錢給他,做個實際的交易小示範。
Lisa 接著打開自己的錢包應用,收款方複製填上Jason 錢包裡的地址 ,並打上0.001 BTC,按下了發送鍵把交易發布出去!
前言
如果你有閱讀過前面的《什麼是比特幣?- 與法幣的六大差異》,你會知道比特幣是一個去中心化的網路,沒有中央機構來執行驗證與清算功能,比特幣是透過網路裡參與者們依規則進行互動,來讓一筆交易被信任、驗證並最終紀錄在區塊鏈的帳本上。藉由交易的旅程地圖,我們要開始進一步認識在 Lisa 發出交易的那一刻,到 Jason 的地址確認收到錢的過程,比特幣網路是如何透過分散式帳本技術讓比特幣能點對點的被安全轉移?
發送交易要求後,發生了什麼事?
回到剛剛Lisa跟Jason午休聊到比特幣的事件,當 Lisa 按下了交易發送鍵後,Lisa的錢包軟體會使用她的「私鑰」為交易生成一個「數位簽章」,簽署這筆交易。
這個簽名動作,用來後續驗證這筆錢的確是由Lisa本人所發出,
錢包會開始把加上簽名的交易封包廣播給鄰近的節點,不到一秒的時間內,比特幣網路的所有運作正常的節點都會收到這筆交易訊息,而Jason剛創建的的地址也是第一次被比特幣網路作查看。
比特幣網路上的所有節點都有權驗證這筆交易的有效性,利用:
- 數位簽章:當Lisa的私鑰簽署下這筆交易時,私鑰會為交易生成的一個「數位簽章」
- Lisa的公鑰 :以Lisa的公鑰來驗證這個數位簽章是由Lisa的私鑰所簽署的
- 交易內容:「Lisa已授權把這筆錢轉給Jason的地址」
藉由以上三者,比特幣網路上的任何節點都能確定這筆交易是由Lisa所發布的,且節點接收新交易後,會去確認Lisa的錢包帳戶是否有足夠的餘額可以動用,餘額足夠的話,這筆交易會成功列入「等待確認的佇列中」,準備被打包出塊,添加到比特幣區塊鏈上。
此時Jason的錢包增加了一個訊息,顯示地址正在接收款項……