最近被比特幣等虛擬貨幣刷屏了,比特幣、以太坊、狗狗幣,一大堆名詞撲面而來,不明就裡的人們被搞得暈頭轉向。
很多人都在關注虛擬貨幣的大漲大跌,卻幾乎沒有人關注到底是什麼樣的技術,支撐著這麼大的一個幣圈?虛擬貨幣交易的流程,到底是怎麼一回事?
非對稱加密貨幣
首先,我們得先理解什麼是非對稱加密貨幣。非對稱加密貨幣我們曾經詳細地對它進行了介紹,這裡只簡單地說一下概念。
對稱加密貨幣指的是加密貨幣和解密,用同一個密鑰。而非對稱加密貨幣其實很簡單,加密貨幣和解密必須使用一個密鑰對,密鑰對包含一個公鑰和私鑰。
公鑰是公開的,任何人都可以獲取,而私鑰只有自己知道。其他人可以使用公鑰加密貨幣數據,再發送給你,你再使用相對應的私鑰解密,得到數據。
當然也可以反向操作,使用私鑰加密貨幣數據,其他人再用公鑰解開。用自己私鑰加密貨幣的數據,只有對應的公鑰才能解開,所以這一方式可以用來驗證數據的真實性,也叫數字簽名。
別人用你的公鑰能解密成功,說明這一數據來自於你,而不是其他人,也沒有被篡改過。
虛擬貨幣原理
明白了非對稱加密貨幣,我們很容易理解虛擬貨幣背後的原理。
如果有人想轉一些比特幣給你,他就會使用你的公鑰進行加密貨幣發送給你,由於私鑰在你的手裡,只有你能解密,因此這筆錢就變成你的了。
可以看出,在整個虛擬貨幣交易過程中,私鑰非常重要,交易只針對私鑰,不針對某一個人,這也是虛擬貨幣匿名性的體現。
如果私鑰沒有保管好,洩露了,那麼自己的虛擬貨幣很容易被人偷走,因為別人可以拿著你的私鑰,冒充你進行交易。
交易流程
虛擬貨幣是如何進行交易的呢?
首先需要去虛擬貨幣交易所開戶,平台會自動生成一個密鑰對(公鑰和私鑰),存放在你的錢包裡。
在進行比特幣交易的時候,要用到比特幣地址,這個比特幣地址是怎麼來的呢?
這個地址是由公鑰演變而來的。
根據協議,公鑰長度為512位,這麼長顯然不易於傳播,因此協議又規定,應為公鑰生成一個160位的“指紋。”所謂的指紋,其實就是一個哈希值。
160位是二進制,一般用十六進製表示,所以比特幣地址一般在26到35個字符之間。這樣一來,比特幣的地址大幅縮短了。
在開始交易前,還有一個問題沒有解決。
因為比特幣等虛擬貨幣的交易記錄,是全部公開的,哪個地址有多少個比特幣都能被看到。
問題就出在這。
假如地址A說:“我向B地址支付了1個比特幣。”比特幣要怎麼驗證這個交易記錄是真實發生的,而不是某一個人隨意捏造的呢?
根據比特幣的協議,當A說給B支付了1個比特幣的時候,必須提供以下幾種證明:
你是從哪裡獲得這些比特幣的?你的比特幣地址是多少? B的比特幣地址是多少?你的公鑰是什麼?你用私鑰生成的數字簽名。
如果A地址能提供以上文件,就能證明這次交易真實發生了。
當A地址和B地址的交易真實發生後,還需要將本次的交易數據寫入到數據庫裡,B地址才能真正收到比特幣。
挖礦的礦工們
寫入數據庫的這項工作,由挖礦的礦工們承擔,他們負責把這一交易記錄寫入到區塊鏈中。
當A地址向B地址支付了1比特幣後,這一行為會通知所有正在挖礦的礦工們。
交易行為發生後,會先通知離A地址最近的那些礦工,當這些礦工收到消息後,又會把消息擴散到離他們較近的礦工們,經過一圈又一圈的傳播,所有人都會接收到這筆交易的信息。
根據比特幣協議,一個區塊大概可以包含2000多筆交易,礦工們負責把這2000多筆交易打包起來,組成一個區塊,然後計算這一區塊的哈希。
這一過程叫挖礦,需要大量的計算,誰能先算出哈希值,誰就能第一個將這一區塊添加進區塊鏈,獲得一定數量的比特幣,而其他礦工會一無所獲。
虛擬貨幣的交易,大概就是這樣一個過程,說起來其實也並不復雜。但能提出這一革命性構想的人,真的很了不起。在全世界無數愛好者的支持下,虛擬貨幣經濟越來越發達,其野蠻增長也受到了各國的關注,規範虛擬貨幣交易,成為全世界各國的共識。