成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

比特幣入門筆記

Loong_T / 1696人閱讀

摘要:也就是說,比特幣是一個完全出于社區(qū)共識的貨幣。所謂全稱為,它是比特幣交易的基本單位。根據(jù)比特幣的協(xié)議,一個區(qū)塊的大小是而一筆交易大概是,因此一個區(qū)塊大概可以包含筆交易。

誕生

比特幣誕生于 2008 年,一個網(wǎng)名為中本聰的人,提出了一個設(shè)想:

創(chuàng)造一種不受政府或任何組織控制的貨幣

比特幣的本質(zhì)就是一串?dāng)?shù)字,沒有任何資產(chǎn)支持(現(xiàn)行貨幣背后都是國家或銀行提供資產(chǎn)支持)。也就是說,比特幣是一個完全出于社區(qū)共識的貨幣。

貨幣是什么

wikipedia 上對貨幣的定義為:

貨幣,稱錢財,是人們?yōu)樘岣呓灰仔б?,對一種媒介達(dá)成的共識。

我們現(xiàn)在正在使用的紙幣,其實可以看成是共識的實體代表。如果沒有紙幣,貨幣仍然是成立的,比如銀行賬戶里的錢。

基于這個定義,任何一個事物,不管是實體的還是虛擬的,只要在大家的共識中,它是有價值的,那么就可以當(dāng)做貨幣來使用,比特幣正是這樣一種事物。

而且相較于銀行賬戶里的貨幣,比特幣的數(shù)據(jù)全部存放在區(qū)塊鏈上,更不容易被破壞。

比特幣的運行

貨幣的運行主要是通過交易,也就是貨幣從 A 到 B 這樣一個過程。比特幣也不例外,不過比特幣的交易并不是手遞手的傳遞,而是通過從 A 的比特幣地址到 B 的比特幣地址來完成的。

對于比特幣來說,并不存在這個概念,比特幣都是從地址地址的。另外,我們上面說過,比特幣的所有數(shù)據(jù)都是存在區(qū)塊鏈上的,所有數(shù)據(jù)都是公開的,所以想要查到某個地址有多少比特幣,是非常容易的。

看起來好像是所有的信息都被暴露了,但是有一點非常關(guān)鍵的是,沒有人知道地址背后的人到底是誰,這為比特幣提供了非常好的匿名性。

公鑰/私鑰

上面一直在強(qiáng)調(diào)地址這個東西,比特幣地址的基礎(chǔ)是非對稱加密算法。

那么什么又是非對稱加密算法呢?

舉個簡單的例子,在諜戰(zhàn)劇中,我們??吹接刑毓そ孬@敵人的電報信號,但是出于安全性考慮,這些電報的內(nèi)容其實都是加密過的。通常情況下是有個密碼本,發(fā)送方和接收方各執(zhí)一份,這就叫做對稱加密。

內(nèi)容先加密再發(fā)送,接收方收到消息后,先解密再閱讀。

但是這樣的方式有個嚴(yán)重的缺點,就是加密規(guī)則(密碼本)一旦泄露或者被破譯,那么發(fā)送的內(nèi)容就跟不加密沒有區(qū)別了。

為了解決這個問題,1970年,有兩個美國科學(xué)家提出了一種被稱作Diffie–Hellman key exchange的算法。

使加密和解密可以使用不同的規(guī)則,從而也就避免了密碼本失竊之后導(dǎo)致的安全問題,這種加密方式,就被稱為非對稱加密。

在非對稱加密中,基本就是執(zhí)行了這樣幾個步驟:

A 生成了兩把密鑰(公鑰/私鑰),A 把公鑰發(fā)送給 B

B 獲得了 A 的公鑰,同時用公鑰對信息進(jìn)行加密,并把加密后的信息發(fā)送給 A

A 收到了加密后的信息,然后用私鑰解密,獲得真正的內(nèi)容

在這個過程中,如果 A 的私鑰不被泄露的話,那么用 A 的公鑰加密的信息,只有 A 才能夠解開,從而保證了安全性。

比特幣錢包/地址

說了半天加密,那么加密是為了什么呢?答案就是為了錢包/地址。

