banner
leaf

leaf

It is better to manage the army than to manage the people. And the enemy.
follow
substack
tg_channel

考慮的問題

開發者必須考慮的問題:#

開發者要思考第三方提供的利益相關者保護服務,設計出去中心化的保護方式。如果做不到,開發者必須知會利益相關者:這項技術缺乏他們習以為常的那種保護。開發者甚至可以因為用戶風險太高而決定放棄開發應用。

用戶必須考慮的問題:#

用戶必須明白沒有保護對於自己和自己代表的各方(提供諮詢的客戶、照顧的患者、要保護其權益的公民)造成的風險。必須坦陳這種風險,從服務對象處獲得有效的知情同意。還應當尋求能夠填補空白的非區塊鏈解決方案。

  • 缺乏隱私性

比特幣和以太坊這兩個最熱門的區塊鏈是公開的,以透明度和可及性著稱,任何人都可以訪問、添加和審計整個區塊鏈。但如果透明度對用戶隱私造成嚴重威脅,或許就需要私人區塊鏈了。例如 Nebula Genomics 用私人區塊鏈技術讓患者 “完全控制” 自己的基因組數據。

區塊鏈或許包含只應讓部分用戶看到的信息,這種情況可能需要綜合方法,組合使用私人區塊鏈和公開區塊鏈。例如,電子健康記錄既包含必須保持私密的高度敏感數據,又包含應當與疾病防控中心和醫療保險提供商等機構分享的信息。Hashed Health、Equideum Health 和 BurstIQ 等綜合區塊鏈都可以在分享生物特徵信息的同時,讓患者對自己的數據有更大的控制權。

  • 開發者必須考慮的問題:

開發者要仔細思考自己平衡透明性和隱私性的道德義務,然後決定手頭的應用適合的是公開區塊鏈、私人區塊鏈還是綜合模式。一個應當重視的要素是,區塊鏈成員可能被確定身份,這可能造成怎樣的道德後果。其他重要決定還包括確定哪些人可以在何種條件下訪問哪些數據,以及可訪問的時間範圍等。

  • 用戶必須考慮的問題:

用戶要了解透明性對自身業務和服務對象的影響。必須了解和應對錢包持有者可能被找到的風險(包括錢包持有者無意間洩露自己身份的情況)。

假設某金融服務公司的客戶因為不願公開捐款數額、政治傾向或從屬關係,想匿名捐款給慈善機構或政黨。該金融服務公司或許會推薦通過區塊鏈打款,因為區塊鏈會將客戶身份匿名化。但公司也有義務知會客戶,這個匿名轉帳記錄是公開的,並討論避免洩露身份的最佳方法。

零狀態問題#

第一個區塊,即 “初始區塊” 包含的數據準確性受到質疑,會出現零狀態問題。如果對數據的盡職調查未妥善執行,出了錯誤或出現惡意造假,就會發生這種狀況。例如在一個供應鏈上用於追蹤貨物的區塊鏈,第一区塊錯誤地顯示某輛卡車裝滿了來自某個礦井的銅,實際上這些銅來自另一產地。與卡車裝載物相關的人员可能被欺騙或收買了,創建初始區塊的人並不知情。

把這裡的貨物換成血腥鑽石(未經加工的鑽石原礦,用於為內戰衝突籌集軍火資金 —— 譯者注)或房地產,道德上的問題就凸顯出來。如果政府建立了區塊鏈作為保存土地登記處記錄的數據庫,在第一区塊輸入信息的人寫錯了土地所有者,就會引起嚴重的不公,相當於土地被偷走了。創建了保護隱私的安全加密貨幣的 Zcash 等一些組織,竭盡全力保證初始區塊正確無誤也是理所當然的。

  • 開發者必須考慮的問題:

開發者必須仔細驗證初始區塊要包含的所有信息,不遺餘力地確保這部分信息準確輸入。還必須提醒用戶注意零狀態問題,並公布區塊鏈可能含有錯誤信息這一事實,讓用戶評估潛在的風險,進行盡職調查。

  • 用戶必須考慮的問題:

區塊鏈用戶應當審查初始區塊如何創建、數據源自何處。要格外留意記錄在區塊鏈上的信息是否曾經成為詐騙、賄賂和盜取的目標。要想一想,建立初始區塊的組織是否可信,這個區塊是否有可靠的第三方審查。

用戶還需要明白,即使初始區塊和後續區塊的數據準確合法,也依然可能出問題。舉例來說,卡車裡裝載的是來路正當的鑽石,多次運轉的路徑都準確地記錄在區塊鏈上,但聰明的竊賊還是有可能在途中偷梁換柱,用假鑽石換走真貨。用戶必須將零狀態問題知會服務對象,公布對初始區塊進行的盡職調查,並找到防止詐騙的保護方案(如果有的話)。

  • 區塊鏈治理

用來形容區塊鏈技術的詞語有一大堆:去中心化、無需許可、自治 —— 這些詞可能會讓用戶對治理做出預設,比如以為是自由主義者和無政府主義者的樂園,或者以為所有成員對於區塊鏈運行方式有同等的發言權。但其實區塊鏈治理非常複雜,涉及重大的道德、名譽、法律和財務影響。區塊鏈上哪些人掌握權力、如何獲得權力、有什麼監督或沒有監督、實行怎樣的決策,全部由區塊鏈創造者決定。下面兩個例子很能說明問題 —— 一個惡名昭彰,另一個正在發生。

  • 第一個去中心化自治組織(DAO)在以太坊網絡上運行。這是一種對沖基金,最初叫 “The DAO”。成員各自擁有的表決權不同,取決於為基金投入了多少錢(以太幣)。2016 年 DAO 被黑,價值約 6000 萬美元的以太幣被盜,成員對於應對措施的想法截然不同,甚至連黑客行為是否構成盜竊都沒有共識。一派認為壞人利用軟件漏洞非法獲取的錢財應當回收,歸還合法所有者。另一派認為 The DAO 不應該再考慮改寫欺詐交易,只需修復漏洞,讓區塊鏈繼續運行。後者堅持 “規則就是法律” 和 “區塊鏈不可改變”,黑客的行動遵守規則,因此並不是倫理上不可接受的。最終前者獲勝,以太坊實行 “硬分叉”,將資金轉到修復地址,讓用戶能夠收回投資,從實質上改寫了區塊鏈的記錄。

  • 第二個例子是有關 Juno 治理的爭議。Juno 是另一個去中心化自治組織。2021 年 2 月,Juno 在其網絡上 “空投”,向社區成員發送免費代幣以提升參與度。一個加密貨幣錢包持有者破解了這個系統,獲得了在當時價值超過 1.17 億美元的大量代幣。2022 年 3 月,社群提議移除這名 “巨鯨” 用戶的大部分代幣,將其持有的代幣降到空投代幣可領取的正常範圍內。一個月後,提案以 72% 的投票率通過,他的代幣只剩 5 萬枚,其餘都被廢除。現在這名聲稱自己在用別人的錢投資的用戶威脅要起訴 Juno。

