0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

對于比特幣基礎(chǔ)問題的詳細(xì)剖析

Linux愛好者 ? 2018-01-08 09:49 ? 次閱讀

比特幣(bitcoin)誕生于2008年的一篇論文。

一個署名為中本聰?shù)娜?,提出了革命性的?gòu)想:讓我們創(chuàng)造一種不受政府或其他任何人控制的貨幣!這個想法堪稱瘋狂:一串?dāng)?shù)字,背后沒有任何資產(chǎn)支持,也沒有任何人負(fù)責(zé),你把它當(dāng)作錢付給對方,怎么會有人愿意接受?

但是,狂想居然變成了現(xiàn)實。隨后的幾年,在全世界無數(shù)愛好者的支持下,比特幣網(wǎng)絡(luò)運行起來了,越來越多的人和資本參與,星星之火,終成燎原。剛剛過去的2017年,比特幣迎來了爆發(fā)式的增長,從年初的1000美元,最高漲到了2萬美元,全世界都為之震動,上到政府,下到普通百姓都在關(guān)注。事實就是比特幣已經(jīng)并將繼續(xù)改變世界。

新聞媒體往往只關(guān)注它的火爆表現(xiàn),忽視或者無法回答一些基本的問題。

比特幣的原理是什么?

為什么這個無人管理的體系可以成功運作?

比特幣交易的流程是怎么回事?

它與區(qū)塊鏈又是什么關(guān)系?

下面,我嘗試回答這些問題,希望幫助大家理解比特幣。拋開技術(shù)細(xì)節(jié),還是很容易解釋的。

有一點說明,本文只討論技術(shù)問題,不涉及如何投資比特幣,更不會預(yù)測價格走勢。事實上,我也不知道,如果我知道怎么發(fā)財,可能就不會在這里寫博客了。

一、非對稱加密

首先,理解比特幣,必須理解非對稱加密。

你可能聽說過這個詞,所謂非對稱加密,其實很簡單,就是加密和解密需要兩把鑰匙:一把公鑰和一把私鑰。

公鑰是公開的,任何人都可以獲取。私鑰是保密的,只有擁有者才能使用。他人使用你的公鑰加密信息,然后發(fā)送給你,你用私鑰解密,取出信息。反過來,你也可以用私鑰加密信息,別人用你的公鑰解開,從而證明這個信息確實是你發(fā)出的,且未被篡改,這叫做數(shù)字簽名(更詳細(xì)的介紹請看《什么是數(shù)字簽名》)。

現(xiàn)在請設(shè)想,如果公鑰加密的不是普通的信息,而是加密了一筆錢,發(fā)送給你,這會怎樣?

首先,你能解開加密包,取出里面的錢,因為私鑰在你手里。其次,別人偷不走這筆錢,因為他們沒有你的私鑰。因此,支付可以成功。

這就是比特幣(以及其他數(shù)字貨幣)的原理:非對稱加密保證了支付的可靠性。

由于支付的錢必須通過私鑰取出,所以你是誰并不重要,重要的是誰擁有私鑰。只有擁有了私鑰,才能取出支付給你的錢。(事實上,真實的交易流程稍有不同,私鑰保證的不是取出支付給你的錢,而是保證只有你能把這些屬于你的錢支付出去,詳見后文。)

二、比特幣錢包

對于比特幣來說,錢不是支付給個人的,而是支付給某一把私鑰。這就是交易匿名性的根本原因,因為沒有人知道,那些私鑰背后的主人是誰。

所以,比特幣交易的第一件事,就是你必須擁有自己的公鑰和私鑰。

你去網(wǎng)上那些比特幣交易所開戶,它們會讓你首先生成一個比特幣錢包(wallet)。這個錢包不是用來存放比特幣,而是存放你的公鑰和私鑰。軟件會幫你生成這兩把鑰匙,然后放在錢包里面。

根據(jù)協(xié)議,公鑰的長度是512位。這個長度不太方便傳播,因此協(xié)議又規(guī)定,要為公鑰生成一個160位的指紋。所謂指紋,就是一個比較短的、易于傳播的哈希值。160位是二進制,寫成十六進制,大約是26到35個字符,比如 1BvBMSEYstWetqTFn5Au4m4GFg7xJaNVN2。這個字符串就叫做錢包的地址,它是唯一的,即每個錢包的地址肯定都是不一樣的。

對于比特幣基礎(chǔ)問題的詳細(xì)剖析

你向別人收錢時,只要告訴對方你的錢包地址即可,對方向這個地址付款。由于你是這個地址的擁有者,所以你會收到這筆錢。