比特幣錢包其實就是一個存儲公鑰/私鑰的地方。

通常,會生成一個 256 位的私鑰;和一個 512 位的公鑰(與其他加密系統(tǒng)不同的是,比特幣錢包中的公鑰,直到第一次交易時,才會被公開)。

因為 512 位的公鑰實在是太長了,所以會再生成一個比特幣錢包的地址,用來做交易。首先會通過 SHA-256RIPEMD 算法將公鑰變成一個 160 位的 hash 值,這個 hash 值也被稱為指紋;但是 160 位還是太長,接下來會通過一個 Base58Check 的方法,將這個 160 位的 hash 編碼成一個長度為 26 ~ 35 的 base58 字符串,這個字符串就是比特幣錢包的地址。

接著,會根據(jù)私鑰,再通過 Base58Check方法,生成一個較短的 base58 格式的字符串,這個字符串被稱作 Wallet Interchange Format(WIF)。

到最后,我們一共得到了三種不同的 key,分別是

兩個密鑰

256 位的私鑰

512 位的公鑰

一個 160 位的公鑰的 hash

較短的 base58 格式的兩個字符串

錢包地址

錢包交換格式(WIF)

流程和關(guān)系可以看下面這個圖,會更清晰一些:

交易

比特幣的交易流程整體看起來非常簡單,一共分為以下幾個步驟

A 向 B 發(fā)起轉(zhuǎn)賬

根據(jù)比特幣協(xié)議, 驗證這筆交易是否可行

如果可行, 由礦工將交易信息打包, 寫到區(qū)塊鏈上

寫入成功, 即代表交易成功

但是跟通常情況下,銀行賬號間的轉(zhuǎn)賬交易不同,比特幣的交易本身不存在賬戶這樣一個概念,A 向 B 轉(zhuǎn)賬,比特幣并不真正落入 B 的某個賬戶中,而只是標(biāo)記了 B 擁有將這部分比特幣轉(zhuǎn)出的權(quán)利。

下面這個圖記錄了 3 個比特幣交易的數(shù)據(jù):

可以看到的 Transaction ATransaction B 分別轉(zhuǎn)了 0.005btc 和 0.003btc 到了 Transaction C, 之后 Transaction C 又分別轉(zhuǎn)出了 0.003btc 和 0.004btc。剩下的 0.001 btc,就作為礦工的費用,歸礦工所有了。

在比特幣交易的過程中,因為記錄的是交易本身,所以有一個原則就是每筆交易的 input 總和 一定要等于 output總和。

假設(shè)一筆交易收到了 100btc,但是真正想轉(zhuǎn)出去的只有 1btc,但是根據(jù)上面的原則,這筆交易的 output 總和一定要是 100btc,解決辦法就是將剩下的 99btc 再做一個 output 轉(zhuǎn)回到自己的錢包地址。

我們隨便找個比特幣交易記錄看下

輸入和輸入是一致的。

找零

交易過程中,會存在找零的問題,比如上面我們講到:

假設(shè)一筆交易收到了 100btc,但是真正想轉(zhuǎn)出去的只有 1btc,但是根據(jù)上面的原則,這筆交易的 output 總和一定要是 100btc,解決辦法就是將剩下的 99btc 再做一個 output 轉(zhuǎn)回到自己的錢包地址。

這個動作就稱為找零。

在真實的比特幣世界中,通常情況下,找零是會返回到一個新的地址上,而不是原地址。這么做的主要原因有兩個:

首先,如果一筆交易存在找零,那么在查看交易記錄時,并不會標(biāo)記出哪個是目標(biāo)地址,哪個是找零地址,所以也就是說難以猜到交易的真正對象。

其次,因為在交易過程中,轉(zhuǎn)出方公布了自己的公鑰,雖然以現(xiàn)在的計算機(jī)的算力很難通過公鑰反推出私鑰,但是并不代表未來也不能反推。所以每次找零都返回到一個新的地址,相當(dāng)于把剩下的資產(chǎn)做了轉(zhuǎn)移,從而隱藏了公鑰。

UTXO

所謂 UTXO 全稱為 Unspent Transaction Output,它是比特幣交易的基本單位。