這幾件事說明,必須十分謹慎地為區塊鏈及其上運行的應用構建治理方式,做好盡職調查。

開發者必須考慮的問題:

開發者必須確定妥善的治理方法,特別是要注意治理結構可能給黑客和不法分子留下可乘之機。這不是一個機械式的問題。開發者的價值觀要在區塊鏈中明確表達和體現。比如 DAO 事件中以太坊開發者如何權衡,是修改區塊鏈還是只修復漏洞,表明了兩者觀念的差異。Juno 事件中投票贊成沒收巨鯨用戶代幣的人和反對的人之間的分歧也與此類似。為了避免這樣的倫理問題,開發者應當從一開始就建立治理指導原則。

權力和錢在系統中的分配和獲取方式如果沒有經過充分考慮,就會出現分歧。DAO 事件中的黑客利用了軟件漏洞,引起社群內部混亂:規則,有瑕疵的規則,究竟能不能當作法律。Juno 事件裡,動盪的部分原因在於對代幣最初分發的方式沒有考慮周全。開發者要明白,有投票權的人們各自有著截然不同的信念、價值觀、理想和願望。健全的治理是管理這些差異的最重要工具之一,而且如果開發者的價值觀體現在監管區塊鏈的基礎設施、政策和流程裡,應該可以避免重大倫理及財務風險。

用戶必須考慮的問題:

用戶必須思考,區塊鏈創造者的價值觀是否與自己所在的組織、自己的客戶相符。必須確定自己與客戶能夠承擔多大的波動、風險和失控。必須明確表達自己認為好的、負責任的治理標準,只使用達到標準的區塊鏈。用戶也許是在使用一個沒有單一權威者的分散網絡,但肯定在跟某一個政治實體打交道。

為區塊鏈建立倫理風險框架

一切技術的倫理風險都跟用途一樣多。例如 AI 控制的自動駕駛汽車,可能給行人造成生命危險。社交媒體應用有傳播假消息的風險。幾乎伴隨著所有數據驅動型技術的倫理和名譽風險,在區塊鏈上也存在。應用區塊鏈的時候,高層領導者必須建立用於減輕風險的框架。應當仔細考慮各種情況:我們的組織必須極力避免哪些重大倫理問題?邊緣狀況如何處理?應當預料到倫理問題會出現,思考:我們有怎樣的治理結構?需要怎樣的監管?區塊鏈技術是否會損害我們的組織價值和倫理價值,如果是,那麼我們該如何減輕這種損害?應當安排怎樣的保護措施,保護我們的利益相關者和品牌?所幸,這些問題很多已經在毗鄰的 AI 倫理風險文獻中得到了解答,我也寫過一個關於執行 AI 倫理項目的指南。一切區塊鏈項目都可以先從這類材料著手。

帳戶抽象 (Account Abstraction, AA) 自 2015 年以來就一直被討論,並提出了幾個不同版本的 EIP (EIP-101、EIP-86、EIP-859、EIP-2938、EIP-4337)。最近,帳戶抽象的研發似乎又成為了社區的討論熱點,應用層面上也陸續推出帳戶抽象的解決方案。那么帳戶抽象究竟是什麼?大家想要通過 AA 來解決什麼?本文講述了以太坊帳戶類型、帳戶抽象的 EIP、以及帳戶抽象的潛在用例。

“智能合約” 一詞最早由美國計算機科學家尼克・薩博(Nick Szabo)在 1994 年提出,其含義是以計算機代碼形式記錄合同當事人承諾履行的義務,並在約定條件下由代碼實現強制履行。但是薩博只是提出了概念,沒有說明如何落地實施。在 1996 年,伊恩・格里格(Ian Grigg)提出 “李嘉圖合約”,既能夠被人閱讀,也可以被程序解析,賦予了智能合約法律屬性,成為後續智能合約探索的主要路線。而智能合約的有效實現需要滿足以下幾個特徵。

  • 一致性:就是智能合約需要與合約文本保持一致,並且不與現行法律發生衝突。可觀測性:合約內容與其執行過程都應該是可觀測的、透明的,合約各方能夠通過用戶界面去觀察、記錄、驗證合約狀態。一旦合約建立,就無法篡改。

  • 可驗證性:是智能合約所產生的結果應能夠被驗證,具有一定的容錯性,代碼運行符合合約,重複運行可以得到相同的結果,具備成為司法證據的條件。隱私性:智能合約的運行應該保障當事人身份信息與合約內容控制在 “最小、必要” 的知悉範圍內,滿足商業信息保密和個人隱私保護需求。

  • 自強制性:這個特徵既是智能合約的核心內涵,也是智能合約的主要價值所在,意思是在合同約定條件具備後,不依靠法律強制力的情況下,智能合約應該具有不被干擾、不可抵賴地履行義務的能力。

  • 同時滿足以上幾個條件是比較困難的,因此在智能合約設想誕生後的十多年裡,實踐應用非常有限。後來,“以太坊” 利用區塊鏈去中介化、不可篡改等特性,實現了智能合約的運行。智能合約也與區塊鏈在某種程度上被 “綁定” 在了一起,以至於人們認為只有區塊鏈和 Defi 才能實現智能合約的價值。至今,“以太坊” 的智能合約僅在加密資產、NFT、博彩、遊戲等少數領域得到應用,並沒有發揮對實體經濟的促進作用。而且,由於缺乏可擴展的應用生態以及虛擬貨幣的投機屬性等問題,應用也受到局限。實際上,智能合約概念的出現遠早於區塊鏈,智能合約的運行條件也並非只有區塊鏈才可滿足。

  • 自比特幣問世以來,私營部門推出各種所謂加密貨幣。據不完全統計,目前有影響力的加密貨幣已達 1 萬餘種,總市值超 1.3 萬億美元。比特幣等加密貨幣採用區塊鏈和加密技術,宣稱 “去中心化”“完全匿名”,但缺乏價值支撐、價格波動劇烈、交易效率低下、能源消耗巨大等限制導致其難以在日常經濟活動中發揮貨幣職能。同時,加密貨幣多被用於投機,存在威脅金融安全和社會穩定的潛在風險,並成為洗錢等非法經濟活動的支付工具。

  • 針對加密貨幣價格波動較大的缺陷,一些商業機構推出所謂 “穩定幣”,試圖通過與主權貨幣或相關資產錨定來維持幣值穩定。有的商業機構計劃推出全球性穩定幣,將給國際貨幣體系、支付清算體系、貨幣政策、跨境資本流動管理。

推薦閱讀下列文章,更好地理解帳戶抽象:

