蚂蚁区块链平台BaaS技术解析与实践
摘要: 以“數(shù)字金融新原力(The New Force of Digital Finance)”為主題,螞蟻金服ATEC城市峰會于2019年1月4日在上海如期舉辦。在ATEC區(qū)塊鏈行業(yè)研討會分論壇上,螞蟻金服區(qū)塊鏈BaaS技術(shù)總監(jiān)李書博做了主題為《BaaS入門到精通:區(qū)塊鏈技術(shù)如此簡單》的精彩分享。
演講中,李書博首先從技術(shù)方面介紹了螞蟻區(qū)塊鏈BaaS平臺,隨后從實踐的角度介紹了客戶如何快速地實現(xiàn)上鏈,最后帶領(lǐng)大家一起詳細地了解了平臺的合作服務(wù)流程。
李書博 螞蟻金服區(qū)塊鏈BaaS技術(shù)總監(jiān)
本次直播視頻精彩回顧,戳這里!
以下內(nèi)容根據(jù)演講嘉賓視頻分享以及PPT整理而成。
本次的分享主要圍繞以下三個方面:
一、螞蟻區(qū)塊鏈BaaS平臺的技術(shù)方面
二、螞蟻區(qū)塊鏈BaaS平臺的實踐方面
三、螞蟻區(qū)塊鏈BaaS平臺的合作流程方面
一、螞蟻區(qū)塊鏈BaaS平臺的技術(shù)方面
螞蟻區(qū)塊鏈BaaS支撐了眾多的區(qū)塊鏈業(yè)務(wù)場景和上鏈數(shù)據(jù)流量,其平臺背后必然擁有著難以想象的黑科技和先進技術(shù)。那么BaaS平臺究竟是什么呢?這個問題可以從三個方面進行回答。
首先,它是一個開放式平臺。有別于單一的區(qū)塊鏈技術(shù),螞蟻區(qū)塊鏈BaaS平臺是基于云平臺開放的區(qū)塊鏈技術(shù),這樣做有兩個方面的好處:
1、可以充分利用云計算本身的彈性、高可用性和靈活性;
2、又能充分發(fā)揮區(qū)塊鏈本身的信任基礎(chǔ)設(shè)施的能力,比如多方共識、不可篡改、可信。
其次,BaaS通過云服務(wù)輸出,有三方面的特點:
1、它可以作為一種云服務(wù)的方式進行輸出,這樣用戶可以根據(jù)實際需要來選擇;
2、它可以快速地實現(xiàn)部署使用,從而節(jié)省了用戶寶貴的時間;
3、它可以使用戶在業(yè)務(wù)上和應(yīng)用上的投入成本達到最小化。借助于BaaS的便捷性和可用性,各種行業(yè)的場景和區(qū)塊鏈可以進行有效地結(jié)合。這樣,BaaS就變成一個區(qū)塊鏈在各行業(yè)解決方案的基礎(chǔ)設(shè)施,成為了一個可靠的扎實的信任基礎(chǔ)。
BaaS平臺希望與合作伙伴一起構(gòu)建出一個開放的生態(tài)。螞蟻區(qū)塊鏈的核心技術(shù)在2017、2018連續(xù)兩年都是全球?qū)@琶谝?#xff0c;這些核心技術(shù)也將秉承著“共享”和“賦能”的理念分享給大家,讓大家可以充分利用螞蟻區(qū)塊鏈上的核心技術(shù):如多種隱私安全的解決方案,包括密碼學方案及物理隔離的方案,通過高強度的隱私保護,保證用戶的業(yè)務(wù)和隱私安全。此外,平臺支持靈活可定制的商業(yè)應(yīng)用,用戶可以簡單易用地使用區(qū)塊鏈技術(shù)和BaaS服務(wù)。
螞蟻區(qū)塊鏈的定位是企業(yè)級的聯(lián)盟鏈,如下圖所示,它的主要目的是去賦能實體經(jīng)濟,為實際的業(yè)務(wù)和應(yīng)用賦能。
在企業(yè)級的聯(lián)盟鏈場景下,螞蟻區(qū)塊鏈BaaS的功能包括以下幾個方面:
1、聯(lián)盟鏈管理。聯(lián)盟鏈的創(chuàng)建以及聯(lián)盟鏈的聯(lián)盟組織的管理,是BaaS的一個基本能力;
2、身份認證。對于聯(lián)盟鏈的每一個參與的企業(yè),都有認證。平臺會頒發(fā)證書來幫助用戶認證自己在聯(lián)盟鏈上的身份;
3、自動化部署。整個平臺對于區(qū)塊鏈采用自動化部署的方式。這種方式可以非常快的以低成本方式迅速部署區(qū)塊鏈平臺,讓用戶迅速地擁有自己的區(qū)塊鏈;
4、區(qū)塊鏈能力。螞蟻區(qū)塊鏈技術(shù)能力的輸出目前主要在兩個方面,一方面是存證平臺,針對區(qū)塊鏈的存證場景實現(xiàn)一個在性能上的優(yōu)化的區(qū)塊鏈平臺。另一方面是智能合約平臺,提供可編程的智能合約運行環(huán)境的區(qū)塊鏈平臺;
5、業(yè)務(wù)配置。在業(yè)務(wù)配置中,對于不同的場景,不同的業(yè)務(wù),其數(shù)據(jù)的配置和屬性都是完全不同的,區(qū)塊鏈也對這方面的靈活性提出了更多的要求。在業(yè)務(wù)配置方面,通過平臺提供了數(shù)據(jù)配置能力來幫助大家配置面向業(yè)務(wù)的語義;
6、開發(fā)支持。區(qū)塊鏈對于各個場景的應(yīng)用都需要創(chuàng)新,也需要技術(shù)上的開發(fā)。平臺會提供完備的技術(shù)開發(fā)相關(guān)組件,幫助用戶落地最佳實踐,拓展更多場景。
從平臺優(yōu)勢來看,螞蟻區(qū)塊鏈BaaS有五大優(yōu)勢:
1、性能高、高可靠性。不僅有存證場景的兩萬五TPS的處理能力,平臺也有高可靠和高容錯;
2、信任隱私保護。平臺不僅在區(qū)塊鏈層實現(xiàn)了非常高的隱私保護能力,在BaaS服務(wù)層也提供了相應(yīng)的對于企業(yè)身份的認證的能力;
3、簡單易用。減少區(qū)塊鏈投入的成本,減少區(qū)塊鏈使用的門檻,使用戶不需要了解區(qū)塊鏈很深的細節(jié)也能利用區(qū)塊鏈的能力賦能應(yīng)用業(yè)務(wù);
4、跨網(wǎng)絡(luò)。區(qū)塊鏈有一個相對來說深入人心的特點——去中心化。BaaS在跨網(wǎng)絡(luò)、跨不同云的平臺上以及跨公有云和用戶IT環(huán)境的場景下,提供了相應(yīng)的支撐和自動化的部署能力;
5、云上的網(wǎng)絡(luò)安全。平臺充分利用了阿里云和螞蟻金融云這樣的金融級的云平臺能力(如VPC網(wǎng)絡(luò))來保證區(qū)塊鏈網(wǎng)絡(luò)安全。
下圖是螞蟻區(qū)塊鏈BaaS技術(shù)框架圖,其架構(gòu)主要分為三層:
1、底層是基礎(chǔ)底座 BaaS Core,基于對主機以及容器實現(xiàn)了靈活支持的云平臺,實現(xiàn)跨平臺的靈活運行和部署。對于可信硬件,即基于阿里云的神龍服務(wù)器提供相應(yīng)的硬件服務(wù),可以提供一個高可靠高隱私保護的TEE。除了最早推出的存證平臺以外,還會逐步推出智能合約平臺以及跨鏈服務(wù)。在區(qū)塊鏈的未來中,單鏈或者一條鏈存在自身的局限性,未來對于區(qū)塊鏈建立信任的基礎(chǔ)設(shè)施、信任的生態(tài),跨鏈技術(shù)將成為其中非常重要的一環(huán)。目前BaaS平臺上也正在對跨鏈服務(wù)做相應(yīng)的支撐,通過跨鏈服務(wù),平臺實現(xiàn)了內(nèi)部的互聯(lián)互通,同時也可以通過智能合約和跨鏈服務(wù)對于外部的互聯(lián)網(wǎng)上的可信數(shù)據(jù)源進行訪問。而且BaaS平臺各方面的能力,從管理層面、安全隱私層面、證書、密鑰、部署方面都有相應(yīng)的功能和支撐。
2、向上一層 BaaS Plus,把底層的服務(wù)和能力封裝、服務(wù)化,開放為標準化的接口,提供給合作伙伴們一起來接入和使用。這樣用戶在基礎(chǔ)資源上的投入可以大大減少,同時接入業(yè)務(wù)的耗時也會大大降低。截止到目前為止,平臺已經(jīng)推出了可信存證、可信時間、通用溯源等服務(wù),也會在未來逐步推出像用戶連接、安全可靠的云上密鑰管理以及實名認證和應(yīng)用管理等服務(wù)。
3、再向上,螞蟻區(qū)塊鏈實現(xiàn)了幾十個應(yīng)用場景。在應(yīng)用場景落地的實際應(yīng)用都會沉淀形成一層標準的應(yīng)用解決方案模板,從而方便用戶在自己的應(yīng)用中借鑒其它類似場景的平臺能力。
二、螞蟻區(qū)塊鏈BaaS平臺的實踐方面
在上文中主要介紹了螞蟻區(qū)塊鏈BaaS平臺的技術(shù)方面,接下來將從實踐的方面來介紹如何使用BaaS平臺迅速地把應(yīng)用接入?yún)^(qū)塊鏈,即迅速地實現(xiàn)業(yè)務(wù)上鏈。從使用場景和流程上來看,會涉及到兩類角色,如下圖所示:
1、聯(lián)盟成員。聯(lián)盟成員可以申請加入?yún)^(qū)塊鏈,從平臺獲取身份和認證的證書。用戶進而會得到開發(fā)的組件,去開發(fā)自己的應(yīng)用,同時平臺會向用戶提供整個區(qū)塊鏈瀏覽器和運行狀態(tài)監(jiān)控。
2、聯(lián)盟管理員。它擁有較大的權(quán)限,可以創(chuàng)建一個聯(lián)盟鏈,也可以創(chuàng)建一個新的聯(lián)盟,還可以管理邀請聯(lián)盟成員(例如邀請其他的合作企業(yè)加入到自己的聯(lián)盟、審核申請等)。
平臺在產(chǎn)品的設(shè)計上更簡單易用,如下圖所示。在初次使用時,平臺會提供一個新手引導和開放的測試體驗鏈,這樣便于剛剛注冊的用戶去了解區(qū)塊鏈。當用戶有了一些基礎(chǔ)方面的能力、或者對螞蟻區(qū)塊鏈的聯(lián)盟鏈以及組織方式有了一定程度的了解之后,就可以創(chuàng)建組建自己的聯(lián)盟、創(chuàng)建屬于自己的聯(lián)盟鏈,同時可以在此基礎(chǔ)上開發(fā)相應(yīng)的應(yīng)用和服務(wù),并能在整個聯(lián)盟內(nèi)部進行分享。新手引導中只包含幾步:
1、生成個人身份。由于平臺不會保存用戶的私鑰,用戶可以放心地把公鑰上傳到平臺上面來,并下載認證的證書;
2、訪問新手引導的測試體驗鏈。用戶借此可以快速看到螞蟻區(qū)塊鏈的全貌,通過瀏覽器了解平臺的運行情況和交易的數(shù)目,運行示例代碼向平臺發(fā)起交易。
那么螞蟻區(qū)塊鏈BaaS平臺提供什么樣的鏈呢?下圖所示是螞蟻區(qū)塊鏈整個框架和架構(gòu)。具體分成三類,分別是存證平臺、合約平臺和跨鏈平臺。在平臺底層有虛擬機進行支撐。往上包括智能合約方面的設(shè)計、密碼學安全和隱私保護,都有相應(yīng)的自研的核心技術(shù)。再向上對于整個聯(lián)盟的系統(tǒng)治理、合約開發(fā)的工具,從模板、系統(tǒng)合約以及各類的合約,螞蟻區(qū)塊鏈都有很好的支撐。依托螞蟻金服的生態(tài),與多方安全計算、IoT等結(jié)合,提供更加多樣化的服務(wù)。
接下來的一個步驟是組建聯(lián)盟。對于用戶而言,如何從無到有地組建一個聯(lián)盟呢?事實上,用戶可以通過平臺創(chuàng)建多個聯(lián)盟,通過聯(lián)盟管理每個聯(lián)盟企業(yè)。同時對于聯(lián)盟有管理權(quán)限的鏈進行環(huán)境配置,也就是由聯(lián)盟的管理者進行配置和管理。用戶組建好自己的聯(lián)盟之后,就可以創(chuàng)建聯(lián)盟內(nèi)部的鏈,可以是多條鏈。區(qū)塊鏈的應(yīng)用與任何行業(yè)的應(yīng)用都是類似的,包括生產(chǎn)環(huán)境下的、測試環(huán)境下的、QA環(huán)境下的、開發(fā)環(huán)境下的。同樣對于鏈的目的來說,有的是為了開發(fā)、有的是為了測試、有的是為了生產(chǎn)。基于這個考慮,在一個聯(lián)盟內(nèi)會提供給用戶不同的鏈。
當用戶創(chuàng)建鏈以后,可以完成對鏈的基礎(chǔ)規(guī)格選擇,不同的規(guī)格也支持不同的性能。用戶通過平臺完成創(chuàng)建鏈之后,可以申請加入這個鏈,同時下載各個組件和工具。當基礎(chǔ)資源以及聯(lián)盟完成創(chuàng)建以后,最核心的、也是最重要的一步是開發(fā)應(yīng)用,而這也是大家使用區(qū)塊鏈的目的。
對于應(yīng)用來講,具體包括三個層面的工作,如下圖所示:
1、開發(fā)智能合約,由智能合約去實現(xiàn)應(yīng)用的核心功能,即鏈上的邏輯;
2、開發(fā)業(yè)務(wù)應(yīng)用去對接區(qū)塊鏈服務(wù);
3、當用戶開發(fā)完業(yè)務(wù)應(yīng)用以后,會希望應(yīng)用在聯(lián)盟內(nèi)進行一個分享。對于區(qū)塊鏈而言,可以是一個聯(lián)盟機構(gòu)組織創(chuàng)建一個應(yīng)用,然后通過平臺的進行應(yīng)用分享,從而可以讓更多的聯(lián)盟參與者迅速地利用或者使用這種應(yīng)用模式,進而構(gòu)建出自己的業(yè)務(wù)和服務(wù)。
在平臺中有兩類最佳的實踐,一類是智能合約,一類是存證服務(wù)。平臺提供了輕量級的客戶端,用戶能夠通過SDK或者REST迅速接入?yún)^(qū)塊鏈的智能合約層或者訪問區(qū)塊鏈平臺。對于存證服務(wù),平臺提供了相應(yīng)的業(yè)務(wù)視圖,可以作為傳統(tǒng)應(yīng)用和區(qū)塊鏈存證服務(wù)之間的緩存,也可以進行線下的數(shù)據(jù)分析。
其中區(qū)塊鏈存證接口的模型結(jié)構(gòu)如下圖所示。區(qū)塊鏈存證的結(jié)構(gòu)十分基礎(chǔ)和簡單,但它卻具有非常廣泛的應(yīng)用范圍,在雙11的時候,基于區(qū)塊鏈的溯源服務(wù)能夠支撐1.5億的商品流轉(zhuǎn),因此區(qū)塊鏈存證賦能的溯源業(yè)務(wù)也能夠體現(xiàn)區(qū)塊鏈存證的強大能力。具體來說,存證服務(wù)可以分為兩類,一類是明文存證,一類是隱私存證。對于鏈上的數(shù)據(jù)加密,平臺推薦使用一次一密的模式,這種方式既保證了加密的安全性,也有非常好的性能。
而業(yè)務(wù)數(shù)據(jù)格式接口如下圖所示,對于不同場景的應(yīng)用,其業(yè)務(wù)數(shù)據(jù)格式也不一樣。尤其是在聯(lián)盟內(nèi),用戶需要進行協(xié)商,以達成一致的配置。而平臺對此提供了非常簡單的配置能力,方便用戶的數(shù)據(jù)在鏈上進行有效的流轉(zhuǎn)。
除了以上的能力以外,在存儲方面,平臺充分和阿里云和金融云的存儲能力。對于不同類型的數(shù)據(jù)采用NAS,云盤或本地磁盤提供存儲。在安全上,除了傳輸層的安全,所有傳輸層網(wǎng)絡(luò)層都實現(xiàn)雙向的加密;對于數(shù)據(jù)層的安全和賬本層的應(yīng)用也有很好的支持,可以通過智能合約對數(shù)據(jù)進行加密。
三、螞蟻區(qū)塊鏈BaaS平臺的合作流程方面
對于合作的服務(wù)和流程,從需求對接包括方案的設(shè)計,開發(fā)、實踐以及測試生產(chǎn)環(huán)節(jié)的搭建到最終業(yè)務(wù)的上線,總共預計有三個月的時間,其具體流程如下圖所示。
倘若對于一些標準場景和已經(jīng)有最佳實踐的標準案例,所花費的時間將會大大縮短。在本次區(qū)塊鏈創(chuàng)新大賽上也會通過螞蟻區(qū)塊鏈BaaS提供豐富的區(qū)塊鏈能力,希望能與大家一起來共創(chuàng)區(qū)塊鏈的未來!
點擊,查看更多詳情
總結(jié)
以上是生活随笔為你收集整理的蚂蚁区块链平台BaaS技术解析与实践的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Kitty用HTML和css咋做,使用C
- 下一篇: 如何在REST API中使用查阅项的值作