UTXO 是不能再分割、被所有者鎖住的或記錄與區(qū)塊鏈中的并被整個網(wǎng)絡(luò)識別成或單位的一定量的比特幣。(原文見這里)

比較通俗的講,一次交易中的 output,其實就是一個 UTXO,假設(shè)我手里有一張 10 塊錢,一張 5 塊錢,但是我想買一個 12 塊錢的東西;那么我一次性要 output 兩個人民幣,分別是 10 塊和 5 塊,然后又找回給我 3 塊錢,那么這個 3 塊錢,也是 UTXO。

交易過程中的驗證

因為是完全去中心且匿名的交易,所以在交易的過程中,會需要一些驗證,來證明該交易是否是符合規(guī)則的。

每一次的交易,都會要求轉(zhuǎn)出方提供以下信息,以驗證當(dāng)前的交易是否合法:

上一筆交易的 hash

轉(zhuǎn)出方的公鑰

轉(zhuǎn)出方私鑰生成的數(shù)字簽名

為了驗證交易是否可以正常進(jìn)行,需要以下三個步驟

找到上一筆交易,以確認(rèn)支付方確實有能力支付本次交易

算出支付方公鑰的指紋,確保與支付方地址一致

使用公鑰解開數(shù)字簽名,以驗證私鑰屬實

具體的步驟,可以參加這個圖:

經(jīng)過驗證之后,當(dāng)前的交易將會被礦工打包,并寫到區(qū)塊鏈中。具體的寫入過程可以參考這篇文章中的介紹。根據(jù)比特幣的協(xié)議,一個區(qū)塊的大小是 1MB, 而一筆交易大概是 500b,因此一個區(qū)塊大概可以包含 2000 筆交易。礦工負(fù)責(zé)將這些交易打包,算出 hash,再寫入到鏈上。

因為打包寫入到區(qū)塊鏈上,是一個會消耗大量計算的過程,所以礦工的工作并不是義務(wù)勞動。根據(jù)比特幣的協(xié)議規(guī)定,成功添加新區(qū)塊的礦工將獲得獎勵,一開始是 50btc,然后每 4 年減半;另一方面,因為比特幣最多只支持到小數(shù)點后面 8 位,所以可以得出到了 2140 年,礦工將得不到任何獎勵。到時候,礦工所能獲得到的收益就只能是交易手續(xù)費了。

所謂的交易手續(xù)費,是由交易方付給礦工的,具體的金額隨意。但是礦工會優(yōu)先選擇手續(xù)費較高的交易進(jìn)行打包,以預(yù)期獲得更高的收益。所以也就是付給礦工的手續(xù)費越高,那么交易也就會被越早確認(rèn)。

交易中產(chǎn)生的沖突

因為是非同步的,而且節(jié)點間的同步有可能會出現(xiàn)延遲。所以,就有可能存在同一筆交易被寫到了兩個區(qū)塊中的情況,為了解決這種情況所造成的沖突。

比特幣的鏈上規(guī)則中做了規(guī)定,因為區(qū)塊是前后鏈接的,所以一旦出現(xiàn)分叉,那么哪個區(qū)塊后面跟著的區(qū)塊多,就判定哪個分叉上的鏈?zhǔn)钦_的,另一條鏈將被拋棄,其中打包的交易也將因為沒有被寫入到主鏈上而判定為失敗。

交易和賬戶

上面說了半天,其實一直在說的都是交易。但是在主流的支付體系中,都是有賬戶這一概念的,也就說,你收入多少,支出多少,構(gòu)成了你賬戶中余額的多少。

但是在比特幣中,并不存在賬戶這一概念,區(qū)塊鏈上記錄的就是交易,如果想知道一個地址上一共有多少比特幣,那么需要遍歷所有的交易,才能計算得出。

Reference

比特幣入門教程

RSA算法原理

Diffie–Hellman key exchange

菲迪-赫爾曼密鑰交換算法

RIPEMD

Base58

bitcoin-paper

Protocol_documentation

how-the-bitcoin-protocol-actually-works

比特幣交易查詢

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/24252.html