✦《帳戶抽象的動機、歷史和分析》by 沙漏:

https://mp.weixin.qq.com/s/ZGzw3VE-8KEQE5xu7Jw_8A

✦《引介 | 概述以太坊帳戶抽象化》by EthFans:

https://mp.weixin.qq.com/s/3VvjB2GXcH95j2Hr3zcsVg

✦《引介 | 帳戶抽象化(EIP-2938):為什麼 & 做了什麼》by EthFans:

https://mp.weixin.qq.com/s/CKtk6xKcXFVjyPKDxHBnhw

✦《論帳戶抽象 (2022)》by 沙漏:

https://mirror.xyz/0xbeC73ba0817403cd11C11bE891D671EA30443562/95LlE7sLCL4UTvL7rU3ZAXnBvlDbh7X-rm0QWkc43Us

✦《EIP-4337》by Plancker DAO:

https://www.notion.so/EIP-4337-0baad80755eb498c81d4651ccb527eb2

此外,普朗克社區和 ECN 社區合辦的首期 “他的名字叫小 V” 活动對 EIP4337 合約錢包進行了分享。

計算機編程中的抽象和數據抽象指的是隱藏除了 “對象” 相關數據以外的所有數據的過程,目的是減少複雜性並提高有效性。它通過省略不必要細節的方式來表示對象。抽象是面向對象編程(object-oriented programming)的三大原理之一,它與封裝和數據隱藏有關。這篇文章將為以下方面提供概覽:

➤ 以太坊帳戶抽象

外部帳戶 / 用戶帳戶

合約

➤ 為帳戶抽象提議的 EIP

EIP-86:事務來源和簽名的抽象

EIP-2938:帳戶抽象

EIP-4337:通過入口點合約 (Entry Point Contract) 實現的帳戶抽象

➤ 用例

錢包

贊助交易混幣

DeFi 協議

帳戶抽象

以太坊的帳戶抽象以創建單一帳戶類型為目標,這種帳戶將包含所有相關方面,而且沒有任何無關的方面,讓開發人員的工作更加輕鬆。

以太坊帳戶類型

目前,在以太坊區塊鏈上有兩種類型的帳戶:

圖片

用戶帳戶(EOA)

用戶帳戶是給一般人使用的(人類)。

這些帳戶由對應公共地址的私鑰所控制,比如用戶的錢包帳戶。

這些帳戶又稱為外部帳戶 (EOA),不需要 ETH 餘額就可以在區塊鏈上創建一個外部帳戶。但是,兩個外部帳戶之間可以用 ETH 進行交易,也可以用 ERC 支持的其他代幣。

外部帳戶 (錢包) 用於加密貨幣的發送和接受功能存在於以太坊虛擬機(EVM)的外部。

合約

合約是一組由代碼控制的指令。

因為使用了網絡儲存,所以創建一份合約通常會產生相關成本。

用戶可以操作多種功能,比如接收來自外部帳戶和合約帳戶的事務,以及向它們發送事務。

它還可以啟動一個執行多種活動的代碼,包括兌換代幣或是創建一個新合約。

合約帳戶是存在於 EVM 的 “智能合約”。

如果你發送 1 個 ETH 到由代碼合約控制的帳戶,那就沒有人可以再控制這個 ETH 了。唯一可以轉移這個 ETH 的是合約的執行,即代碼本身。

兩種類型的帳戶都具有接收、保留和發送 ETH 和代幣的潛能,還有與部署在網絡上的其他智能合約進行通信的潛能。

帳戶抽象提案

以太坊帳戶抽象 (AA) 是對這兩種帳戶形式的加強,讓它們更具有可比性,還使外部帳戶的管理邏輯像合約帳戶一樣通用。

它的目的是將合約帳戶的兩種形式減為一種形式。單個帳戶形式的用途包括鑄幣和合約轉帳。開發者和用戶將不再需要區別帳戶類型,因為事務將完全轉移到 EVM 上並脫離區塊鏈協議。

以太坊開發者一直在尋找實現的方法,但一直沒有達到 Final 狀態的提案。在以下部分,我們將概述迄今為止提議帳戶抽象的三個以太坊改進提案 (EIP)。

帳戶抽象提案的時間線

圖片

2016:

Vitalik Buterin 為 Metropolis 提出最初的抽象變化想法。

其目的是準備一種帳戶安全抽象。在傳統的模型中,ECDSA(椭圆曲线数字算法签名) 和默認的 nonce 方案是保護帳戶的唯一途徑。在此模型中,所有帳戶都是合約帳戶,它可以支付 gas,且用戶可以自由定義他們的安全模型。

2017:

Vitalik Buterin 提出了用於事務來源和簽名的抽象的 EIP-86。

其目的是抽象出簽名驗證和 nonce 檢查機制,允許用戶建立帳戶合約來執行任意所需簽名或 nonce 檢查,而不是依賴於傳統的方法。

2020:

Vitalik Buterin、Ansgar Dietrichs、Matt Garnett、Will Villanueva 和 Sam Wilson 提議了用於帳戶抽象的 EIP-2938。

目的在於允許合約成為可以支付費用和執行事務的 “頂級” 帳戶類型。

2021:

Vitalik Buterin、Yoav Weiss、Kristof Gazso、 Namra Patel 以及 Dror Tirosh 提議了通過入口點合約規範進行帳戶抽象的 EIP-4337。

其目的在於避免共識層協議變更,而是依靠更高層次基礎設施。

EIP-86:事務來源和簽名的抽象

根據其 “摘要”,EIP-86 提議實現一系列改變,這些改變服務於 “抽象出” 簽名驗證和 nonce 檢查的綜合目的,允許用戶創建用於執行任意所需簽名 /nonce 檢查的 “帳戶合約”,而不是依賴於使用目前這種硬編碼到事務處理的機制。

傳統模型:ECDSA 和默認的 nonce 方案是保護帳戶的唯一方式。

新模型:所有帳戶都是合約帳戶,它可以支付 gas,且用戶可以自由定義他們的安全模型。

以 forwarding contract 為例,作者 Vitalik Buterin 解釋道,這種合約會驗證簽名,如果簽名是有效,它開始向礦工發起付款,然後使用給定的值和數據向指定地址發送調用指令。

➤ 優勢

這個提案的主要優勢如下:

多簽錢包

傳統方法:多簽錢包中的每一筆交易都必須由所有的參與者進行同意。我們可以通過將所有參與者簽名結合為單一批准事務對此進行簡化,但這種方法還是會增加複雜性,因為所有參與者的帳戶都必須持有 ETH。

新方法:在這個 EIP 的幫助下,現在的合約可以持有 ETH,直接提交包含所有簽名的事務至合約上,合約將會支付這筆費用。

自定義密碼學

傳統方法:用戶必須遵循 ECDSA,這是一種使用椭圆曲线的密碼學。

