關於比特幣技術的疑惑

最近區塊鏈技術好像很火的樣子,今天突然想到一個問題。就是,既然比特幣是去中心化的,我產生瞭一筆轉賬。。需要礦工同步。。那麼礦工是怎麼接收到我轉賬的消息的。

正常的轉賬是 我向服務器發送消息,服務器確認。

既然比特幣是去中心化的 這個服務器是礦工們?那麼這些礦工是怎麼知道我轉賬瞭的?

我主動推送的?那麼又是怎麼推送的呢?

已邀請:

tfboys

贊同來自:

比特幣用的 tcp 協議

人民日報微博

贊同來自:

你提交一筆交易,是需要提交到一個已經連入網絡的節點去廣播到整個網絡的。

這裡說的去中心化是指從博弈的角度來說你沒法控制誰來當礦工。

悲傷逆流成河txt

贊同來自:

礦工的交易信息是從 full node 取的,所有交易都必須從一個 full node 進行廣播(可以是任意一個)
你可以選一個別人搭建的 full node 廣播(輕錢包),或者自己搭建一個 full node 廣播(全節點錢包)

最好去翻閱一下中本聰的白皮書,寫得很詳細。
別人傳出來的總是一星半點的信息。

ig

贊同來自:

@takato full node 不是輕錢包,輕錢包是隻同步時隻保留導入錢包的數據。

自己搭全節點硬盤開銷很大,以太坊要 50 多 G,也要時間去慢慢同步。

張清華

贊同來自:

@kaichen 輕錢包依然需要 blockchain_header,目的是驗證某個交易是否真實存在。流程如下:
0. 從網絡上獲取並保存最長鏈的所有 block header 至本地;
1. 計算該交易的 hash 值 tx_hash ;
2. 定位到包含該 tx_hash 所在的區塊,驗證 block header 是否包含在已知的最長鏈中;
3. 從區塊中獲取構建 merkle tree 所需的 hash 值;
4. 根據這些 hash 值計算 merkle_root_hash ;
5. 若計算結果與 block header 中的 merkle_root_hash 相等,則交易真實存在。
6. 根據該 block header 所處的位置,確定該交易已經得到多少個確認。

所以輕錢包依然需要同步少量數據。。。

林志穎微博

贊同來自:

@kaichen 才 50G ?怕是你穿越瞭吧.

@takato 說的是對的。

誘之以禽

贊同來自:

@WinG 哈哈,我們有運維節點池,以太坊用 Parity 跑起來,存儲數據就用這麼多空間。

激蕩三十年 pdf

贊同來自:

@takato 比特幣的 SPV 到目前為止,正常賬戶需要 60M 多一點

冷笑話微博

贊同來自:

@WinG
@kaichen Parity 壓縮過一些早期 block 的內容。所以是這個大小。

如果是 geth 的 full 模式,就是恐怖的級別瞭。

揚基

贊同來自:

P2P
話說比特幣現在一個轉賬確認要一兩天,手續費還賊貴。
還是 paypal 好用

初逃醬

贊同來自:

以太坊完整節點 380 多 G,剪枝過的節點 50G 差不多

鞠婧祎

贊同來自:

@takato Geth 1.8 裡做瞭優化也是接近 60G 這樣

https://twitter.com/peter_szilagyi/status/951707685044604928

@kaichen geth 和 parity 的實現不太一樣的。一個是 fastsync,一個是 wrapsync

@kaichen #2 已經連入網絡的節點是什麼意思。。能舉個例子嗎。。

@jason19659

本質上來說,區塊鏈是一個網絡,每個人都能成為網絡的一份子

你發出一筆交易,需要網絡超過一半的節點確認,才算數

當你要提交交易,需要找到網絡裡其中一個點,讓他幫你廣播到全網,這就是我說的你需要向一個網絡中的節點提交交易

吳夢知

贊同來自:

@kaichen #15 我的意思是怎麼才能連入這個網絡。。通過 ip ?那為什麼是這個 ip。。還是通過什麼別的

要回復問題請先登錄註冊