本文要點:

· 為什麼選擇區塊鏈?

· 為什麼是聯盟鏈而不是公鏈?

· 如何理解區塊鏈的友好可用?

· 微眾銀行關於跨鏈的研究成果是什麼?

· 隱私技術如何使用?

· 微眾銀行的區塊鏈應用實踐有哪些?

大家晚上好!我是微眾銀行區塊鏈首席架構師張開翔。現在我在微眾銀行負責區塊鏈探索和研究,主要是技術以及開源生態方面。非常感謝萬向區塊鏈蜂巢學院的邀請,今天我分享的主題是《區塊鏈領域的探索和實踐》。

為什麼選擇區塊鏈?

微眾銀行是由騰訊牽頭的國內首家互聯網銀行,成立於2014年,為大眾消費者、小微企業提供線上服務,基本沒有線下網點,所有業務都在線上。

基於此特點,內部IT人員佔比超過整個銀行的一半,這在金融業其實是蠻罕見的,我們是科技創新驅動的銀行。 ABCD(AI、區塊鏈、雲、大數據)都是金融科技非常重要的組成部分,今天我主要聚焦講區塊鏈。

我們的客戶主要在線上,我們服務很多小微企業,這些小微企業以及大眾消費者會分佈在各種各樣的場景、地域,先天具備了非常強的分佈性。銀行的核心系統都是基於X86、刀片式服務器、分佈式系統、Linux、MySQL構建的,不是IOE大型集中架構,本身就是分佈式系統。

要服務跨地域、跨行業的客戶,將他們連接起來,區塊鍊是非常適合的一種技術,因為其分佈式特性,強調高效協作、營造信任。

進入今天的主題,從上圖最下面看,目前我們已經開源在Github上可供大家免費下載使用的代碼項目已經超過60多個,包括底層平台FISCO BCOS,這是我們聯合金鍊盟開源工作組打造的國產開源區塊鏈底層平台。這個底層平台有哪些特性?後面我們展開講。總而言之,這已經是工業可用金融級的區塊鏈開源底層平台。

上面是一些中間件以及通用的方案,比如說WeIdentity是實體身份標識與可信數據交換的解決方案。 WeBASE是圖形化交互式的中間件,存在的使命是極致地降低開發者及使用者的成本,提升用戶體驗。

“跨鏈”是最近幾年比較火的話題,現在已有那麼多聯盟鏈解決方案,如果鍊和鏈之間要互聯起來,數據和價值進行流通,就需要跨鏈技術。

消息協作是面向分佈式消息。物聯網的很多傳感器、設備遍布在各地、各個場景,而且是異構,發出來的數據是小的、及時的、消息型的數據,我們需要有基於區塊鏈的分佈式消息方案來承載。

基於底層通用的解決方案支持一系列的應用落地,應用的場景非常多,稍後我會介紹一些應用場景。

自2015年開始研究區塊鏈,我們的團隊一直在堅持用開源、開放的方式打造擁有自主產權、高性能、高可用性的區塊鏈架構,而且我們開源出來了,寫了很多文檔,有20多萬字。

開源社區的成員(關注者、開發者)有一萬多,大家每天都很活躍,即使現在因為疫情原因沒有辦法面對面交流,但還有很多網友在線關注社區、關注區塊鏈技術。

在B端,社區參與機構有1000多家,應用落地大概有80多個,應用是基於FISCO BCOS以及整體解決方案,已經在生產環境運行了,不是POC或者測試階段,是在真正服務實體經濟行業的。

先講講技術,微眾銀行的定位很清楚,研究區塊鏈技術不是因為它好玩,而是它有用,我們定位是“聯盟鏈基礎設施的建設者”,不是提供商,是建設者,建設底層解決方案、基礎設施的,而且是開源開放。基礎設施要深耕關鍵核心技術,達成安全可控,這也是響應國家號召。

為什麼是聯盟鏈而不是公鏈?

先講最基礎的三個特性:合規、安全、穩定。

1、合規。為什麼做聯盟鏈而沒有做公鏈?因為聯盟鏈可以更好、更合規地服務實體經濟,聯盟鏈不匿名,支持監管,也沒有代幣,重點是要打造分佈式商業的底層環境,讓各方可以高效、安全、對等地協作起來。

2、安全。我們是金融機構,是銀行,對金融來說安全就是“命脈”。安全包含的事情很多:系統安全、合約安全、隱私安全。像合約形式化證明、在線檢測、靜態/動態檢測,這都是保證合約安全的方式,隱私保護也是非常熱的方向。

