天天看點

比特币簡介1

       我于2016年開始接觸比特币,發現國内少有介紹的文章。

       雖然我還是一個技術渣渣,但是經過摸爬滾打,還是想腆着臉給大家貢獻一些經驗。

       比特币是一種點對點,去中心化結算的虛拟貨币。“去中心化結算”的方式完全和我們現在身處的金融體制相悖。銀行就是中心化結算的機構,依靠國家權力運作,如果銀行倒閉或者國家滅亡。你手中的錢就失去價值了。我們的錢的價值的背後依賴的是信用。沒有信用的環境,價值不會被承認,也不可被轉移(交易)。不僅如此,銀行為了建構信用體系,必須索取使用者的個人隐私資訊,綁定我們的錢。就算銀行不洩露我們的個人隐私,信用體系的建構成本高昂。我們發現現實世界中,人們在大部分的時間裡做着如何讓别人信任的事。

        IT界衆大神洞悉了銀行體系的脆弱,前仆後繼地探索新的出路,讓人們更加安全地遠距離傳輸價值。

        早期的電子貨币,以喬姆盲簽技術(Chaumian blinding)為基礎發展,很可惜,他們還是依靠中心化的貨币。

        1998年,戴偉發明了b-money,這種數字貨币引入hashcash的思想制造貨币,就是制造貨币需要大量計算,然而b-money還沒有實作去中心化。

         hashcash原先是為了防止發送垃圾郵件的機制,具體規定允許發送者發送垃圾郵件,但是在發送之前需要算一個非常難得題目(在頭部嵌入一個特定的值,這個值是需要大量計算得出)。

        2005年,芬尼引入了“可重複使用的工作量證明機制”來制造貨币,這種貨币依靠可信賴的後端計算,也沒成功。

        去中心化要求在沒有中心節點的情況下大家能夠承認在網上發生的交易,而且還得保護交易雙方的隐私。

        也有人這兩點都實作了,可是又出現了“拜占庭将軍”的問題。即這些去中心化的節點的域是一定的,換句話說,如果去中心化的節點夠多,出現不誠實的節點,是會出現不可信的交易的。

        于是,中本聰橫空出世,甩出一篇論文,聲稱發明了一種點對點,去中心化的數字貨币,解決了之前出現的所有問題。這就是比特币。

        1.如何承認貨币價值

         比特币并不是硬通貨,承不承認大家自己決定喽。

        2.如何發行比特币

        挖礦。誰願意耗費電力和買礦機成本替大家算算賬,如果算出來了,就發給他一定數量的比特币作為獎勵。

        這獎勵分為兩部分:

        一.如果你打包N筆交易到新的區塊被承認有效了,這是新創造的币,每四年減半一次。筆者寫下這篇文章時是2016.6.29,正是比特币第二次減半的時候;

        二.被确認的交易會發給礦工手續費。

        3.如何保證交易安全有序

        交易是需要交易發送者(sender)簽名确認的,接收者用發送者的公鑰進行驗證。交易的簽名不對,餘額不足都不是有序交易,誠實的礦工都不會承認這筆交易。

        區塊鍊,顧名思義,就是很多區塊連起來的鍊。高度N的新區塊頭部會包含高度N-1的區塊的hash值,這樣層層連結。

        那他怎麼保證有序打包交易呢?時間戳。N-1的區塊産生後,其實是一串hash過的資料罷了,再加上時間戳向全網傳播,礦工們正在咔咔挖礦,突然收到這個區塊,就得馬上放下鐵鍬來确認這區塊是不是真的有序,确認後會把區塊加在目前區塊的後面。時間戳保證以後的交易隻能放到區塊N,甚至是N+1,N+2。。。。礦工趕快向後挖。

區塊鍊會分支,誠實的礦工要在最長的鍊上挖礦

有一些内心黑暗的礦工打起了壞主意,他想,哎,大家的交易我是沒法篡改了。但是我取消付款給别人的交易,這總可以啊。這就是“雙花交易”, double exchange。其實就是在目前的區塊的父區塊位置添加一個分支,在這個新分支上挖啊挖,如果挖的速度足夠快,能夠比其他所有人快1%,我這個新的分支勢必會成為最長鍊。中本聰又說,大家注意了,你們交易完成的時候不要急着确認,等個平均約10分鐘再确認。這時候的最長的誠實的鍊超出壞人的分支5個塊以上,壞蛋就很難追上了,因為他的工作量會大的無法承受,老老實實在最長鍊上挖礦更劃算。這樣他就麼有double exchange的欲望了。

繼續閱讀