新方法:用戶可以升級至 ed25519 簽名或用戶自己希望升級的任何方案;不要求用戶採用 ECDSA。

EIP-2938:帳戶抽象

根據 EIP-2938 的摘要,“帳戶抽象 (AA) 允許合約成為可以支付費用和執行事務的 “頂級” 帳戶。

傳統模型:事務的有效性直接由 ECDSA 簽名、一個簡單的 nonce 值以及帳戶餘額進行定義。

新模型:

  1. 1. 帳戶抽象通過執行隨機的 EVM 字節碼來擴展事務的有效性條件。

  2. 2. 為了表示有效性,引入了新的 EVM 操作碼 PAYGAS,還設置了合約的 gas 價格和 gas 使用上限。

  3. 3. 帳戶抽象現已分為兩類:

單租戶 AA:這種類型旨在支持錢包或其他參與者很少的用例。

多租戶 AA:這種類型旨在賦能像 Uniswap 這種有很多用戶的應用。

共識變更

NONCE 操作碼:添加一個 NONCE 操作碼,推送事務的 nonce 字段。

PAYGAS 操作碼:添加一個 PAYGAS 操作碼,創建一個不可逆的檢查點,確保 PAYGAS 之前的狀態變更無法被逆轉。

Sam Wilson 是這個提案的作者之一,它在這裡解釋了 AA 事務與其他傳統事務的不同之處。

在 AA 事務中,不會有 gas 價格或是 gas 上限、沒有發送的值和簽名字段,並用 target 代替 to。在多簽合約中,這些字段在 calldata 中進行傳遞,並用合約進行處理。

如果一筆事務到達節點,事務的有效性會被檢查。但是傳統事務和 AA 事務進行檢查的方式不同。

在傳統事務中:節點檢查:他們的 nonce 與帳戶的下個 nonce 匹配、帳戶餘額足以支付他們的價值以及最高的 gas 費用,並且他們的簽名與帳戶的地址匹配。

在 AA 事務中:節點檢查:他們的 nonce 與合約的下個 nonce 完全匹配、合約的字節碼以標準的前綴開始、驗證邏輯在達到驗證 gas 上限之前調用 PAYGAS、沒有禁止的操作碼在 PAYGAS 之前被調用,以及合約餘額足夠支付 PAYGAS 設定的 gas 費。

區塊廣播時間是一個新區塊到達網絡大多數節點所需平均時間。

當具有 AA 事務的區塊到來時,同一帳戶的所有待處理事務都將被刪除。另一方面,傳統事務會被重新驗證並可能在收到新區塊時發布。

EIP-4337:通過入口點合約實現的帳戶抽象

這是 Vitalik Buterin 和社區提出的最新議案。它作為一項 ERC 提議出來,而這個提案包括了避免共識層協議的變更,而依靠於更高層的基礎設施。

它旨在完成下列目標:

帳戶抽象:允許用戶使用包含隨機驗證邏輯的智能合約錢包作為他們的主要帳戶,而不是 EOA。

去中心化:允許打包交易捆的人參與包含帳戶抽象用戶活動的過程。用戶不需要知道任意活動者的直接通信地址,就可以處理發生在整個公共內存池中的任意活動。

無共識變更:為了更快的採用,這個提案避免了共識變更。

交易費支付:用 ERC-20 標準的代幣支付交易費,使得開發者為其用戶支付費用,以及類似於 EIP-3074 這樣的贊助的交易提案所支持的用例。

這項提案怎麼運作?

圖片 圖片來源:Infinitism

Vitalik Buterin 在這裡很好地解釋了這項提案的運作。

這是帳戶抽象最新的提案,目前還是 draft(起草)狀態,等待被合併成為一項 EIP。對比常規的以太坊事務內存池,這項設計增添、維護以及犧牲了一些功能。

關鍵亮點

➤ 沒有中心化的活動者、移除了用戶端錢包設置複雜性,完全支持 EIP-1559、具有替代交費的能力,發送、移除了用戶端錢包設置複雜性,完全支持 EIP-1559、具有替代交費的能力,發送一個比舊 UserOperation 具有更高溢價的新 UserOperation 來替換操作或保留了讓它更快被打包的功能。

➤ 有一些增添的新優勢:

驗證邏輯的靈活性

足以讓執行層達到量子安全

錢包可升級性

執行邏輯靈活性

➤ 然而,儘管協議已經盡了最大的努力,它還是會略微增加 DoS 攻擊的可能性,它還會增加 gas 開銷,並且一次只執行一個事務。

帳戶抽象用例

錢包

EOA 和合約錢包

EOA 錢包:由私鑰保護的錢包。

合約錢包:使用智能合約在鏈上實現的錢包。

安全考慮:如果智能合約代碼中存在 bug,合約錢包將面臨來自易受攻擊的智能合約的安全風險。這種風險可以通過由錢包提供商完成的安全測試和審查進行最小化。然而,在 EOA 錢包中,風險會完全由錢包用戶承擔,就像用戶不小心丟失了私鑰也由他們自己承擔。

Argent, Dapper, Gnosis Safe 和 Monolith 都是智能合約錢包的案例。

EOA 的元交易

以太坊區塊鏈用戶需要一個持有 gas 的 EOA 與區塊鏈網絡進行連接,或依賴錢包供應商通過他們的中繼或第三方中繼網絡(例如 Gas Station 網絡)促進元交易。前者依賴於 (需要做 KYC 的) 中心化交易所購買的 ETH,試圖通過將消費者的責任轉移給中繼者來儘量減少用戶體驗摩擦,費用由鏈上 / 鏈下錢包供應商和 / 或鏈下用戶支付。

元交易是一種包含了帶有執行交易意願者所簽署的數據信息的交易。

基於中繼者的架構有一些缺點:

  1. 1. 可以將他們視作擁有抑制交易能力的中心化中介

  2. 2. 由於中繼交易需要額外的 21,000 基本 gas 收費,及其公司在 gas 費基礎上盈利的需要,他們在技術上 / 經濟上的效率低下。

  3. 3. 對中繼者專用協議權力的使用。

帳戶抽象允許智能合約錢包在不依賴中繼網絡的情況下,接受用戶的無 gas 費的元交易並為他們支付 gas 費。在不失去以太坊去中心化保證的情況下,這種基礎層的能力還會大大提升這種錢包的 UX(用戶體驗)。

贊助交易 (Sponsored Transactions)

Sponsored Transactions 囊括在 EIP-2711 (狀態為已撤銷) 中,這個 EIP 提議了一種機制:通過允許其他人代付 gas 費,可以讓人們無需擁有任何 ETH 就可以進行交易。

一些用例:

  1. 1. 允許應用開發者代表用戶支付費用。

  2. 2. 允許用戶用 ERC-20 代幣支付費用,合約則像中介收集 ERC-20 代幣並以 ETH 的方式支付網絡費用。