3、穩定、高可用。作為銀行對自己有要求,系統一年裡停止服務的時間不超過5分鐘,基本做到5個“9”,99.999%的可用性。

達到了三個最基本的要求之後,看加分項:

1、易用。之前很多都覺得區塊鍊是黑科技,門檻很高,區塊鏈怎樣走進千家萬戶,讓所有人可以用起來?易用、友好是最關鍵的目標。

2、高性能。以前都說區塊鍊是最慢的分佈式數據庫,但是基於聯盟鏈、技術研究和突破可以做到單鏈20000多TPS,沒有用多鏈,而且保持秒級出塊,相信性能可以滿足絕大部分實體經濟海量場景要求。

3、擴展性。基於底層平台和一系列解決方案,可以像“搭積木”一樣靈活地支持各種業務場景。

4、可持續。形成一個大家共同維護的開源社區。版本強調兼容,即便是最新的區塊鏈版本,歷史數據也依舊可以穩妥地支持業務。

我們掌握核心技術,做到了三個基本要求,而且也做到加分項。

如何理解友好可用?

第一,觀感。軟件、代碼是漂亮的。記得第一個版本出來的時候有些設計專家說你們做的不錯,但代碼的風格還可以優化一下。我深以為然,所以開源代碼都是以社區高標準代碼風格、代碼質量要求的,包括文檔書寫的板式,這樣才可以使社區擁護者、愛好者、社區朋友比較欣賞。

第二,手感。你用起來順不順暢、舒不舒服?包括帳號管理、系統部署、合約開發與維護是否足夠流暢,這些很重要。

第三,方位感。區塊鍊是很大的體系,單個節點很複雜,有很多配置、很多進程。多節點分佈在網絡裡,網絡的某個地方出了問題,怎麼定位?怎麼調整?怎麼優化?你需要有清晰的方向感,你要知道你在整個網絡的哪個地方,就像導航一樣,對運維的要求非常高。

所以,我們是端到端地為社區、B端的用戶/角色設計軟件,達到閉環的完備性。

我們一位同事發明了一個“15分鐘原則”,用從Github開始獲取開源軟件到最終把鏈跑起來不應該超過15分鐘,如果超過15分鐘用戶就可能流失了。現在有那麼多聯盟鏈,為什麼要用你們的?花了那麼長時間還沒搭起來怎麼用。所以我們極致優化下載速度、搭鏈體系,以及控制台等便捷工具,使得使用者可以快速地幾乎沒有成本地搭起一條鏈來。

在這條鏈跑起來之後,鏈上的真正生產環境中的企業和用戶關注什麼?

1、節點數多。網絡有上百、上千個節點後,還能不能共識?可以的,我們的共識算法可以動態地找到一組共識的節點、記賬者,快速達成秒級的共識。

2、數據量大。如果你的數據很大、交易特別多,每天上百上千萬筆,一定會在鏈上積累很多數據。區塊鏈只能追加,一般不減少、不刪除,數據量大怎麼辦?需要從底層存儲方案壓縮數據,減少數據冗餘度,保證可驗證、安全,同時使得數據可以擴展。數據保證幾年的可用性,還可以把冷數據/舊數據遷移到大的專業海量數據存儲裡,依然可以訪問,留在節點裡的是實時熱數據,保證共識速度、交易速度。

3、帶寬要省。真正做過商業應用的人比較容易理解,帶寬是最貴的,比硬盤、CPU、內存都貴。大家可以看一下10M帶寬和100M帶寬的配製差多少錢。區塊鏈本身就是分佈式同步數據的網絡,要對數據同步的算法、流程、內容做壓縮,比如說原來是星型往外傳播的要變成樹狀的,並且保障最快最高傳播率的同時,極致地壓縮傳播,降低帶寬消耗。

4、隱私要保。

關於跨鏈的研究有哪些?

聊一下跨鏈,“群組”是來自生產實踐的成果,之前有很多用戶業務發展不錯,他們也很積極地使用區塊鏈,接入了很多合作夥伴。如果用傳統聯盟鏈的方式,接入每個合作夥伴肯定要單獨搭一條新鏈,鍊和鏈之間有很多安全、業務層面的需求需要進行隔離。

如果每接入一家都要搭一層鍊或者分配一組服務器、新節點成本會比較高,維護的步驟比較煩瑣。

