近年來關(guān)于區(qū)塊鏈抠艾、比特幣、ICO 類似的概念非常的普遍桨昙,是眼下的超級大熱門检号,新聞媒體大量報(bào)道腌歉,宣稱它將創(chuàng)造未來。十傳百齐苛,百傳千翘盖,難免也就會有許多人把它們?nèi)炕煜谝黄穑ツ昴甑妆忍貛诺谋q和今年年初比特幣的暴跌凹蜂,讓不少人非常地感興趣馍驯,而又持觀望態(tài)度。甚至也有人認(rèn)為比特幣等價于金融風(fēng)險(xiǎn)玛痊,就是傳銷組織搞出來的花樣汰瘫。
今天主要想給大家科普一下關(guān)于區(qū)塊鏈的一些基礎(chǔ)知識,以免混淆擂煞。我想說的是:區(qū)塊鏈 ≠ 比特幣 ≠ ICO ≠ 金融風(fēng)險(xiǎn)混弥。
什么是區(qū)塊鏈
區(qū)塊鏈,英文名為 blockchain 或 block chain对省,實(shí)質(zhì)就是一個 去中心化的分布式數(shù)據(jù)庫蝗拿,它是用 分布式數(shù)據(jù)庫 識別、傳播和記載信息的智能化對等網(wǎng)絡(luò)蒿涎,也可稱為價值互聯(lián)網(wǎng)哀托。
首先,區(qū)塊鏈的主要作用是儲存信息同仆。任何需要保存的信息萤捆,都可以寫入?yún)^(qū)塊鏈,也可以從里面讀取俗批,所以它是數(shù)據(jù)庫。
其次市怎,任何人都可以架設(shè)服務(wù)器岁忘,加入?yún)^(qū)塊鏈網(wǎng)絡(luò),成為一個節(jié)點(diǎn)区匠。區(qū)塊鏈的世界里面干像,沒有中心節(jié)點(diǎn),每個節(jié)點(diǎn)都是平等的驰弄,都保存著整個數(shù)據(jù)庫麻汰。你可以向任何一個節(jié)點(diǎn),寫入/讀取數(shù)據(jù)戚篙,因?yàn)樗泄?jié)點(diǎn)最后都會同步五鲫,保證區(qū)塊鏈一致。
去中心化岔擂?
前面說到一個非常關(guān)鍵的詞兒「去中心化」位喂,到底什么是「去中心化」呢浪耘?
大家知道我們國家的貨幣系統(tǒng),其實(shí)就是非常典型的「中央化系統(tǒng)」塑崖,我們有非常壟斷的國家銀行七冲,下面還有一些城市銀行,我們把錢存在銀行规婆,本質(zhì)上就是因?yàn)槲覀冃湃螄依教桑嘈艊业哪芰ΑL热舨幌嘈攀阊粒覀兏静豢赡軕{借一個數(shù)字苗踪,就大方地告訴別人,我有幾百萬乃至幾千萬削锰。
我們進(jìn)行一筆交易通铲,實(shí)際上就是在銀行的數(shù)據(jù)庫進(jìn)行了一定的數(shù)據(jù)更改,并定期讓各大銀行進(jìn)行數(shù)據(jù)同步器贩,這樣的過程一定是繁瑣的颅夺。
而區(qū)塊鏈在這方面就有一個非常革命化的特點(diǎn)了。
區(qū)塊鏈?zhǔn)峭耆珱]有管理員的蛹稍,它是去中心化的吧黄,測試無中心的!
雖然它也是數(shù)據(jù)庫的一員唆姐,但傳統(tǒng)的數(shù)據(jù)庫都是有管理員的拗慨。它的這個特點(diǎn),讓它變得無比安全奉芦,因?yàn)椴豢赡艽嬖谌魏螌?shù)據(jù)進(jìn)行強(qiáng)行壟斷的可能赵抢。假設(shè)黑客想要處理這個數(shù)據(jù)的話,必須要黑掉全網(wǎng) 50% 以上的網(wǎng)絡(luò)声功,就目前的技術(shù)來看烦却,基本是不可能實(shí)現(xiàn)的。這也讓區(qū)塊鏈完好無損運(yùn)行了 10 年之久先巴,還是那么地安全其爵。
如何保證數(shù)據(jù)的可信度
前面說到,區(qū)塊鏈沒有管理員伸蚯,人人都可以寫數(shù)據(jù)摩渺,那怎么保證數(shù)據(jù)的可信度呢?這就是區(qū)塊鏈最神奇的地方剂邮。
我們必須得先了解一下區(qū)塊鏈的最小單元:區(qū)塊(block)摇幻。
簡而言之,每一個區(qū)塊就是一個數(shù)據(jù)。而一個區(qū)塊由區(qū)塊頭和區(qū)塊體兩部分共同組成囚企。
區(qū)塊頭(Head)
區(qū)塊頭主要包含了區(qū)塊的頭信息丈咐,包含上一個區(qū)塊的哈希值(preHash),本區(qū)塊的哈希值(Hash),以及時間戳(timestamp)等龙宏。區(qū)塊體(Body)
區(qū)塊體主要就用于存放區(qū)塊的詳細(xì)數(shù)據(jù)了棵逊,它可以存放交易記錄信息或者更多的其它相關(guān)。
Hash
說到 Hash银酗,我想很多程序員大概不用問都明白辆影,Hash 值就是一個計(jì)算機(jī)對不定長內(nèi)容計(jì)算出來的等價特征值。我們平時提到很多的 MD5 算法就是典型的 Hash 算法黍特,在 Java 上的 Hash 值判斷兩個變量是否相等也是運(yùn)用的非常多蛙讥。
由此可見,Hash 值是非常難重合的灭衷。
既然如此次慢,我們的字符串 Hash 值是近乎不可能重復(fù)的,那么我們的區(qū)塊中的內(nèi)容發(fā)生變化的話翔曲,那區(qū)塊頭里面的 Hash 值也一定會改變迫像。
區(qū)塊和 Hash 是一一對應(yīng)的,區(qū)塊鏈采用了一個典型的 SHA256 算法瞳遍。計(jì)算公式為:
Hash = SHA256(區(qū)塊頭)
前面說過闻妓,區(qū)塊頭包含很多內(nèi)容,其中有當(dāng)前區(qū)塊體的哈希掠械,還有上一個區(qū)塊的哈希由缆。這意味著,如果當(dāng)前區(qū)塊體的內(nèi)容變了猾蒂,或者上一個區(qū)塊的哈希變了均唉,一定會引起當(dāng)前區(qū)塊的哈希改變。
這一點(diǎn)對區(qū)塊鏈有重大意義婚夫。
如果有人修改了一個區(qū)塊浸卦,該區(qū)塊的哈希就變了。為了讓后面的區(qū)塊還能連到它(因?yàn)橄乱粋€區(qū)塊包含上一個區(qū)塊的哈希)案糙,該人必須依次修改后面所有的區(qū)塊,否則被改掉的區(qū)塊就脫離區(qū)塊鏈了靴庆。由于后面要提到的原因时捌,哈希的計(jì)算很耗時,短時間內(nèi)修改多個區(qū)塊幾乎不可能發(fā)生炉抒,除非有人掌握了全網(wǎng)51%以上的計(jì)算能力奢讨。
正是通過這種聯(lián)動機(jī)制,區(qū)塊鏈保證了自身的可靠性焰薄,數(shù)據(jù)一旦寫入拿诸,就無法被篡改扒袖。這就像歷史一樣,發(fā)生了就是發(fā)生了亩码,從此再無法改變季率。
這一點(diǎn)和我們所學(xué)習(xí)的鏈表非常相似,所以它就有了「區(qū)塊鏈」這個名字描沟。
挖礦
「挖礦」是我們聽的比較多的另一個名詞兒飒泻。所謂「挖礦」,其實(shí)就是計(jì)算最新數(shù)據(jù)的 Hash 值吏廉,生成新區(qū)塊的一個過程泞遗。
前面說到了一個點(diǎn),區(qū)塊鏈的每個節(jié)點(diǎn)都是一個數(shù)據(jù)庫席覆,為了保證各個節(jié)點(diǎn)之間的數(shù)據(jù)同步史辙,那么新區(qū)快的添加速度,當(dāng)然應(yīng)該得到控制佩伤。
所以聊倔,區(qū)塊鏈的發(fā)明者中本聰(這是假名,至今仍然沒人知道他的真實(shí)身份畦戒,但確實(shí)這人太神了方库。)故意加深了添加新區(qū)塊的難度。
他的設(shè)計(jì)是障斋,平均每 10 分枝纵潦,全網(wǎng)只能生成一個新區(qū)塊,一小時也就最多能生成 6 個垃环。
這種產(chǎn)出速度不是通過命令達(dá)成的邀层,而是故意設(shè)置了海量的計(jì)算。也就是說遂庄,只有通過極其大量的計(jì)算寥院,才能得到當(dāng)前區(qū)塊的有效哈希,從而把新區(qū)塊添加到區(qū)塊鏈涛目。由于計(jì)算量太大秸谢,所以快不起來。
這個過程就叫做挖礦霹肝,因?yàn)橛?jì)算有效哈希的難度估蹄,好比在全世界的沙子里面,找到一粒符合條件的沙子沫换。計(jì)算哈希的機(jī)器就叫做礦機(jī)臭蚁,操作礦機(jī)的人就叫做礦工。
也許有人在這里會疑問,計(jì)算機(jī)最厲害的地方不就是把非常難的計(jì)算變的簡單嗎垮兑?為啥在這里會覺得很難呢冷尉?
實(shí)際上這是一個非常困難的事情,完全就是碰運(yùn)氣的事情系枪。計(jì)算 Hash 值當(dāng)然是非常簡單的雀哨,但區(qū)塊鏈所要求的 Hash 值是做了非常苛刻的要求的嗤无,并不是所有的 Hash 值都能被它接受震束。
試想,當(dāng)你算出了一個符合條件的 Hash 值当犯,你算下一個 Hash 值進(jìn)行到快要完成的時候垢村,別人計(jì)算出了一個新的符合條件的 Hash 值接鏈,這時候不管你做了多少工作嚎卫,你的進(jìn)度如何嘉栓,那你都只有重頭開始了。
比特幣
比特幣(bitcoin)相比區(qū)塊鏈拓诸,可能有更多的人知道吧侵佃,毫不夸張的說,不少人就是因?yàn)楸忍貛挪胖懒藚^(qū)塊鏈這玩意兒的奠支。
去年年底比特幣的瘋漲馋辈,和今年年初比特幣的暴跌,讓很多家新聞媒體倍谜,對比特幣進(jìn)行了瘋狂的報(bào)道迈螟。但很可惜的是,新聞媒體往往都只關(guān)注它的火爆表現(xiàn)尔崔,忽視了很多非炒鸷粒基礎(chǔ)的問題。
我今年春節(jié)的時候回家季春,身邊就有不少人問了我比特幣相關(guān)的問題洗搂,而且非常想入手,考慮倒賣的方式來進(jìn)行盈利载弄。
可除了知道比特幣這個概念耘拇,和知道它那時候值 10 多萬的事情,其余的一無所知宇攻。
比特幣相當(dāng)于區(qū)塊鏈 1.0 的產(chǎn)物驼鞭,它始于 2008 年的第一條區(qū)塊鏈分布式賬本。這僅僅是中本聰提出的一個革命性的構(gòu)想:「創(chuàng)造一種不受政府或其他任何人控制的貨幣尺碰。」
這個想法實(shí)在是太瘋狂了,僅僅是一串?dāng)?shù)字亲桥,不需要任何資金支持洛心,也不需要任何人來負(fù)責(zé)任,就想當(dāng)做錢來做交易题篷,怎么可能會有人接受词身?
但現(xiàn)實(shí)就是那么奇葩,自一位極客使用 2000 個比特幣購買了一個披薩開始番枚,這個狂想就在慢慢變成現(xiàn)實(shí)法严。
貨幣這個東西,其實(shí)就是被大家認(rèn)可的問題葫笼。就像幾千年前深啤,我們可以用貝殼,可以用石頭路星,再后來用金銀做貨幣一樣溯街。只要大家都認(rèn)可這個東西的價值,那它就會成為有價值的東西洋丐。
我們傳統(tǒng)的貨幣都來源于國家發(fā)行呈昔,所有的存儲也是由國家的銀行統(tǒng)一管理,這是典型的中心化系統(tǒng)友绝。
而比特幣則是部署在一個全世界眾多對等節(jié)點(diǎn)組成的去中心化網(wǎng)絡(luò)之上堤尾。沒一個節(jié)點(diǎn)都有資格對這種數(shù)字貨幣進(jìn)行記錄和發(fā)行。
比特幣的底層數(shù)據(jù)存儲迁客,實(shí)際上就是區(qū)塊鏈技術(shù)的典型應(yīng)用郭宝。在每個區(qū)塊體中,我們可以存儲所有的交易信息在里面哲泊。
交易信息的每一行剩蟀,都會包含時間戳,交易明細(xì)切威,和數(shù)字簽名育特。
可能在這里有不少人會問:「怎么保證交易的可信度呢?」
實(shí)際上這就是上面提到的「數(shù)字簽名」的偉大用處先朦。
數(shù)字簽名簡單而言就是一條交易的標(biāo)識缰冤,但它的來頭不簡單,是由非對稱加密算法處理生成的喳魏。
可能又有很多人會問棉浸,非對稱加密是什么玩意兒。
非對稱加密原理很簡單刺彩,和我們目前主流的處理也很相似迷郑,簡單而言就是加密和解密需要不一樣的鑰匙枝恋。你首先會把自己的公鑰上傳到網(wǎng)絡(luò)上,這個公鑰是公開的嗡害,任何人都可以獲取焚碌。別人可以用你的公鑰加密信息,然后發(fā)送給你霸妹,而你必須采用你的私鑰才能解開這條信息十电,并且會采用驗(yàn)證方式來保證中途沒有被篡改。即使你這條數(shù)據(jù)被別人截獲了叹螟,別人沒有你的私鑰也是完全不可能打開的鹃骂。
非對稱算法保證了信息的真實(shí)性,但僅此還不能保證一次完整的交易罢绽。
交易的數(shù)據(jù)必須寫入到數(shù)據(jù)庫畏线,才算成立,對方才能真正地收到錢有缆。
一筆交易一旦寫入了區(qū)塊鏈象踊,就無法反悔了。這里需要建立一個觀念:比特幣不存放在錢包或其他別的地方棚壁,而是只存在于區(qū)塊鏈上面杯矩。區(qū)塊鏈記載了你參與的每一筆交易,你得到過多少比特幣袖外,你又支付了多少比特幣史隆,因此可以算出來你擁有多少資產(chǎn)。
交易的確認(rèn)離不開礦工曼验。為什么有人愿意做礦工呢泌射?
比特幣協(xié)議規(guī)定,挖到新區(qū)塊的礦工將獲得獎勵鬓照,一開始(2008 年)是 50 個比特幣熔酷,然后每 4 年減半,目前( 2018 年)是 12.5 個比特幣豺裆。這也是比特幣的供給增加機(jī)制拒秘,流通中新增的比特幣都是這樣誕生的。
你可能看出來了臭猜,每 4 年獎勵減半躺酒,由于比特幣可以分割到小數(shù)點(diǎn)后八位,那么到了 2140 年蔑歌,礦工將得不到任何獎勵羹应,比特幣的數(shù)量也將停止增加。這時次屠,礦工的收益就完全依靠交易手續(xù)費(fèi)了园匹。
所謂交易手續(xù)費(fèi)雳刺,就是礦工可以從每筆交易抽成,具體的金額由支付方自愿決定偎肃。你完全可以一毛不拔煞烫,一分錢也不給礦工,但是那樣的話累颂,你的交易就會沒人處理,遲遲無法寫入?yún)^(qū)塊鏈凛俱,得到確認(rèn)紊馏。礦工們總是優(yōu)先處理手續(xù)費(fèi)最高的交易。
目前由于交易數(shù)量猛增蒲犬,手續(xù)費(fèi)已經(jīng)水漲船高朱监,一個區(qū)塊2000多筆交易的手續(xù)費(fèi)總額可以達(dá)到3~10個比特幣。如果你的手續(xù)費(fèi)給低了原叮,很可能過了一個星期赫编,交易還沒確認(rèn)。
一個區(qū)塊的獎勵金12.5個比特幣奋隶,再加上手續(xù)費(fèi)擂送,收益是相當(dāng)可觀的。按照目前的價格唯欣,可以達(dá)到100萬~200萬人民幣嘹吨。想想看,運(yùn)氣好的話境氢,幾分鐘就能挖到一個區(qū)塊蟀拷,拿到這樣一大筆錢,怪不得人們對挖礦趨之若鶩萍聊。
以太坊
以太坊(Etherenum)是區(qū)塊鏈 2.0 的產(chǎn)物问芬,它是一個開源的有智能合約功能的公共區(qū)塊鏈平臺。通過其專用加密貨幣以太幣(Ether)提供去中心化的虛擬機(jī)(稱為“以太虛擬機(jī)”Ethereum Virtual Machine)來處理點(diǎn)對點(diǎn)合約寿桨。
許多人相信此衅,它是目前最有前景的去中心化只能合約協(xié)議之一。
以太坊的概念是一個叫 Vitalik Buterin 的程序員提出牛隅,它最開始是一個眾籌活動炕柔,截至目前,它的專用貨幣以太幣已經(jīng)成為市值僅次于比特幣的加密貨幣媒佣。
這一塊由于時間關(guān)系匕累,在這里就不多做贅述。如果有時間的小伙伴們也可以上 Google 進(jìn)行搜索學(xué)習(xí)默伍。
ICO
ICO(是 Initial Coin Offering 縮寫)欢嘿,首次幣發(fā)行衰琐,源自股票市場的首次公開發(fā)行(IPO)概念,是區(qū)塊鏈項(xiàng)目首次發(fā)行代幣炼蹦,募集比特幣羡宙、解決以太坊等通用數(shù)字貨幣的行為。
它是一種區(qū)塊鏈行業(yè)術(shù)語掐隐,是一種為加密數(shù)字貨幣/區(qū)塊鏈項(xiàng)目籌措資金的常用方式狗热,早期參與者可以從中獲得初始產(chǎn)生的加密數(shù)字貨幣作為回報(bào)。由于代幣具有市場價值虑省,可以兌換成法幣匿刮,從而支持項(xiàng)目的開發(fā)成本。ICO 所發(fā)行的代幣探颈,可以基于不同的區(qū)塊鏈熟丸。
一些總結(jié)
看到這里,不用我重復(fù)了吧伪节。
區(qū)塊鏈 ≠ 比特幣 ≠ ICO ≠ 金融風(fēng)險(xiǎn)光羞,它們有聯(lián)系,但絕不對等怀大,倘若做得好纱兑,它可以服務(wù)群眾,但做的不好叉寂,它也可能成為罪犯的幫兇萍启。
我們有理由相信,現(xiàn)在就是區(qū)塊鏈 3.0 時代屏鳍,我們的區(qū)塊鏈有能力變革傳統(tǒng)的生產(chǎn)關(guān)系勘纯,打造一個可信價值的全新網(wǎng)絡(luò)。