運作

這項提案可以通過出納機制 (paymaster mechanism) 來支持這些用例。

對於用例 1:Paymaster 會驗證贊助者的簽名被納入在 paymasterData 中,表明贊助已做好為 UserOperation 進行支付的準備。如果簽名有效,Paymaster 就會接受這項指令,並從贊助者的份額中扣除 UserOperation 的費用。

對於用例 2:Paymaster 會檢查 sender 的錢包是否有足夠的 ERC-20 餘額來支付這項 UserOperation。如果足夠,Paymaster 會接受這項指令,並在索要 postOp 裡的 ERC-20 代幣之前支付 ETH 費用。

混幣

一起探討 Tornado Cash 混幣機制的例子,以此理解我們如何在 DeFi 協議中使用 AA。

傳統的 Tornado Cash 合約中的隱私問題

當用戶進行提款時,Tornado Cash 為其提供隱私保護。他們可以證明這筆款來自一筆獨一無二的存款,但除了用戶之外沒人知道這筆存款來自哪裡。

用戶通常不會在自己的提款地址裡持有 ETH,如果用戶使用他們的存款地址來支付 gas,這就會在存款地址和提款地址之間生成一條鏈上鏈接。

這個問題可以由第三方中繼者解決,他們會驗證 ZK-Snark 和 nullifier 仍然有效的狀態,發布使用其 ETH 支付 gas 的交易,並從 Tornado Cash 合約中收集用戶的返款。

帳戶抽象提供的解決方案:用戶可以提交一個針對 TC 合約的 AA 事務,在這之後執行 ZK-SNARK 驗證和 nullifier 檢查,並直接快速地調用 PAYGAS。這可以讓提款者直接用發送到他們提款地址的代幣中支付 gas,無需中繼者或連接其存款地址的鏈上鏈接。

DeFi 協議

一起探討 DeFi 協議 Uniswap 的案例,了解我們可以在 DeFi 協議中如何使用 AA。

可以創建一種 Uniswap 的新版本,它允許直接進行針對 Uniswap 合約的交易。

目前,用戶可以將代幣提前存進 Uniswap;Uniswap 可以儲存用戶的餘額和公鑰,以便驗證花費這些餘額的事務。

AA 的目標在於通過禁止不符合高級標準的事務被打包到鏈上(例如,匹配訂單的存在),從而提高 DeFi 協議的 gas 效率。

在傳統模型中:正常的交易員會將他們的代幣儲存在 Uniswap 的合約之外。

在新模型中:套利交易員會將他們的代幣存在 Uniswap 上,在外部市場發生變化的情況下,他們還可以轉移執行套利的交易。最終,另一個套利交易員如果首先執行這筆交易時,這些沒有獲利的交易不會被打包上鏈。這讓套利交易員避免了支付 gas 並減少了打包上鏈的垃圾交易數量。這將會增加區塊鏈的可擴展性和市場效率,因為套利交易者更能做到糾正跨鏈交易在價格上的差異。

套利交易員指的是利用兩個或更多市場之間的差價,由此時低價購入並高價賣出的交易員。

原文鏈接:https://etherworld.co/2021/10/06/an-overview-of-account-abstraction-in-ethereum-blockchain/

六、 以太坊未來的 PoS 協議

Casper PoS 是一種基於保證金的經濟激勵共識協議 (security-deposit based economic consensus protocol)。協議中的節點,作為 “鎖定保證金的驗證人 (bonded validators)”,必須先繳納保證金 (這一步叫做鎖定保證金,"bonding") 才可以參與出塊和共識形成。Casper 共識協議通過對這些保證金的直接控制來約束驗證人的行為。具體來說就是,如果一個驗證人作出了任何 Casper 認為 “非法” 的事情,他的保證金將被罰沒,出塊和參與共識的權利也會被取消。保證金的引入解決了 "nothing at stake(無代價、無抵押)",也就是經典 PoS 協議中做壞事的代價很低的問題。現在有了代價,而且被客觀證明做錯事的驗證人將會付出這個代價。

未來以太坊將使用 Caspor PoS 協議,這個協議不是用算力證明,而是用數字資產去證明自己的存在。即不需要花費金錢去買礦機挖礦,而是通過實體資產去買 ETH ,讓自己變成證明人(Validator)。

Plain text

七、 以太坊編程具有挑戰性

編碼並沒有那麼難的,特別是有其他軟件編程基礎的話。但是如果編程人員想成為以太坊的核心編程者去研究諸如安全性和擴展性的技術型問題,那這會相對困難一點,因為這畢竟是一個很新的技術,只有很少一部分正在理解這些挑戰,但不是沒有可能的。如果在座的人有想加入以太坊研究小組的話,我們也正在招人,當然也歡迎來做志願者。除此之外,我們也是相當歡迎大家來以太坊其他的項目工作的。總而言之,我們以太坊社區有很多不同的方面,有些人進來做是因為他對這項技術感興趣,另外有人想在其基礎上做其他軟件開發,有些人現在平台做研究以了解有什麼東西可以在平台上開發。區塊鏈技術即使已經出來 9 年了,但我還是覺得他還很年輕,發展還很快,還有很多不同的途徑可以參與進來。

Plain text

八、 V 神推薦學習方法

人感興趣成為以太坊的編程者,推薦開始關注這兩個網站:

http://ethereum.org (這個網站有關於如何編寫智能合約,如何上傳,如何寫 APP 的教程和指導);

http://github.com (這個網站則有很多關於以太坊模型工作原理具體技術上的信息等更多信息)。

第一件:以太坊是什麼?

以太坊是一個基於智能合約平台,在分散的互聯網應用基礎之上創建的平台,能對任何比特幣 / 以太幣的付款做編程,也就是說平台通過區域塊鏈可以對全世界不同國家的比特幣以太幣交易平台價格進行對比,一旦發現差價,即從價低的平台買入比特幣和以太坊,轉到價高的平台售出,從中牟取差價利潤,這就是圈內逐漸興起的一種新職業,俗稱 “搬磚” 套利。

採用大型高端雲計算,在全世界幣種交易平台上做空或做多(低吸高拋),在 0.28 毫秒之內完成交易,以浮動交易點無上限做增值,確保每個投資者的分紅增值。我們會員只需要把我們比特幣,以太幣托管給平台來進行交易,不需要任何操作,以太坊平台保證每位會員每月高達 15%--25% 的收益,只要數字貨幣存在,價格又波動,那麼利差空間就永遠存在,就永遠有利可圖高達 15%--25% 的收益,只要數字貨幣存在,價格又波動,那麼利差空間就永遠存在,就永遠有利可圖,大家都知道今年是數字貨幣發展的元年,所以平台的的造血功能和穩定性可想而知。

第二件:公司情況介紹?