我們提出了“群組Group”概念,就像微信聊天一樣,裝一個微信,把你的朋友拉入不同的群,群和群之間是互相隔離的,建一個這樣的群是非常容易的,機構之間構建靈活的合作關係非常快同時,不同的合作關係之間信息是不互通的,一定程度上保持隔離和安全。

既然一定程度上保持隔離,但是又有信息要互通怎麼辦?就像有些群的聊天記錄會轉發到另一個群。這就需要用跨鏈了,有同構的跨鏈,也有異構的跨鏈。我們提出了WeCross,抽像出鍊和鏈之間的交易接口、合約接口、用戶權限接口,這都是共通的。

基於共通的接口,設計跨鏈的原語,原語是保證鍊和鏈之間的事務性,一致性、可信性。在此基礎上做不同鏈的插件。比如說這個適配不同的鏈,是可插拔式的平台,使得跨鏈就像“搭積木”一樣把鍊和鏈連接起來,形成鍊網。

跨鏈領域還很新,很多人還在研究,呼籲大家基於開源開放的精神,達成“粗糙的共識,能跑的代碼”,使得鍊和鏈之間聯繫起來,共同維護協議規範,並且用開源的方式服務整個產業。我們期待鍊和鏈融合共通的那一天,也願意做出我們的貢獻。

隱私技術如何使用?

隱私是技術含量很高的領域,底層會用到很多密碼學算法,這是很有意思很值得研究的領域。裡麵包含了各種各樣的密碼學算法,沒有一種密碼學算法可以包打天下,所以我們的方案是根據不同的產品採用不同的密碼學算法進行組合。各種簽名、各種加密、各種證明方式、各種承諾方式、零知識證明、安全多方計算、聯邦學習,這都是有極高技術含量的、技術密度的。

在類型上,我們認為隱私是非常廣的,有人的隱私、機構的隱私。人的隱私有行為隱私、屬性隱私、數據隱私,還要考慮你的數據能不能刪除掉等等。所以隱私保護要講策略,策略包括分層分組,群組模式也是某種場景上保護隱私的可選方案,粒度是機構合作關係層面,其他包括授權使用、最小披露、防止畫像等,都是對個人隱私特別有幫助的策略。

比如別人要看你的身份證,要證明你滿了21歲可以買酒,在國外很常見。你把身份證給別人看的時候,別人可以看到你身份證裡的所有信息,照片、地址、年齡、籍貫。但實際上我只需要證明我滿了21歲而已。可以用密碼學算法、零知識證明,使得數據生成密文證明,密文證明是可以在區塊鏈進行分佈式驗證的,證明我大於21歲,我沒有暴露其他信息,使用者也沒有辦法對我進行畫像,這就是隱私保護的一種策略。

隱私保護可以適配很多場景,支付、投票、競拍、監管等,總之我們有個方案是WeDPR(We Defend Protect Respect),我們尊重隱私,我們保護它,我們防止別人對它進行攻擊,這是我們對隱私保護的理念。

前面說了那麼多比較複雜的要求和方案,怎麼可以真正應用起來?這張圖是我們的中間件WeBASE,是完善的開發、管理、運維、審計工具,是圖形化的。

和大家分享一個故事,2017年我們剛開始研究區塊鏈沒多久,央視來我們這交流採訪,希望拍攝一些區塊鏈相關素材。當時我們打開了後台原始的字符窗口,記者說這個不太好拍呢?我們痛定思痛,做了一套可交互的、圖形化的、用鼠標點點戳戳就可以把鏈建起來的,而且可以看到鏈裡的很多信息,這張圖就是大家都很熟悉的區塊鏈瀏覽器,交易區塊、鏈上狀態都有。

我們還做了開發者工具,可以圖形化調試合約;監控工具,鏈上節點所有關鍵指標都可以展示出來,這是為了運維人員設計的,在B端場景非常有意義。

應用實踐有哪些?

前面分享的都是技術性的,下面我們進入應用場景的分享。

第一,你為什麼用區塊鏈?首先要評估場景是中心化還是多角色、分佈式的,中心化用數據庫就好了,區塊鏈更多服務於分佈式協作的場景。

