1、非對稱加密是比特幣去中心化的來源
中心化是需要壹個類似銀行的中心機構來驗證交易的。去中心化本質上是讓所有的節點都能驗證交易的真偽,中本聰用了非對稱加密的技術來解決中心化的問題。
非對稱加密技術是什麽?是指加密和解密的時候使用不同的密鑰的加密算法。比如:A要向B發送信息,A和B都要產生壹對用於加密的公鑰和私鑰顧名思義,私鑰就是不能公開的,公鑰就是要公開的。A發送信息給B時,A就用B的公鑰對信息加密,B收到後,B用B的私鑰解密A的消息,而其他所有收到這個信息的人都無法解密,因為只有B才擁有這個私鑰。
簡單的說,公鑰和私鑰在非對稱加密機制裏是成對存在的,公鑰和私鑰可以去相互驗證對方,我們可以把地址理解為公鑰,把簽名輸密碼的過程理解為私鑰的簽名。每個礦工在拿到壹筆轉賬交易時,都可以時都可以驗證公鑰和私鑰到底是不是匹配的,如果是匹配的,這筆交易就合法。這樣,我們每個人只需要保管好自己的私鑰,自己的公鑰和對方的公鑰就可以安全地進行轉賬,不需要中心的機構來驗證對方發來的比特幣是不是真的。
2、工作量證明機制是比特幣不可篡改的技術來源
工作量證明 機制,是壹種對在差不多時間內發生的事物的先後順序達成***識的壹種算法。監測工作的整個過程通常是效率非常低的,而通過對工作的結果進行認證來證明完成了壹定工作的工作量,是壹種非常高效的方式。比如我們日常中的各種證 駕駛證 學位證 結婚證就是這樣壹種有結果獲悉完成工作量的證明。
工作量證明 的特點,對於執行方來說難度是適中的,對於驗證方來說是非常容易被驗證的。礦工們通過哈希計算,最先算出結果,獲得記賬權,其他節點經過非常簡單的驗證之後,就可以同樣其記賬,並同步賬本。打上時間戳後,緊接著進行下壹輪計算。
如果這時候有人想把某個信息進行修改,他需要做什麽呢?他需要從這個區塊開始把之後所有的區塊都重新計算壹遍,把賬本再同步給其他人。而在他進行計算的同時,其他礦工們已經在原來的的鏈上繼續往前進行計算了。因為在比特幣的網絡裏,大家認為最長的鏈才是正確的鏈。所以,這個惡意篡改的人,需要在很短的時間內趕上現有區塊的高度度,讓自己的這條鏈成為最長的鏈,並讓其他礦工誤以為自己的這條鏈是正確的,這基本上是壹件不可能的事,除非這個惡意篡改的人擁有超強的算力,至少超過全網的50%。那麽我們來算算,現在全網的算力是8億哈希每秒,也就是每秒進行8乘10的18次方計算,現在市場上流行的主流礦機每臺的算力是10T左右,如果妳想擁有全網51%的算力,妳最少需要40萬臺最新礦機,如果按1萬元每臺礦機計算,僅設備就需投入40億元人民幣,加上礦機的供不應求,老礦機算力下降,全網算力的不斷上漲等因素,如果不是為了60億以上的利潤回報並有強大的技術做支撐,壹般人很難有這個動機和能力。
3、“UTXO”結構是比特幣不可偽造的技術來源
先問個問題,如果我發給妳1個比特幣,妳怎麽知道這個比特幣是真的而不是我偽造出來的,或者我已經同時轉給了其他人了呢,這就要說到UTXO結構了。
UTXO(Unspend Transaction Output)是個什麽鬼?意思是未花費的交易輸出。來個栗子,假設我要給妳100元,其中有兩張張50元紙鈔,壹張是隔壁老王給我的,另外壹張是小賣部小麗找零給我的,拿到這兩張張鈔票我需要拿在手上並還未花出去時才能交易給妳,這就是未花費的交易輸出。而通過這兩張鈔票往前追溯可以知道是誰交給了老王和小麗,並最終追溯到是由哪家銀行發行,什麽時候央行批準發行的源頭,比特幣裏也有這樣壹個原理。在比特幣世界裏的每壹筆轉賬,都能夠追溯到上壹筆交易。每壹筆付款,都可以追溯到上壹筆的收款。壹直往上追溯到它誕生時礦工挖出來的那個區塊。
這個機制就保證了在比特幣網絡裏,比特幣是不可以偽造和重復交易的。在比特幣世界裏,重復支付被叫做“雙花”,就是花費了兩次的意思。