公司介紹

公司成立籌備於 2015 年,項目全球啟動於 2016 年。截止到目前,已經在 45 個國家獲得順利推廣,平台我們擁有全球 18 種語言版本,我們客服團隊達到百人,交易員達到千人團隊。在很短的時間,我們成功地展示我們最好的一面,我們的團隊是年輕的,充滿活力的專業人士,並且總是渴望達到目標。現在,我們逐漸掌握複利,通過優質的資產管理服務,我們獲得巨大成功。

我們的平台是借助你的投資與複利進行交易。每月的平均收入為 30%?50%,其中(15-25%)的一半計入投資者。加密數字貨幣市場允許人們獲得更多的利潤,但我們的策略主要是為了資金的安全。

在這裡投資,你投資的是互聯網區塊鏈的未來!我們致力於 Ethereum 平台的全球化普及,推廣其優質的能力和前景,以及資產管理計劃的實施,並獲得通過的加密貨幣交流交易活動獲取經濟利益。

第三件:創始人是誰?

以太坊創始人:Vitalik Buterin

一個誓言用區塊鏈顛覆真實經濟體系的俄羅斯小子,他打造的全新区塊鏈平台,從科技大廠 IBM、三星,到投資銀行巴克萊、瑞士信貸,都爭相借重他的專才。

出生:1994 年

現職:區塊鏈平台「以太坊」創辦人兼首席科學家

學歷:加拿大滑鐵盧大學

獲獎:奧林匹亞資訊獎銅牌、提爾獎學金、2014 年世界科技獎

區塊鏈釋意:區塊鏈是以密碼學演算法和經濟模型組成的分散式帳本。

他開發的加密貨幣,聲勢直逼比特幣,他擊敗 Facebook 創始人 Mark Zuckerberg,獲得 2014 年 IT 軟件類世界技術獎。這個獎項表彰了 Buterin 設計發展比特幣 2.0 平台 Ethereum 的突出成就。

Vitalik Buterin 傳奇故事

1994 年出生於俄羅斯 17 歲開始研究比特幣、創《比特幣雜誌》

18 歲獲得奧林匹亞資訊獎銅牌

19 歲自加拿大滑鐵盧大學休學;該年 11 月,公布《以太坊白皮書》初版,開始募集開發者

20 歲獲得提爾獎學金、成立非營利組織以太坊基金會,在邁阿密的比特幣會議公開發表以太坊計畫,該年 7 月,啟動以太坊計畫眾售募資,募得 3.1 萬枚比特幣(當時約合 1840 萬美元)

21 歲以太坊最初版本 Frontier 問世、以太幣開始在世界各地交易所公開交易

22 歲被《財星》雜誌評選為 2016 年 40 歲以下的 40 大傑出人物

Vitalik Buterin 22 歲黑客顛覆真實經濟體系

今年九月《財星》(Fortune)雜誌的斗大標題,也是全世界區塊鏈專家的熱門話題。

話題圍繞的主角,是年僅 22 歲的 Vitalik Buterin。

他是炙手可熱的區塊鏈平台以太坊(Ethereum)創始人。在一般人剛剛踏出校園的青澀年紀,他卻已經懷抱著改變世界的野心:用區塊鏈,顛覆真實的經濟體系。

現今,全世界有 700 多種以區塊鏈技術為基礎的加密貨幣,而以太方平台自 2015 年 7 月底上線開放,就橫掃虛擬貨幣市場,截至 2016 年 10 月 31 日,以太幣(Ether,維持以太坊平台運作的加密貨幣)的總市值約達 9.44 億美元。

雖與比特幣的 111.8 億美元距離尚遠,但其竄起勢頭之猛烈,仍被各界視為比特幣的頭號競爭對手。

Vitalik Buterin 共吸引逾億美元投資

—— 以太坊與相關應用及其募資金額

以太坊公共區塊鏈平台 ------ 共募資 1840 萬美元

DigixDAO ------ 建立以太坊金本位金融平台,共募資 550 萬美元

Augur ----- 去中心化的市場預測平台,採用以太坊智能合約為基礎共募資 532 萬美元

The DAO ----- 基於以太坊平台的創投組織,投資使用區塊鏈技術的共享經濟計畫共募資 1.32 億美元

第四件:項目發展怎麼樣?

回顧以太坊平台大事件:

2016 年 1 月 1 日,以太坊項目國外發展,全球 40 多個國家啟動,平台 8 種語言。

2016 年 8 月 1 日,以太坊進入中國

2016 年 10 月 22 日,菲律賓見面會

2016 年 10 月 23 日,中國區第一家俱樂部

2016 年 11 月 4 日,越南見面會 2016 年 11 月 7 日,俄羅斯的見面會

2016 年 11 月 13 日,菲律賓慈善現場

2016 年 11 月 18 號,俄羅斯俱樂部開業

2016 年 11 月 24 日,越南第二次會議招商

2016 年 11 月 28 日,馬來西亞見面會

2016 年 12 月 4 日,菲利賓慈善

2016 年 12 月 7 號,俄羅斯在葉卡捷琳堡大俱樂部開幕

2016 年 12 月 17 日,在莫斯科的大會議

2016 年 12 月 17 日,在巴基斯坦球賽

2016 年 12 月 18 日,‪深圳招商會議‬

2017 年 1 月 8 日,馬來西亞第二會議與俱樂部

2017 年 1 月 8 號,第二家中國俱樂部在寧波開幕

2017 年 1 月 15 日,中國區雲南招商會

2017 年 1 月 20 日,冬季促銷獲獎人員合照

2017 年 4 月 10 日,以太坊飛速發展,全球會員數突破 23 萬會員。

2017 年 5 月 21 日,全球會員數突破 30 萬,以太幣突破價格 1000 元。以太坊成為繼比特幣之後,首個千元數字貨幣。加密數字貨幣歷史已經改寫!

2017 年 5 月 21 日,以太坊貿易全球會員突破 427000 會員、並且每天倍增!以太坊價格飆升 3000 元人民幣,企業以太坊聯盟(EEA)新增 86 家成員機構!其中包含:德勤(Deloitte)、DTCC、Infosys、三菱 UFJ 金融集團、加拿大國家銀行、美國道富銀行、豐田、三星 SDS、舊金山證券交易所、華爾街新興技術中心、華爾街區塊鏈聯盟、江蘇華信區塊鏈研究院等。完整成員名單可訪問:https://entethalliance.org/enterprise-ethereum-alliance-release-05-19-2017.pdf

以太坊團隊開發了以太坊貿易,Vitalik Buterin 股東之一。以太坊的發展為以太坊貿易奠定了生生不息的基礎,以太坊貿易團隊向全世界推廣普及以太坊,ETC,ETH 在以太坊貿易推動下短短幾月暴漲數倍