由于你是否擁有某個錢包地址,是由私鑰證明的(具體的證明方法稍后介紹),所以一定要保護好私鑰。這是極其重要的,如果你的私鑰被偷了,你的比特幣也就等于沒了,因為他人可以冒用你的身份了,把錢包里面的錢都轉(zhuǎn)走。

同樣的,你向他人支付比特幣,千萬不能寫錯他人的錢包地址,否則你的比特幣就支付到了另一個不同的人了。

三、交易過程

下面,我把整個流程串起來,看看比特幣如何完成一筆交易。

一筆交易就是一個地址的比特幣,轉(zhuǎn)移到另一個地址。由于比特幣的交易記錄全部都是公開的,哪個地址擁有多少比特幣,都是可以查到的。因此,支付方是否擁有足夠的比特幣,完成這筆交易,這是可以輕易驗證的。

問題出在怎么防止其他人,冒用你的名義申報交易。舉例來說,有人申報了一筆交易:地址 A 向地址 B 支付10個比特幣。我怎么知道這個申報是真的,申報人就是地址 A 的主人?

比特幣協(xié)議規(guī)定,申報交易的時候,除了交易金額,轉(zhuǎn)出比特幣的一方還必須提供以下數(shù)據(jù)。

上一筆交易的 Hash(你從哪里得到這些比特幣)

本次交易雙方的地址

支付方的公鑰

支付方的私鑰生成的數(shù)字簽名

驗證這筆交易是否屬實,需要三步。

第一步,找到上一筆交易,確認(rèn)支付方的比特幣來源。

第二步,算出支付方公鑰的指紋,確認(rèn)與支付方的地址一致,從而保證公鑰屬實。

第三步,使用公鑰去解開數(shù)字簽名,保證私鑰屬實。

經(jīng)過上面三步,就可以認(rèn)定這筆交易是真實的。

四、交易確認(rèn)與區(qū)塊鏈

確認(rèn)交易的真實性以后,交易還不算完成。交易數(shù)據(jù)必須寫入數(shù)據(jù)庫,才算成立,對方才能真正收到錢。

比特幣使用的是一種特殊的數(shù)據(jù)庫,叫做區(qū)塊鏈(blockchain),詳細(xì)的介紹請看《區(qū)塊鏈入門教程》。本文只討論交易如何寫入?yún)^(qū)塊鏈。

首先,所有的交易數(shù)據(jù)都會傳送到礦工那里。礦工負(fù)責(zé)把這些交易寫入?yún)^(qū)塊鏈。

根據(jù)比特幣協(xié)議,一個區(qū)塊的大小最大是 1MB,而一筆交易大概是500字節(jié)左右,因此一個區(qū)塊最多可以包含2000多筆交易。礦工負(fù)責(zé)把這2000多筆交易打包在一起,組成一個區(qū)塊,然后計算這個區(qū)塊的 Hash。

對于比特幣基礎(chǔ)問題的詳細(xì)剖析

計算 Hash 的過程叫做采礦,這需要大量的計算。礦工之間也在競爭,誰先算出 Hash,誰就能第一個添加新區(qū)塊進入?yún)^(qū)塊鏈,從而享受這個區(qū)塊的全部收益,而其他礦工將一無所獲。

一筆交易一旦寫入了區(qū)塊鏈,就無法反悔了。這里需要建立一個觀念:比特幣不存放在錢包或其他別的地方,而是只存在于區(qū)塊鏈上面。區(qū)塊鏈記載了你參與的每一筆交易,你得到過多少比特幣,你又支付了多少比特幣,因此可以算出來你擁有多少資產(chǎn)。

五、礦工的收益

交易的確認(rèn)離不開礦工。為什么有人愿意做礦工呢?

比特幣協(xié)議規(guī)定,挖到新區(qū)塊的礦工將獲得獎勵,一開始(2008年)是50個比特幣,然后每4年減半,目前(2018年)是12.5個比特幣。這也是比特幣的供給增加機制,流通中新增的比特幣都是這樣誕生的。

你可能看出來了,每4年獎勵減半,那么到了2140年,礦工將得不到任何獎勵,比特幣的數(shù)量也將停止增加。這時,礦工的收益就完全依靠交易手續(xù)費了。

所謂交易手續(xù)費,就是礦工可以從每筆交易抽成,具體的金額由支付方自愿決定。你完全可以一毛不拔,一分錢也不給礦工,但是那樣的話,你的交易就會沒人處理,遲遲無法寫入?yún)^(qū)塊鏈,得到確認(rèn)。礦工們總是優(yōu)先處理手續(xù)費最高的交易。

目前由于交易數(shù)量猛增,手續(xù)費已經(jīng)水漲船高,一個區(qū)塊2000多筆交易的手續(xù)費總額可以達(dá)到3~10個比特幣。如果你的手續(xù)費給低了,很可能過了一個星期,交易還沒確認(rèn)。