第二,你是“區塊鏈+”還是“+區塊鏈”,“區塊鏈+”用不好就會把區塊鏈當錘子,看什麼都是釘子,任何難題用區塊鏈都可以解決。再就是現在實體經濟有很大版圖、很大規模,可能也有了可行的運作方式,但是有些痛點需要解決。針對痛點適當巧妙地使用區塊鏈來解決問題,這是目前這階段比較合適的方式。

右邊的圖是我自己在美國拍的,雖然美國這會比較亂,以前祥和陽光明媚的日子還是有的,人們會開上拖車在後面拖小跑車或者吉普去露營。這說明什麼邏輯呢?度假是他的基本需求,度假的時候需要找樂趣就是他的痛點,比如說要用越野車去越野,或者用跑車競速,這時候在後面拖一個小車,看起來很酷,重要的是可以解決痛點,我覺得就是“+區塊鏈”的邏輯。

怎麼“+”?是一層一層的。這個圖看起來很複雜、框架很多,最底下的是區塊鏈可信分佈式網絡。

基礎方案是管理身份,在聯盟鏈裡身份都是可知的,沒有匿名,尤其金融要做KYC,所以要進行分佈式的身份管理,這是很基礎的特性。另外,很多人覺得存證是很簡單的模型。雖然簡單,但是簡單且美,簡單又有用,信息進行存證,尤其還納入可信的機構,像法院、仲裁對信息進行了背書,這樣的信息是可信的,可信的數據就有價值,數據可以共享可以交換,就像資產可以管理和交易一樣,流動起來、計算起來就會產生價值,所以數據的交換和資產管理是區塊鏈領域的核心能力,基於身份管理和信息存證實現了核心能力。

金融業務、社會事務、產業智能都可以應用區塊鏈,每一個產業抽象起來做的事情都是在協作的基礎上解決市場規模、獲客、決策、定價、風控、交易、記賬、監管。以上就是這是分層來看區塊鏈技術怎麼從底層逼近實體行業。

下面我會舉一些例子,我們是怎麼用區塊鏈的?我們是銀行,但大家不要以為我們用區塊鏈就是存款、貸款、記賬。我們是互聯網銀行,會切入很多場景,用區塊鏈連接了很多人、企業,服務了各種各樣的產業。

網貸機構良性推出投票平台

前兩年網貸退出是很熱的問題,但是要良性退出,投資者是可以投票的,比如說社交網絡上投票,就會比較亂,難以收集,而且容易被控票、搗亂。所以我們做的系統首先要做KYC,認證你確實是這個業務的投資人,然後才可以在區塊鏈上投出你的寶貴一票,投票的過程是公平、透明、高效、可追溯的。

加上一些隱私保護特性,投票的時候別的人(非記票人)就不知道您投了多少票、投了誰,可以保証投票人的安全感,但是記票的時候可以通過鏈上的密碼學算法保証投票的結果是對的正確的,而且是所有人都投了或者應該投的人都投了,這就是非常好的社會治理模型,因為投票代表了少數服從多數的群體決策。

騰訊海納智慧社區

這個案例把社會治理的場景用到了社區服務裡,用到了每個人的日常生活裡。物業費本身就是公共賬本,公共賬本的動用應該通過業主同意的,是可監管的。公共賬用區塊鏈分佈式賬本的管理最適合不過了,社區的事務,比如說要不要用物業費修外牆、蓋垃圾房等事情都要用到投票。這和上面說到的退出投票是一個道理。

這個場景已經觸達了很多人的日常生活,可能用的時候覺得感受很好,但是不一定知道下面是區塊鏈,但是底層技術保證了過程的安全、透明、健康。

澳門智慧城市之證書電子化

證書對應了WeIdentity分佈式資產管理,人在區塊鏈上有了可信身份,可以把你的證書、資歷證明掛接到區塊鏈上。系統是分佈的,可以多方接入驗證,解決了你要反复證明“你是你,你媽是你媽”、辦事跑很多部門的“固執問題”。分佈式身份領域前途無量,以後的數字化社會,每個人首先需要有數字化身份,有身份以後可以在數字化身份裡生存。

“人民版權”平台

版權保護是很成熟的區塊鏈場景,現在作品越來越數字化,數字化作品的創作過程、創作結果、都可以在區塊鏈進行登記。鏈上積累的作品多了,作為有形資產、有價資產所以可以交易。版權保護、版權生態發展也可以用區塊鏈實現。

機構間對賬平台