物以類聚、人以群分;某一群人,一定是有共同的價值觀,或共同的目標、愛好等等;這就是共識。簡單地說,就是群眾的力量!共識達到一定的廣泛性和高度,就會形成品牌;品牌的知名度和影響力,也是共識度的折射。品牌代表了共識、價值認知、信用、信任、信心等等。未來是獨角獸的天下,也是品牌之爭的時代。

整個鏈圈在泡沫吹起來後也不斷走火入魔。我看到的最有趣的現象是那些真正擁有技術的團隊一點都不著急,可能和他們融資順利有關,反而是不知道哪裡冒出來的簡歷包裝的無比牛逼但概念全是拼湊甚至邏輯不自洽的團隊

從代碼提交的活躍程度來看,以太坊無疑是開發最活躍的區塊鏈。無論是 GitHub 上的提交數量,存儲庫中星號和分叉的數量,以及開發人員數量,都遠超過比特幣、Ripple、比特幣現金、EOS,以及萊特幣等其他所有加密貨幣。

以太坊是一個開源的區塊鏈底層系統,有點類似區塊鏈版本的安卓,提供 API 與接口讓所有人都能在上面快速開發各種去中心化應用程式(Dapp)。儘管目前區塊鏈在速度與效率上還比不上市場上傳統互聯網,但根據鏈塔智庫統計,截至 2018 年 9 月 30 日,以太坊平台收錄 DApp 已來到 940 個,其中遊戲類 DApp 共有 352 個,占比達 37.5%,竞猜類 DApp 占 20%,交易市場類占 5%,其他類占 37.5%。

簡單來說,以太坊開發社區由外而內、由上層應用項目到底層架構,可以粗略分成三種開發者層次。

最外層是是搭建在以太坊底層架構之上的各種上層應用項目開發。這些開發者或許不直接參與底層架構的技術推進,但仍貢獻了整個社區生態的繁榮。從紅極一時的加密貓(Cryptokitties),到曾經單日吸金上億元的 “資金盤” 遊戲 Fomo 3D,都是架構在以太坊之上的 DApp。

第二層則是來自基金會以外、但同樣投入底層架構的外圍開發人員。由於以由於以太坊是一個完全開源的生態體系,所以世界各地的開發人員只要有興趣,都可以用各種形式參與到底層開發工作當中。以太坊的鏈下擴容解決方案雷電網絡(Raiden Network)即是一例。

最核心的是由創始人 V 神為首的 “以太坊基金會”(The Ethereum Foundation),總部設立在新加坡,目前擁有約 30 余人的研究團隊,分散在世界各地,專職投入底層核心架構的研究與開發。其中有許多都是跟 V 神一樣的 90 後開發者。

為解決加密貨幣必須靠工作量證明機制(PoW),也就是挖礦,從而導致大量能源耗費的問題,以太坊社區近年積極研究如何轉向權益證明機制(PoS)。而分片技術正是以太坊由 PoW 轉向 PoS 機制的關鍵技術。

PoS 機制的一大難點在於如何產生出很好的隨機數,以保證攻擊者無法有效同時嘗試很多隨機數來達到攻擊的目標。而這部分就必須仰賴由 Justin Drake 主導的可驗證延遲函數(VDF)等密碼學,以及特製 ASIC(專用芯片)等硬件研究。

過去幣圈所談的 ASIC 礦機,主要是針對 PoW 計算,目的是快速計算 PoW,搶得區塊生成的優勢。而如今在以太坊所談的 ASIC 則是專門運算 VDF。Justin Drake 的目的是想要設計出一種 ASIC,讓攻擊者無法很簡單地靠性能超越、靠強大算力來破解其隨機數。也就是說,整個網絡被攻破的可能性可以降低到某個幾乎不需要擔心的程度。

以太坊另一個重點方向 Casper 的主要開發人員則是 Danny Ryan。Casper 是以太坊從工作量證明(PoW)過度到權益證明(PoS)機制的關鍵,被期待可以解決節點聯合作惡等 PoS 機制的固有缺點,以順利取代 PoW 機制。

image

目前以太坊在全球約有 14,000 多個節點,分布在世界各地。其中多數節點在美國與歐洲,單是美國節點便占了 43%。而亞洲地區則以中國為最多,占全球節點比重達 13%。

事實上,中國的以太坊社區從很早就開始發展,許多早期以太坊核心開發者都來自中國。但過去一段時間在區塊鏈創業潮爆發下,大陸的以太坊早期成員大量流向各式其它項目,反而是台、港的以太坊核心開發社區生態持續越來越見蓬勃。

以台灣來說,成立 2 年多的台北以太坊社群,包含 V 神本人,以及萊特幣創始人 Charlie Lee 等許多區塊鏈界大咖,都曾經親自參與。另外,目前以太坊基金會的全球開發者團隊約有 30 多人,而其中就有 4、5 個人是來自台灣。

以太坊的開發工作可以簡單分為 4 個流程,依序是研究理論、寫成規格、實作雛形,到實作客戶端。實際上軟件程序的生產當然並沒有那麼簡單,實際運作方式是比較複雜一點,不過在順序上仍不脫先進行研究、寫成規格,接著再做開發與實作。

以太坊基金會除了歡迎外圍開發者義務貢獻外,為號召更多程序員投入解決難度較大的問題,也設有獎勵金。2018 年初迄今,就已經對 52 個項目發出合計高達 1,100 萬美元的獎金。

其中,針對解決以太坊擴展性(scalability)與安全性(security)項目得到了最多獎金與項目的支持。以金額來看,有 61.3%的獎金投入了擴展性的項目,16.8%投入安全性項目。以項目數量來看,有 29.1%是擴展性項目,18.8%是安全性項目。

開發獎金申請流程分為幾個步驟。第一步是提交項目申請。申請者必須具體呈現出對以太坊生態系的承諾、開發能力、開發焦點與進度規劃。同時,也必須呈現出與其它項目的差異化所在。當然,項目必須支持開源。

image

Gavin Wood 在以太坊黃皮書裡給出了非常明確的定義,雖然有一些內容肮髒地讓人匪夷所思,但整體的結構還是很清楚的,看完黃皮書,你大概就知道以太坊不僅具有相當多的革命性創新,還具有可以不斷自我強化的技術壁壘。如果你再看了 vitalik 的紫皮書,你就會明白人家早在你之前在未來的擴展性上有了非常深入的思考。

我下面簡要地跟你們普及一下以太坊的技術亮點,至於那些號稱要顛覆以太坊的項目是不是能做到,你們自行判斷。

無敵的易用性

以太坊的接口設計談不上優雅但非常簡單,協議理解起來也非常容易,雖然從技術的角度上有很多槽點,但這些並不是為了實現 DAPP 的開發者最關心的。你想要做一條更好的鏈,你得先實現:好用的 VM、一套支持開發的語言、參數序列化和反序列化腳本、存儲數據結構模型、leveldb 存儲接口以及線路協議等等。