一個區(qū)塊的獎勵金12.5個比特幣,再加上手續(xù)費,收益是相當(dāng)可觀的。按照目前的價格,可以達(dá)到100萬~200萬人民幣。想想看,運氣好的話,幾分鐘就能挖到一個區(qū)塊,拿到這樣一大筆錢,怪不得人們對挖礦趨之若鶩。

六、區(qū)塊的擴容

《區(qū)塊鏈入門教程》說過,比特幣協(xié)議規(guī)定,平均10分鐘誕生一個區(qū)塊。區(qū)塊的大小只有 1MB,最多只能包含2000多筆交易。也就是說,比特幣網(wǎng)絡(luò)每10分鐘,最多只能處理2000多筆交易,換算一下,就是處理速度為3~5筆/秒。

全世界的比特幣交易這么多,可是區(qū)塊鏈每秒最多只能處理5筆,這已經(jīng)成為制約比特幣發(fā)展的一個瓶頸。

很早就有人呼吁,改革比特幣協(xié)議,提升處理速度。這件事在2017年8月有了一點眉目,當(dāng)時區(qū)塊鏈發(fā)生了一次分叉,誕生了一個新協(xié)議,稱為Bitcoin Cash(簡稱 BCH)。這種新貨幣其他方面都與比特幣一致,就是每個區(qū)塊的大小從 1MB 增加到了 8MB,因此處理速度提升了8倍,手續(xù)費也低得多。該協(xié)議是對原有區(qū)塊鏈的分叉,因此當(dāng)時持有比特幣的人,等于一人獲贈了一份同樣數(shù)量的 BCH。

對于比特幣基礎(chǔ)問題的詳細(xì)剖析

BCH 等于創(chuàng)造了一種新貨幣,還有人提議,原始比特幣的區(qū)塊大小提升到 2MB,這稱為SegWit2x。這個建議原定于2017年11月實施,但是最后一刻由于缺乏共識,就被取消了,目前還在討論中。

七、點對點網(wǎng)絡(luò)

比特幣是一個全世界的開放網(wǎng)絡(luò),只要你有服務(wù)器,就能加入這個網(wǎng)絡(luò),成為一個節(jié)點。每個節(jié)點都包含了整個區(qū)塊鏈(目前大概 100多 GB),并且節(jié)點之間時刻不停地在同步信息。

對于比特幣基礎(chǔ)問題的詳細(xì)剖析

當(dāng)你發(fā)生了一筆支付,你所在的節(jié)點就會把這筆交易告訴另一個節(jié)點,直至傳遍整個網(wǎng)絡(luò)。礦工從網(wǎng)上收集各種新發(fā)生的交易,將它們打包寫入?yún)^(qū)塊鏈。一旦寫入成功, 礦工所在節(jié)點的區(qū)塊鏈,就成為最新版本,其他節(jié)點都會來復(fù)制新增的區(qū)塊,保證全網(wǎng)的區(qū)塊鏈都是一致的。

最后,你所在的節(jié)點也拿到了最新的區(qū)塊鏈,從而得知你早先的那筆交易,已經(jīng)寫在里面了,至此交易確認(rèn)成功。

八、還有一個問題

寫到這里,我就介紹完了比特幣的基本知識,希望你已經(jīng)明白了比特幣是怎么回事。但是還有一個根本的問題,我沒有回答:比特幣的本質(zhì)到底是什么?

說到底,比特幣只是區(qū)塊鏈的一條記錄,是憑空生成的,為什么可以當(dāng)錢用?舉例來說,礦工獲得12.5個比特幣的獎勵,其實就是區(qū)塊鏈有一個記錄:”xxx地址獲得12.5個比特幣”。正是這行記錄,導(dǎo)致該礦工獲得了大筆金錢。如果區(qū)塊鏈突然增加了一條記錄,記載你的地址獲得了1000個比特幣,你就真的會有1000個比特幣。這到底是為什么?

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 比特幣
    +關(guān)注

    關(guān)注

    57

    文章

    7001

    瀏覽量

    139928

原文標(biāo)題:比特幣入門教程