這是我們跑了四年的業務。在金融機構,對賬是很煩瑣很複雜的流程。區塊鏈本身就具備了分佈式賬本的管理,用智能合約達成及時的一致性、事務性,只要用智能合約算過的賬大家都認,肯定能對得平,產生的結果本身就是經過對賬的結果,所以有個術語叫——“交易即對賬”。

這個系統從2016年跑到現在交易數據已經超過了1億筆,證明區塊鏈可以作為金融基礎設施支撐型金融業務。

區塊鏈司法仲裁

存證很常見,甚至我們已經開源了存證的案例在GitHub上,大家都可以拿案例搭自己的存證系統,關鍵在於你能不能接入到一些有公信力、法律背書的機構,使得你的證據具備一定的司法效力。

未來新基建之後的區塊鏈應用是多種技術的組合,區塊鍊是其中的連接器,一個業務是很龐雜的,這是供應鏈業務的模型,我們用了區塊鏈底層,還有很多業務模塊、智能定價、疫情風控、電商、物流倉儲等。為了面向這麼多業務場景會用到OCR、刷臉等技術,用到大數據智能和聯邦學習等。

實體物件和數據要上鍊(可信上鍊)需要用各種各樣的採集方式,有的是用衛星、傳感器、攝像頭、無人機等,運用多維度的採集方式,交叉驗證,原來成本可能很高,但大家想像一下如果在新基建之後物聯網設備越來越普遍,邊際效應越來越強,邊際成本越來越低,是不是可以更好地服務實體世界進行可信上鍊呢?這樣區塊鏈上可以錨定、運作的數據就更多、更可信了。

我個人對區塊鏈、邊緣計算、物聯網的融合很感興趣,這是我們已經在使用的方案,左邊是各種各樣的場景,家居、城市管理的等,經過IoT網關、邊緣計算的處理接入到區塊鏈,區塊鏈可能運作在雲上、或在邊緣設備上,通過大數據、雲計算、AI等篩選出各種各樣的有效數據和規則,規則有可能是風控的,有可能是精準營銷的,可以服務很多商業場景。

科技向善,用區塊鏈優化社會治理體系,我們認為區塊鏈可以記錄人的公益行為、慈善行為、向善行為,並且可以幫助完成企業社會責任,對善行進行激勵。使得社會向善成為正向循環,做好事可以得到激勵、善度。

我們攜手北京環境交易所北京綠普惠網絡科技有限公司推出了綠色出行普惠平台。平台會記錄出行情況,根據出行記錄發放積分,比如,你有車但申請停駛去坐地鐵,你的車停駛一天就會得到相應的積分,這對環保、城市生態、能源都有好處。

目前基於FISCO BCOS的應用場景,有一些是我們自己開發的應用,更多的來自於社區,FISCO BCOS開源社區聚集了來自於各行各業開發者與行業人士。

每個行業都有基本的規則,醫療有醫療的規則,文化有文化的規則,金融有金融的規則。我們作為基礎設施建設者,希望用區塊鏈底層技術提供好用的基礎設施,大家使用設施創造性地服務不同的實體行業,這樣整個生態才是蓬勃發展、覆蓋面很廣的,是可以服務各種各樣實體行業的。

通過多年的努力可以使區塊鏈建設成本降到極低,我們做區塊鏈已經五年,如果從頭做區塊鏈底層平台,構建整體解決方案也需要花比較長的時間。但是用現有的免費開源軟件,可以使得建設速度、開發速度更快、運維成本更低,可以有更多的時間精力考慮行業規則、擴大規模和細化運營,從而加速產業落地。

做技術、做應用的時候要覆蓋整個項目的周期,項目週期是要安全可控、合規的。從一開始分佈式身份管理、KYC,到合規的資產發行,不是憑空創造出來的空氣資產。鏈上有多方對資產進行確權、定價、撮合,然後在區塊鏈上進行快速交易和流轉,進行穩妥的清結算、承兌、貿易融資,比如供應鏈更多是用合規、穩健、可信的資產進行融資和流轉。還要支持監管、審計、仲裁。這是我們對整個資產、價值流通的生命週期的理解,基礎設施要對應到整個生命週期,是閉環端到端的。

最後總結一下,我們現在努力的三個要點:

1、技術硬核,用技術解決基礎設施各種各樣的挑戰,並且做到安全可控。

2、廣泛開源,希望社區、行業一起共同建設基礎設施、建設跨鏈、推進應用落地。

3、善良規範,運作善良規範,這樣生態才具備可持續性和好的口碑。