比特幣協議/算法可擴展性
我一直在研究比特幣協議/算法。我認為我已經掌握了基礎知識,但是關於整個事情應該如何擴展還有很多問題。例如,
- 目前每個客戶端都下載了整個區塊鏈,對吧?這是如何擴展的?他們應該能夠修剪默克爾樹,但我還沒有很好地了解這在 P2P 中是如何工作的。
- 以這種方式跟踪交易背後的思考過程是什麼?您必須遍歷很多樹來驗證新交易?正確的?
- 由於交易總是需要通過 P2P 確認(至少 6 次?),因此轉賬實際上遠非即時。有一個內置的延遲。這不是問題嗎?由於將交易接受到塊中(解決反向雜湊)的算法的性質,已經存在一些延遲。
如果您想將所有交易直接放入區塊鏈,它將無法擴展(大眾市場採用)。
需要建立在核心協議之上的服務層次結構。除了提高可擴展性之外,它們還可以提供一些人需要的各種功能,例如可逆交易、即時(無確認)轉賬、驗證賬戶或匿名。區塊鏈將用作這些服務之間的票據交換所。大多數人不需要直接與它互動,但他們仍然可以依靠它為由鏈支持的經濟提供的保證。
僅僅因為底層協議是完全點對點的,並不意味著你不能在其上分層。僅僅因為 git 是點對點的,並不意味著任何人都對 Linux 核心開發具有相同的影響。在比特幣世界中,仍然會有銀行、信用卡和保險公司。不同之處在於,無論這些人變得多麼強大,他們都無法擾亂貨幣供應(並憑空為自己創造硬幣)。如果他們搞砸了,以至於很多人不再信任他們,他們就會被排除在外。
由於交易總是需要通過 P2P 確認(至少 6 次?),因此轉賬實際上遠非即時。有一個內置的延遲。這不是問題嗎?
確認使某人不可能雙花。如果你足夠信任對方,你就不必等待這個。如果他們確實作弊,你還有其他方法可以報復他們。如果您是商家,您可以只計算由於損失造成的欺詐百分比。或者買一份保險單。店主已經在現實世界中這樣做了(以減少盜竊),信用卡處理器也是如此。如果您向他們提供服務(例如一個月的 VPN),如果付款“反彈”,您可以停止這樣做。如果您運送實物商品,您可以輕鬆等待三個小時進行確認。您可以在 MtGox 等交易平台上即時買賣貨幣(因此您無需信任甚至不知道您在與誰交易,只要您信任該平台即可)。
等待確認允許您(以自動方式)接受您一無所知的人的付款,而無需信任其他任何人來保證安全。這是比特幣的一個很好的額外功能,但它是您已經擁有的“現實世界”保證的補充。