文章出處:【微信號:LinuxHub,微信公眾號:Linux愛好者】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    #硬聲創(chuàng)作季 區(qū)塊鏈:1.1認(rèn)識比特

    區(qū)塊鏈比特
    Mr_haohao
    發(fā)布于 :2022年10月16日 23:44:12

    #硬聲創(chuàng)作季 區(qū)塊鏈:1.6比特的分叉

    區(qū)塊鏈比特
    Mr_haohao
    發(fā)布于 :2022年10月16日 23:48:32

    #硬聲創(chuàng)作季 區(qū)塊鏈與加:1.6比特分叉

    區(qū)塊鏈比特
    Mr_haohao
    發(fā)布于 :2022年10月17日 09:44:29

    究竟比特是什么

    采取去中心化的點對點網(wǎng)絡(luò),由網(wǎng)絡(luò)用戶獨立進行交易確認(rèn),無需第三方清算機構(gòu)?! ?、相對于傳統(tǒng)貨幣,比特的交易更加安全、透明、防偽。比特
    發(fā)表于 12-15 11:17

    回收螞蟻礦機,回收比特大陸礦機,收購比特礦機

    回收螞蟻礦機,回收比特大陸礦機,收購比特礦機全國上門回收螞蟻礦機比特大陸礦機包括(螞蟻礦機T9+ 10.5T、螞蟻礦機S9i 13T、螞蟻礦機S9i 13.5T、螞蟻礦機S9i 14
    發(fā)表于 06-01 10:32

    時代周刊:為什么比特是自由的源泉?

    本聰?shù)倪@個發(fā)明所包含的真實且自由的潛力只會讓加密貨幣和區(qū)塊鏈領(lǐng)域的投機、欺詐以及貪婪風(fēng)氣黯然失色。對于那些生活在極權(quán)統(tǒng)治下的民眾來說,比特是一種極具價值的金融工具,是一種抗審查的交換媒介。以匯款為例
    發(fā)表于 01-01 23:23

    什么是比特挖礦_比特挖礦詳細(xì)教程

    本文主要介紹了什么是比特挖礦、比特挖礦原理、挖礦為什么需要使用定制集成電路以及怎樣集群挖礦,其次還詳細(xì)的介紹了
    發(fā)表于 12-21 10:06 ?4582次閱讀
    什么是<b class='flag-5'>比特</b><b class='flag-5'>幣</b>挖礦_<b class='flag-5'>比特</b><b class='flag-5'>幣</b>挖礦<b class='flag-5'>詳細(xì)</b>教程

    萊特比特的區(qū)別

    本文詳細(xì)的介紹了萊特比特的相關(guān)概念,其中包括了萊特礦池介紹、比特
    發(fā)表于 01-09 11:21 ?6494次閱讀

    比特是不是電子貨幣_比特怎么交易

    本文開始詳細(xì)的介紹了比特的特征,其次介紹了比特的幾個易平臺和分析了比特
    發(fā)表于 01-30 16:25 ?1w次閱讀

    比特現(xiàn)金B(yǎng)CH才是原始的比特區(qū)塊鏈

    美國國家標(biāo)準(zhǔn)和技術(shù)研究所(NIST ):比特是一個分叉,BCH才是最初的區(qū)塊鏈。NIST 于2018年1月29日發(fā)布了一份詳細(xì)比特和區(qū)
    發(fā)表于 11-08 14:19 ?1494次閱讀

    比特存在的意義是什么為什么我們需要比特

    比特交易中保護自己的隱私是非常困難的,就算你經(jīng)常進行比特交易,也需要關(guān)注自己交易中使用的是哪些比特
    發(fā)表于 08-15 11:47 ?7223次閱讀

    對于比特最大的誤解是什么

    當(dāng)前主流人群對比特存在很多誤解,包括比特的主要用例,其他加密貨幣比比特更適合做交換媒介和賬
    發(fā)表于 10-12 16:01 ?622次閱讀

    比特極端主義分子對于數(shù)字貨幣的啟示是什么

    在達(dá)世比特現(xiàn)金等加密數(shù)字貨幣社區(qū)看來,比特極端主義者堅持的觀點是鏈上擴容并且持有而非支出比特
    發(fā)表于 10-31 09:47 ?821次閱讀

    比特的密碼學(xué)基礎(chǔ)詳細(xì)解析

    比特的發(fā)明人中本聰留下過一篇關(guān)于比特算法的論文。本文解析這篇論文,介紹比特的密碼學(xué)基礎(chǔ)。
    的頭像 發(fā)表于 12-15 11:18 ?8809次閱讀

    比特是什么?比特的原理詳細(xì)說明

    究竟是什么讓一枚虛擬貨幣的匯率在3年間翻了25000倍,是什么力量讓央行副行長“感興趣”但“不承認(rèn)”,拋開投機與商業(yè)欺詐比特作為一種工具究竟有沒有價值?又是什么讓馬云爸爸痛斥200億比特
    的頭像 發(fā)表于 02-03 15:07 ?1.1w次閱讀
    <b class='flag-5'>比特</b><b class='flag-5'>幣</b>是什么?<b class='flag-5'>比特</b><b class='flag-5'>幣</b>的原理<b class='flag-5'>詳細(xì)</b>說明