由於頭部效應,未來會有大量的工具鏈是基於以太坊的,這就讓公鏈上的顛覆變得更加困難。切換主鏈帶來的重置成本非常高。

強大的 EVM

比市面上現有的通用 VM 輕便的多,簡單好用。沒有一大堆的外部依賴。且具有臨時存儲數據並選擇用 stack 或者 memory 的方式,而 stack 和 memory 的大小都不受限制。

我可以預測未來在 EVM 之上還會有大量的高級語言工具鏈將引入更多的如類型,抽象等能力擴展應用的邊界,但對於 EVM 起到的作用,它已經夠了。

從 UTXO 到 Accounts 的實現

這裡先說個別的例子,百度當年由於搜索能力特別強,百度的贴吧用的不是論壇模式,而是關鍵詞索引模式,也就是你進入一個論壇,你看到的一系列帖子是一個搜索的結果而非一個版塊。有時候出了問題時一樓不見了,二三樓都在,所以才有了 “一樓喂熊” 的說法。

UTXO 一度在我眼裡是比特幣的神作,和我們慣性思維相悖,而是從區塊鏈出發通過尋找所有可被用戶簽名的交易,去構建用戶的帳戶餘額體系。同時正因為 UTXO 隊列的存在,比特幣用打包和長短鏈比對很輕鬆地實現了一個防止雙花的技巧。

以太坊用了帳戶體系,用一個 state 的概念簡化了實現的難度以及節省空間,這個取捨其實是很難判斷的,因為每筆交易要額外配置一個 nonce 防止重放攻擊,另外擴展性和隱私保護也有一些槽點。

但不管怎麼說,這個體系艱難地跑了很長時間,直到今天。在我看來,它讓輕客戶端的實現非常的簡單,這對開發者是很有意義的。

Trie 的設計,對輕客戶端友好

以太坊每個區塊頭的三個指針代表了三個核心的樹:狀態、交易、收據。

交易樹比較簡單,收據是一個 RLP 編碼的數據結構,除了索引變得更加簡單,logbloom 的使用也讓輕客戶端使用起來非常方便。

區塊頭的設計和輕客戶端是密切相關的。絕大多數節點並不需要完全同步,但要求訪問數據的便利性。

區塊內的主要數據結構是 MPT,這裡面稀疏區域用 KV 節點。在狀態和帳戶的樹裡,diverge nodes 深度為 64,使用 sha3 (k) 作為 key,非常難以 DOS 攻擊。

目前整個狀態的訪問查詢可以變得更快,全節點的全同步也可以變得很快,但這不在我們今天討論的範圍內。

未來的機會

因為紫皮書帶來了新的方向,我就不再介紹壓縮算法或是 uncle 區塊實現等,紫皮書引入了 POS 機制,更友好的輕客戶端同步實現,計分和測了實現,分片以及跨分片通信等,以太坊不僅在增長,它也有大量的實際業務可以時刻驗證自己的設計,獲取反饋,光是這一點,其他的通用公有鏈是不能吐槽幾句以太坊擴展性就以為自己可以搞定的。

假設你參加了一個聚會,這個聚會參與的共有 23 個人,這 23 個人裡面有兩個人生日是同一天的概率是多少呢?

正確答案是約 50.7%,是不是和你直覺所感受到的不一樣?

這就是著名的生日悖論,我們很容易被容易看見的東西所蒙蔽,並陷入一個自己認為邏輯正確實際卻掉進坑裡的迷局。

為了證明這個概率的真實性,我寫了兩段程序,第二段是一個循環公式,直接計算 365/365 * 364/365 * 363/365 * …… * 343/365,結果跟正確答案一樣。第二段是窮舉 10 萬組每組 23 個生日的數據,跑下來重複的結果為 49.8%,接近正確答案。

意猶未盡的我又跑了一段時間,當人數再多一些的時候,撞上生日的概率已經非常接近於 1。也就是說一個標準國內中小學班級上有兩個人生日相同的概率是非常非常高的。

對於可能的認知偏差,我一貫的做法都像這兩段代碼一樣,先做理論上的分析,再通過實踐數據來論證。

也有一些不僅直覺容易出現偏差,當下也論證不了的東西。就像我的第一篇關於比特幣的微博互動發生在比特幣 20 元的時候,我對於以太坊的 memory hard 如此蹩腳展開抨擊的那篇文章發生在 ETH 0.8 美金一枚的時候。那時候不僅直覺告訴你這個數字遊戲很可能歸零,也沒有人能預料或者推演到後來一發不可收拾的局面。

Ruffchain 誕生的第一天就飽受爭議。甚至這個賽道本身,也是充滿了各式各樣極端化的解讀。我們來不及去解釋,也沒有必要去解釋,如果我是個評論家,我可以每天都找出各式各樣的信息解讀看到的一切並作出一些不負責任的預測。然而我對於 Ruffchain 的設想並不複雜,我的精力和有限的能力也只容許我做到這些:

  1. 1. 做一條好用的公鏈,它會是一個交易和合約分離的,而不是像 ETH 那樣用合約來實現交易,也不是像 BCH 那樣用一條交易來打包一條合約。

  2. 2. 根據接入一些適合的行業客戶的業務數據,形成一站式的解決方案。這樣任何人未來都可以以絕對低廉的成本使用區塊鏈服務。

我曾經多次吐槽過以太坊的技術,但它帶來的低成本低門檻的合約,直到現在還一直保持著智能合約頭把交椅。

這次的開發整整經歷了近兩年的時間,無數次的迭代,對潛在的區塊大小增長的推演和優化,對 p2p 網絡協議的反復調整(未來還要再做一次大升級),工作量比我預計的大地多,在這個過程中我發現了整個行業比我預想地要早期的多,很多基礎技術並沒有很好地被沉澱下來,我們到現在都沒一個隨機讀寫高性能的分佈式數據庫,我們也沒有足夠好用的 p2p 網絡支持未來各式各樣的區塊鏈業務,市場上除了幾條大主鏈的技術迭代升級外,都沒有像樣的可工程化的方案,眾多白皮書中的技術創新在當前的基礎設施下是完全不可用的。

但這也是一個機會,一旦這些技術成熟,我們可見的應用場景也會豐富起來。就像人工智能最火的時候是 1950 年代,但直到後來 GPU 陣列等硬件加速能力起來,再到 FPGA 到 ASIC,我們才有能力將人工智能真正應用到日常的場景中。

關於行業的接入,幸運的是,我們的目標客戶給了我們非常多的支持,甘願當我們的白老鼠,提供了豐富的測試業務數據,並鼓勵我們把技術做好,這代表區塊鏈並非虛需求,這些客戶需要解決多方操作數據的信任關係

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。