比特幣是在一場競賽中誕生的,在這場競賽中,用戶提供自己的計(jì)算能力,驗(yàn)證并記錄比特幣交易進(jìn)入?yún)^(qū)塊鏈。這種行為被稱為采礦,成功的礦商將獲得交易費(fèi)和新創(chuàng)建的比特幣作為獎(jiǎng)勵(lì)。
從技術(shù)上講,比特幣包括:
●一個(gè)分散的點(diǎn)對(duì)點(diǎn)網(wǎng)絡(luò)(比特幣協(xié)議)
●公共事務(wù)分類(區(qū)塊鏈)
●獨(dú)立事務(wù)的一組規(guī)則驗(yàn)證和貨幣發(fā)行(共識(shí)規(guī)則)
●達(dá)成全球共識(shí)分散機(jī)制 (Proof-of-Work算法)
最有趣的一件事是,區(qū)塊鏈承諾會(huì)帶來顛覆性的變化,因?yàn)樗x予了“價(jià)值互聯(lián)網(wǎng)”(Internet of Value)以今天信息流動(dòng)的速度交換貨幣的能力。交易將在實(shí)時(shí)和跨全球網(wǎng)絡(luò)進(jìn)行,解決了無法互操作的國際支付系統(tǒng)的問題。更重要的是:由于它不需要中介,這個(gè)概念走得更遠(yuǎn),反過來又有利于社會(huì)包容性。
那么,它是如何工作的呢?
1. Nick打開他的比特幣錢包。這意味著Nick間接創(chuàng)建了自己的比特幣地址。他應(yīng)該會(huì)得到一些比特幣。
2. Nick想把比特幣轉(zhuǎn)給Rose。所以,他掃描或復(fù)制了Rose的比特幣地址。
3. Nick填滿了他想要轉(zhuǎn)移的比特幣數(shù)量和他愿意支付的費(fèi)用。因此,一筆交易包括輸入、輸出以及將被轉(zhuǎn)移的比特幣數(shù)量。
4. 在將新事務(wù)發(fā)送到區(qū)塊鏈之前,使用Nick的私鑰簽名的錢包。
5. 現(xiàn)在,交易被發(fā)送到比特幣網(wǎng)絡(luò)上最近的節(jié)點(diǎn)。然后將其傳播到網(wǎng)絡(luò)中并進(jìn)行驗(yàn)證。當(dāng)它成功通過驗(yàn)證后,它就會(huì)進(jìn)入“Mempool”(內(nèi)存池的簡稱)中,并耐心地等待,直到礦工將它撿起并將其包含到下一個(gè)要挖掘的塊中。
6. 現(xiàn)在是挖掘時(shí)間,挖掘人員開始處理事務(wù)(首先是支付更多事務(wù)費(fèi)的事務(wù)),并將它們分組,試圖解決工作證明(或POW——一種協(xié)商共識(shí)的算法),并計(jì)算某個(gè)哈希值函數(shù)。
7. 獲取該塊的挖掘程序?qū)⑿聣K傳播到網(wǎng)絡(luò)。
8. 節(jié)點(diǎn)驗(yàn)證結(jié)果并傳播塊。
9. 現(xiàn)在Rose看到了第一個(gè)確認(rèn)。
10. 創(chuàng)建和鏈接的每個(gè)新塊都會(huì)出現(xiàn)新的確認(rèn)。
交易詳情:
比特幣交易由4個(gè)關(guān)鍵要素組成:
· 輸入(原始):原始錢包的比特幣地址(公眾號(hào))。
· 金額:交易中發(fā)送的比特幣數(shù)量。
· 輸出(目的地):目的地錢包的比特幣地址(公眾號(hào))。
· 元數(shù)據(jù)(可選):元數(shù)據(jù)或消息的最大大小為80字節(jié)。元數(shù)據(jù)存儲(chǔ)在事務(wù)的OP_RETURN部分中。
比特幣交易不是簡單地將一些比特幣從一個(gè)地址移動(dòng)到另一個(gè)地址。比特幣交易將比特幣在一個(gè)或多個(gè)輸入和輸出之間移動(dòng)。每個(gè)輸入都是提供比特幣的交易和地址。每個(gè)輸出是接收比特幣的地址,以及發(fā)送到該地址的比特幣數(shù)量。
一個(gè)比特幣交易的例子。交易C從交易A和交易B中花費(fèi)0.008個(gè)比特幣。上圖顯示了一個(gè)示例事務(wù)“C”。在這個(gè)事務(wù)中,0.005 BTC從事務(wù)A的地址中取走,0.003 BTC從事務(wù)b的地址中取走。對(duì)于輸出,0.003 BTC被指向第一個(gè)地址,.004 BTC被指向第二個(gè)地址。剩下的0.001比特幣將作為一筆費(fèi)用交給礦商。注意,事務(wù)A的其他輸出中的0.015 BTC沒有在此事務(wù)中使用。
使用的每個(gè)輸入必須完全在事務(wù)中使用。如果一個(gè)地址在一次交易中收到100個(gè)比特幣,而您只想花1個(gè)比特幣,那么該交易必須花掉所有100個(gè)比特幣。解決方案是使用第二個(gè)輸出進(jìn)行更改,它將剩余的99個(gè)比特幣返回給您。
交易也包括費(fèi)用。如果投入加起來減去產(chǎn)出后還剩下比特幣,剩下的就是付給礦商的費(fèi)用。這項(xiàng)收費(fèi)并非嚴(yán)格要求,但對(duì)礦商來說,沒有收費(fèi)的交易將是一項(xiàng)低優(yōu)先級(jí)的業(yè)務(wù),可能幾天內(nèi)無法處理,甚至可能被完全放棄。一筆交易的典型費(fèi)用是0.0002比特幣(約20美分),所以費(fèi)用很低,但也不是微不足道。
那么它是如何工作的呢?
步驟1: Bob和Alice創(chuàng)建事務(wù)
任何人都可以使用3個(gè)必需的組件創(chuàng)建事務(wù)。輸入、數(shù)量和輸出。例如,當(dāng)Bob將比特幣發(fā)送給Alice時(shí),Alice需要發(fā)送她的比特幣地址(public), Bob創(chuàng)建事務(wù)并使用私鑰簽名。
第二步:比特幣交易直播
交易一旦創(chuàng)建,就會(huì)被發(fā)送到比特幣網(wǎng)絡(luò)上最近的節(jié)點(diǎn)。它可以在創(chuàng)建后很長一段時(shí)間內(nèi)發(fā)送(只需要在決定發(fā)送時(shí)確保錢包中有足夠的比特幣)
步驟3:傳播和驗(yàn)證
一旦事務(wù)到達(dá)最近的節(jié)點(diǎn),它就被傳播到網(wǎng)絡(luò)中并得到驗(yàn)證。在它成功地通過驗(yàn)證之后,它將進(jìn)入“Mempool”(內(nèi)存池的縮寫),并耐心地等待挖掘人員將其提取并包含在下一個(gè)塊中。
步驟4:塊驗(yàn)證
一旦事務(wù)在Mempool上,挖掘人員就會(huì)提取事務(wù)(首先是那些支付更多事務(wù)費(fèi)的人)并將其分組。截至2017年5月,每個(gè)塊的最大大小限制為1 MB(社區(qū)正在討論修改這個(gè)限制),根據(jù)每個(gè)事務(wù)的大小,包含大約2000到3000個(gè)事務(wù)。然后,通過使用工作證明協(xié)商共識(shí)算法,網(wǎng)絡(luò)平均每10分鐘就會(huì)對(duì)有效塊和事務(wù)達(dá)成一致。