相關(guān)文章

  • SegmentFault 技術(shù)周刊 Vol.41 - 深入學(xué)習(xí)區(qū)塊鏈

    摘要:和比特幣協(xié)議有所不同的是,以太坊的設(shè)計十分靈活,極具適應(yīng)性。超級賬本區(qū)塊鏈的商業(yè)應(yīng)用超級賬本超級賬本是基金會下的眾多項目中的一個。證書頒發(fā)機(jī)構(gòu)負(fù)責(zé)簽發(fā)撤 showImg(https://segmentfault.com/img/bV2ge9?w=900&h=385); 從比特幣開始 一個故事告訴你比特幣的原理及運作機(jī)制 這篇文章的定位會比較科普,盡量用類比的方法將比特幣的基本原理講出來...

    qianfeng 評論0 收藏0
  • 區(qū)塊鏈入門筆記

    摘要:最近了解了一些區(qū)塊鏈的東西,動了一些深入了解的心思。同時,為了使區(qū)塊的添加速率趨于平均比特幣的設(shè)計是大約分鐘生成一個新的區(qū)塊,并不是隨便一個新建的區(qū)塊都可以被添加到鏈上。 最近了解了一些區(qū)塊鏈的東西,動了一些深入了解的心思。 了解的過程中會不斷補充和完善這篇文章,理解的不一定對,隨意看看得了,每篇文章都會把閱讀過的資料列出來,也方便大家去源頭看看。 區(qū)塊鏈(blockchain) 區(qū)塊...

    hzc 評論0 收藏0
  • 區(qū)塊鏈筆記(2)直觀感受比特

    摘要:書接上回區(qū)塊鏈筆記基礎(chǔ)概念掃盲,我們討論了關(guān)于比特幣以及區(qū)塊鏈的許多基礎(chǔ)概念,可能通過我略帶類比的描述,讓你初步有了一些概念,但是對于一個比特幣到底長什么樣以及如何使用比特幣進(jìn)行交易可能還不是很清楚,說的直白點就是聽過豬叫,但沒吃過豬肉。 解惑是每個人都在走的一條路,可誰又能解這漫漫無期呢?路上總是麻醉的人多,釋懷的人少。 書接上回區(qū)塊鏈筆記(1)基礎(chǔ)概念掃盲,我們討論了關(guān)于比特幣以及...

    DrizzleX 評論0 收藏0
  • 如何理解比特和區(qū)塊鏈?

    摘要:比特幣區(qū)塊鏈無疑是當(dāng)今業(yè)界的最熱門的。目前,每個成功的礦工獲得可能每年更換一次或通過比特幣社區(qū)決策作為成功向區(qū)塊鏈添加一塊交易的獎勵。填寫其他詳細(xì)信息,例如比特幣金額和可選說明。 比特幣區(qū)塊鏈無疑是當(dāng)今業(yè)界的最熱門的。通過這篇博客,我將盡力向大家介紹加密貨幣比特幣的概念,以及它如何創(chuàng)造我們稱之為區(qū)塊鏈的革命性技術(shù)。 這個問題經(jīng)常引起混淆。這篇文章可以快速解釋和清理這方面的混亂! 什么是...

    Kosmos 評論0 收藏0
  • 30分鐘入門比特與區(qū)塊鏈

    摘要:文章前部分適合想了解比特幣和區(qū)塊鏈的非開發(fā)人員,整篇文章適合想轉(zhuǎn)入比特幣與區(qū)塊鏈相關(guān)開發(fā)的技術(shù)人員。張三和李四均可通過查詢區(qū)塊鏈網(wǎng)絡(luò)確認(rèn)轉(zhuǎn)賬成功。 ??常見的比特幣與區(qū)塊鏈入門文章大約分為兩類,一類是面向非開發(fā)人員的科普讀物;另一類是面向開發(fā)人員的技術(shù)指南。前者易流于淺表,讓讀者接觸了一堆名詞和概念,卻無法對比特幣與區(qū)塊鏈有個直觀的認(rèn)識;而后者又往往直接進(jìn)入細(xì)節(jié),使開發(fā)人員一葉障目不能...

    learning 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<