本文介紹了一些區(qū)塊鏈原理性的使用案例,并概括了其基本要求及高層架構(gòu)。區(qū)塊鏈技術(shù)在不斷演變中,Hyperledger 的設(shè)計正運(yùn)用了這項技術(shù)構(gòu)架。在相同網(wǎng)絡(luò)的企業(yè)競爭合作中,Hyperledger 作為商對商(B2B) 、商對客(B2C)的一種交易協(xié)議,既符合規(guī)章制度,又能夠支持各類要求的實(shí)現(xiàn)。其設(shè)計(下面會詳述)的核心元素是智能合約(又稱鏈上代碼)、數(shù)字資產(chǎn)、記錄儲存庫、中心化共識網(wǎng)絡(luò)、加密安全。此外,區(qū)塊鏈主要產(chǎn)品還涉及行業(yè)性能要求、身份識別、私下機(jī)密交易、以及便攜式共識模型等。
背景
區(qū)塊鏈?zhǔn)?種新興技術(shù),它能夠徹底改變?nèi)谫Y、供應(yīng)鏈、及其他交易網(wǎng)絡(luò),為創(chuàng)新與發(fā)展帶去新的機(jī)遇,同時還能減少運(yùn)營成本,降低風(fēng)險。自2009年來比特幣在交易領(lǐng)域迅速崛起,許多企業(yè)及行業(yè)投入了大量資源來研究其底層技術(shù),從而傳播這廣受歡迎但又頗具爭議的加密幣。
區(qū)塊鏈?zhǔn)且环N點(diǎn)對點(diǎn)分布式賬本技術(shù),它是第一-個在金融領(lǐng)域獲得動力的技術(shù),因為它能夠有效而安全地發(fā)行、交易、管理、服務(wù)資產(chǎn)。在記錄系統(tǒng)(SoR)范圍內(nèi),生態(tài)系統(tǒng)中的每一位成員都需要維護(hù)好自己的賬本系統(tǒng),并審核與其他成員的交易進(jìn)展,這個過程既低效,又昂貴,而且沒有內(nèi)部組織操作流標(biāo)準(zhǔn)。而分布式賬本則完全不同,它能夠減少成本,使業(yè)務(wù)網(wǎng)絡(luò)的建立更加容易,并且不再需要提供中心點(diǎn)控制。
由于共享賬本概念在商業(yè)領(lǐng)域越來越受關(guān)注,區(qū)塊鏈智能合約也因此引起了人們的注意。智能合約是各種商業(yè)規(guī)則的集合,它在區(qū)塊鏈上運(yùn)行,由一組利益相關(guān)方共有并進(jìn)行驗證。智能合約在商業(yè)自動化進(jìn)程中非常管用,而且誠信可靠,它能夠使利益相關(guān)方以團(tuán)體形式處理并驗證合約條款。Hyperledger就是采用鏈上代碼(chaincode) 執(zhí)行智能合約的。
比特幣及其他加密幣的開發(fā)就是用來對抗任何形式的審查的一任何人都能參與,而且不需要建立身份,只要貢獻(xiàn)一點(diǎn)時間來完成運(yùn)算周期就行。在比特幣區(qū)塊鏈模型中,沒有中心機(jī)構(gòu)來發(fā)放許可,因為這些網(wǎng)絡(luò)是非授權(quán)的。他們要進(jìn)行無數(shù)工作量證明運(yùn)算,成本非常高。
Hyperledger對傳統(tǒng)區(qū)塊鏈模型進(jìn)行了革新,其中包括管理參與者的訪問許可權(quán)。換句話說,Hyperledger 是有權(quán)限的共享賬本。Hyperledger為身份識別、審核及隱私提供了一個安全、健康的模型,從而縮短運(yùn)算周期,實(shí)現(xiàn)有效擴(kuò)展,應(yīng)對業(yè)內(nèi)各種運(yùn)用要求。
進(jìn)入2016年,關(guān)于區(qū)塊鏈的認(rèn)識越來越多,研究出一個適用且可擴(kuò)展的解?決方案變得日益緊迫。
為什么是一個新構(gòu)架
作為一項剛開發(fā)的技術(shù),區(qū)塊鏈還不能滿足商業(yè)交易中各類復(fù)雜要求。其可擴(kuò)展性還存在問題,也不能支持私下機(jī)密交易,這些限制都使其難以在眾多以業(yè)務(wù)為主的應(yīng)用程序中運(yùn)行自如。為了應(yīng)對各種各樣的市場需求,Hyperledger的設(shè)計以產(chǎn)業(yè)應(yīng)用為重點(diǎn),解決了現(xiàn)有缺點(diǎn),擴(kuò)展了業(yè)內(nèi)先行者原有的功能。
我們的設(shè)想
我們設(shè)想了區(qū)塊鏈技術(shù)會為現(xiàn)代商業(yè)交易帶來的革新與改變,分析了業(yè)內(nèi)的使用案例及密鑰要求,設(shè)計并建立了一套系統(tǒng)來推動區(qū)塊鏈技術(shù)的廣泛運(yùn)用。
一個涵蓋眾多網(wǎng)絡(luò)的世界
我們希望能夠出現(xiàn)眾多區(qū)塊鏈網(wǎng)絡(luò),使每個網(wǎng)絡(luò)賬本都能執(zhí)行不同的業(yè)務(wù)?;谶@一期望,我們開發(fā)了Hyperledger?,F(xiàn)在單一普遍的通用網(wǎng)絡(luò)或許已經(jīng)出現(xiàn),但是要想網(wǎng)絡(luò)賬本核心功能的運(yùn)行依靠其他網(wǎng)絡(luò)來完成,還尚未有實(shí)例。Hyperledger除了能夠?qū)崿F(xiàn)這種網(wǎng)絡(luò)獨(dú)立運(yùn)行之外,它還有一個尋址系統(tǒng),能夠通過一個賬本的交易,發(fā)現(xiàn)并利用另一賬本中的正當(dāng)交易與智能合約(鏈上代碼chaincode)。
對網(wǎng)絡(luò)權(quán)限的需求日益增加
有權(quán)限的網(wǎng)絡(luò)是通過已知白名單組織來運(yùn)行驗證與非驗證節(jié)點(diǎn)的,由網(wǎng)絡(luò)發(fā)行機(jī)關(guān)來授予交易者一個識別身份。發(fā)行機(jī)關(guān)根據(jù)網(wǎng)絡(luò)的目的來確定適當(dāng)?shù)脑L問權(quán)限,而這種權(quán)限需要進(jìn)行身份識別,然后才能在網(wǎng)絡(luò)進(jìn)行交易。這一網(wǎng)絡(luò)能夠公開運(yùn)行,并且很容易就能融入到移動應(yīng)用。它也能完全私下運(yùn)行,受邀參與者只有通過驗證,才能獲悉其情況。因為Hyperledger構(gòu)架的設(shè)計符合各種目的,能夠允許各網(wǎng)絡(luò)之間互相訪問,而且其協(xié)議也能夠滿足各類使用要求,并且還設(shè)有不同級別的權(quán)限。
隱私及機(jī)密的重要性
我們相信任何區(qū)塊鏈構(gòu)架都有一個基本要求,那就是網(wǎng)絡(luò)上任何一方的身份及行為模式,都不能允許未經(jīng)授權(quán)的人通過賬本來打探情況。我們也希望能夠保證區(qū)塊鏈用戶的業(yè)務(wù)邏輯及其他交易參數(shù)的機(jī)密性,做到除了合約涉及的利益相關(guān)方或交易中的資產(chǎn),沒有人能夠訪問這些數(shù)據(jù)。
行業(yè)用例
我們編寫了一套區(qū)塊鏈初步要求,這些對接下來介紹的使用案例來說至關(guān)重要。
(注:下述用例能推動指導(dǎo)架構(gòu)及測試驅(qū)動的開發(fā)。這些案例雖然還在發(fā)展中,但是所有參與者都應(yīng)該認(rèn)同其內(nèi)容及技術(shù)層次的優(yōu)先順序。如果您覺得哪里不盡人意,就可以提出進(jìn)行改變。請不要超過四個抽象用例,最好是三個。)
商務(wù)合同
商務(wù)合同能夠通過編碼,使雙方或更多參與者自動執(zhí)行合約條款,并且保證誠信。雖然區(qū)塊鏈上的信息本質(zhì)上是公開的,但是商對商合約要求具備隱私保護(hù)的機(jī)制,來保護(hù)敏感的商業(yè)信息,防止信息泄露給同樣能夠訪問賬本的外部人員。
雖然說保密協(xié)議對商業(yè)案例來說很重要,但是也有很多場合需要也應(yīng)該做到合約公開,從而保證賬本上所有人員都能輕松獲取消息:比如,用來確定報價以供競標(biāo)的賬本。這種合約就需要標(biāo)準(zhǔn)化,這樣競標(biāo)人就可以很快獲取信息。
資產(chǎn)存管
金融證券之類的資產(chǎn)必須在區(qū)塊鏈網(wǎng)絡(luò)上實(shí)現(xiàn)去中心化,這樣所有同種資產(chǎn)的利益相關(guān)方就能直接訪問每一資產(chǎn),從而發(fā)起交易,獲取相關(guān)信息,而不再需要通過層層中間人來進(jìn)行了。交易基本實(shí)現(xiàn)實(shí)時結(jié)算,而且也必須保證所有利益相關(guān)方能夠?qū)崟r掌握資產(chǎn)情況。對任何資產(chǎn)種類,利益相關(guān)方都應(yīng)有權(quán)增加商務(wù)規(guī)則,這樣也能通過自動化邏輯應(yīng)用來減少運(yùn)營成本。創(chuàng)造資產(chǎn)的人必須像用例保證的那樣,實(shí)現(xiàn)資產(chǎn)及相關(guān)交易規(guī)則保密或者公開。
供應(yīng)鏈
區(qū)塊鏈框架必須保證每一位供應(yīng)鏈網(wǎng)絡(luò)中的參與者都能夠:輸入并追蹤原材料來源;記錄部件生產(chǎn)的遙測數(shù)據(jù);追蹤航運(yùn)商品的出處;保證包括成品生產(chǎn)、貯存、銷售及后續(xù)事宜在內(nèi)的所有記錄都不可改變。除了之前描述過的商務(wù)合約及資產(chǎn)存管模式,供應(yīng)鏈這一用例更多強(qiáng)調(diào)的是其深度搜索性,保證可以在過去層層交易中追溯所需記錄。其核心是為每一個從其他組件品中制造出來的商品創(chuàng)建出處。
特色要求
下面提到的特色要求以健全產(chǎn)業(yè)的用例為基礎(chǔ),推動了Hyperledger構(gòu)架的開發(fā)。這些要求包括身份識別與可審核性、私下交易、保密合約、模塊共識、性能績效、可擴(kuò)展性、鏈上代碼( chaincode)以及智能合約。
身份識別與可審核性
交易的隱私性固然重要,但是區(qū)塊鏈商業(yè)用途也要遵守--定的規(guī)章制度,使監(jiān)管方能夠訪問調(diào)查交易記錄。事后(有時得好幾年后)交易一方必須提供身份識別以及資產(chǎn)所有權(quán),在沒有機(jī)制的情況下,通過身份識別來確定當(dāng)事人身份以及其在賬本上的活動。
于是Hyperledger協(xié)議順勢而生,它在注冊機(jī)關(guān)登記了一個加密證書,從而鎖定用戶的機(jī)密數(shù)據(jù)。注冊機(jī)關(guān)能夠發(fā)布并撤銷網(wǎng)絡(luò)參與者的身份驗證。針對每一個身份,協(xié)議都會生成一個秘鑰,供成員在網(wǎng)絡(luò)上進(jìn)行交易,而且不會透露交易方的身份,保障網(wǎng)絡(luò)隱私。
私下交易及保密合約
如果交易模式能夠進(jìn)行公開觀察與分析,那么共享賬本就會泄露商業(yè)關(guān)系的細(xì)節(jié),而這些細(xì)節(jié)本不應(yīng)透露給競爭者的。供應(yīng)方或買方的圈子本來就小,支持雙方貿(mào)易的系統(tǒng)就更不應(yīng)該泄露任何一方的交易情況。因此,運(yùn)用于商業(yè)活動的區(qū)塊鏈就必須提供一個機(jī)制,來保證未授權(quán)的第三方不能獲悉有關(guān)身份、交易模式、以及保密合約等條款。
Hyperledger可以通過加密交易來保證其內(nèi)容的機(jī)密性,只有利益相關(guān)方能夠?qū)ζ溥M(jìn)行解密并執(zhí)行。此外,業(yè)務(wù)邏輯(通過智能合約來實(shí)現(xiàn))也做了加密處理來確保安全(如果利益相關(guān)方要求機(jī)密的話),并且只有在運(yùn)行的時候才能加載、破解。關(guān)于這一點(diǎn),會在之后架構(gòu)部分詳細(xì)闡明。
模塊共識
由于不同行業(yè)及領(lǐng)域有各自的網(wǎng)絡(luò)要運(yùn)行,所以不同的網(wǎng)絡(luò)也要配置不同的共識算法來滿足不同的使用要求。Hyperledger協(xié)議下的共識必須運(yùn)用可插入式算法,使用戶自行在配置中自行選擇共識算法。Hyperledger協(xié)議的首次發(fā)行將提供拜占庭容錯算法(BFT),這種算法采用的是實(shí)用拜占庭容錯算法(PBFT)協(xié)議。我們期待今后社區(qū)中能有更多人分享其他共識算法模型。
邏輯=鏈上代碼=智能合約
區(qū)塊鏈邏輯,或者我們常說的“智能合約”,是各方之間自動執(zhí)行的協(xié)議,其中所有相關(guān)條款都由代碼編成,能夠進(jìn)行自動結(jié)算,今后通過簽名或其他觸發(fā)事件來執(zhí)行。在Hyperledger項目中,我們把它叫做“鏈上代碼”(chaincode) , 通過鏈上代碼來建立并區(qū)分區(qū)塊鏈邏輯及其書面合約。(這 個術(shù)語還在檢測中,可能會有所改變。)
鏈上代碼(chaincode)概念比智能合約還要再寬泛一些,智能合約這一概念是由NickSzabo提出來的。鏈上代碼能夠通過任何主流編程語言進(jìn)行編寫,并且在Hyperledger的上下文背景層內(nèi)執(zhí)行。鏈上代碼能夠定義智能合約模塊語言(類似Velocity或者Jade),限制環(huán)境函數(shù)的執(zhí)行以及其運(yùn)算靈活度,從而滿足法律合約的要求。
性能績效以及可擴(kuò)展性
如果從經(jīng)濟(jì)角度來認(rèn)識區(qū)塊鏈框架的網(wǎng)絡(luò)應(yīng)用,那么在設(shè)計過程中就必須把長期的業(yè)績考慮進(jìn)去。一個賬本或一套賬本必須能夠持續(xù)運(yùn)作100多年,并且在用戶可獲取的時效內(nèi),允許客戶使用其發(fā)掘、搜索、身份識別及其他功能。不過隨著時間的推移,指定網(wǎng)絡(luò)的節(jié)點(diǎn)數(shù)量及交易人員也會越來越多,因此,其框架還必須在保證性能表現(xiàn)的前提下,解決這些問題。
架構(gòu)
下面圖2將為您展示Hyperledger所參考的架構(gòu),包括三大類:會員制、區(qū)塊鏈、鏈上代碼。這些都是邏輯結(jié)構(gòu),而不是對獨(dú)立步驟、地址空間或者(虛擬)機(jī)器中分區(qū)組件的物理描述。
其中有些部分會從頭建起,有的會采用現(xiàn)有的開源碼,還有一些則與現(xiàn)有服務(wù)結(jié)合從而實(shí)現(xiàn)所需功能。
會員制服務(wù)負(fù)責(zé)管理的是網(wǎng)絡(luò)上的身份識別、隱私與機(jī)密。參與者通過注冊來獲取身份,然后屬性授權(quán)機(jī)構(gòu)才能發(fā)放密鑰來進(jìn)行交易。聲譽(yù)管理器能夠使審計人員瀏覽某參與者的交易情況,如果審計人員已經(jīng)獲得參與者授予的適當(dāng)訪問權(quán)限的話。
區(qū)塊鏈服務(wù)負(fù)責(zé)管理分布式賬本,通過在超文本傳輸協(xié)議2.0建立的點(diǎn)對點(diǎn)協(xié)議進(jìn)行。數(shù)據(jù)結(jié)構(gòu)經(jīng)過優(yōu)化能夠有效維護(hù)眾參與者重復(fù)的整體狀態(tài)。不同的共識算法或?qū)⑶度朊恳粋€配置中,以保證高度一致性(通過拜占庭容錯算法來處理錯誤,通過崩潰容忍來處理延誤與中斷,或借助工作量證明方案來應(yīng)對審查)。
鏈上代碼(Chaincode)服務(wù)負(fù)責(zé)提供安全又輕便的沙盒裝載路徑,供鏈上代碼執(zhí)行驗證節(jié)點(diǎn)。整個環(huán)境是一個封鎖且安全的容器,內(nèi)含一個 簽署過的圖片庫,包括安全的操作系統(tǒng)及鏈上代碼語言,以及Golang (準(zhǔn)備期)、Java (計劃期)、Node. js (計劃期)等軟件開發(fā)工具包組圖與執(zhí)行環(huán)境。如果有需要的話,也能添加其他程序語言。
會員制
區(qū)塊鏈
分布式賬本運(yùn)用RocksDB來長久保存數(shù)據(jù)集,并且為了符合其三大屬性,它還建立了一個內(nèi)部數(shù)據(jù)結(jié)構(gòu)來反映狀態(tài)。大型文件(文檔等)存儲在區(qū)塊鏈賬本之外的貯存庫中,而其散列值則能夠作為交易的一部分存放在鏈內(nèi),這是為了保證文件的完整性。
Hyperledger能夠支持兩種交易:代碼部署交易以及代碼調(diào)用交易。代碼部署交易能夠執(zhí)行一條鏈上代碼的提交、更新或者終止等命令,其驗證節(jié)點(diǎn)必須保護(hù)代碼及其執(zhí)行環(huán)境的真實(shí)性與完整性。相比之下,代碼調(diào)用交易則是一種用來執(zhí)行鏈E代碼函數(shù)的應(yīng)用程序界面,其過程類似于運(yùn)用統(tǒng)--資源標(biāo)識符來調(diào)用JEE的小型服務(wù)程序。值得注意的是,其中每一個鏈上代碼都負(fù)責(zé)維護(hù)自己的狀態(tài),而且函數(shù)調(diào)用是改變鏈上代碼狀態(tài)的一個常見辦法。
共識管理器是一個抽象概念,它定義了共識算法與其他Hyperledger組件之間的接口。共識管理器接收交易,根據(jù)算法來決定如何組織以及何時執(zhí)行這些交易。交易成功執(zhí)行后就會在賬本上反映變化。
Hyperledger執(zhí)行的是拜占庭協(xié)議,其在容錯與擴(kuò)展性方面都有強(qiáng)大優(yōu)勢。
Event Hub是一個去中心化網(wǎng)絡(luò),它的屬性很復(fù)雜,因為同一事件可能會多次出現(xiàn),而且每次都會覆蓋到每個對等節(jié)點(diǎn)?;卣{(diào)函數(shù)能夠終止接收同一事件的多次調(diào)用,這樣一來,對等節(jié)點(diǎn)(最好是非驗證的本機(jī)節(jié)點(diǎn))就能夠管理應(yīng)用程序相關(guān)的發(fā)布或訂閱事件了。只要條件滿足,對等節(jié)點(diǎn)就發(fā)動事件,順序不分先后。這些事件不會永遠(yuǎn)存在,所以應(yīng)用程序如果有需要就得及時捕捉。
鏈上代碼( chaincode )
鏈上代碼交易是有時間限定的,并且在鏈上代碼裝置過程中是按特定形式裝配的,這和數(shù)據(jù)庫調(diào)用或網(wǎng)站服務(wù)調(diào)用類似。如果超過交易時限,那么就按出錯處理,不會給賬本狀態(tài)帶去任何改變。如果調(diào)用的函數(shù)有相同保密范圍限制的話,一個鏈上代碼函數(shù)就能夠調(diào)用另一個鏈上代碼函數(shù)一也就是 說,如果兩個機(jī)密鏈上代碼之間,有相同的一組驗證器,那么它們之間就能互相調(diào)用。
新區(qū)塊進(jìn)行交易時,會維持區(qū)塊鏈上最后區(qū)塊的整體狀態(tài)差量。如果當(dāng)前區(qū)塊達(dá)到共識,那么變量就會提交到數(shù)據(jù)庫,之后整體狀態(tài)的區(qū)塊數(shù)量就會增加1個。如果節(jié)點(diǎn)沒有達(dá)到共識,那么差量就會不會算入,數(shù)據(jù)庫也不會進(jìn)行修改。
應(yīng)用編程界面
Hyperledger包括了REST、JSON RPC應(yīng)用程序界面、事件以及連接網(wǎng)絡(luò)的應(yīng)用程序軟件開發(fā)工具包。典型的一點(diǎn)是,應(yīng)用程序與一個對等節(jié)點(diǎn)進(jìn)行交互需要通過某種形式來驗證該個體的正當(dāng)權(quán)限,其中客戶的信息是有其身份識別簽名的,而且要經(jīng)過節(jié)點(diǎn)的核實(shí)。
Hyperledger有--套命令行界面(CLI)來管理運(yùn)行網(wǎng)絡(luò)。這套命令行界面也可以用于鏈上代碼測試過程中。REST應(yīng)用程序界面以及軟件開發(fā)工具包(SDK)是建立在JSON-RPC應(yīng)用程序界面上的,這也是現(xiàn)在最完整的應(yīng)用程序界面層。軟件開發(fā)工具包則能夠適用于Golang, JavaScript, Java 等語言中,如果有需要,也可以添加其他編程語言。
這一應(yīng)用程序界面能夠分成以下幾類: :
· 身份識別——通過登記來獲得或撤銷認(rèn)證
· 尋址——定位并追蹤交易來源
· 交易一一賬本上的執(zhí)行單元
· 鏈上代碼——在區(qū)塊鏈上運(yùn)行的程序
· 區(qū)塊鏈——賬本的內(nèi)容
· 網(wǎng)絡(luò)——區(qū)塊鏈網(wǎng)絡(luò)的信息
· 存儲庫一一文件或文檔的外部儲存
· 事件一一區(qū)塊鏈上的訂閱或發(fā)行事件
應(yīng)用模型
網(wǎng)絡(luò)技術(shù)
有三種潛在配置模型:云服務(wù)器托管的單一網(wǎng)絡(luò)、云服務(wù)器托管的多個網(wǎng)絡(luò),以及參與者托管的內(nèi)聯(lián)網(wǎng)。
云服務(wù)器托管的單一網(wǎng)絡(luò)是最簡易、最高效的拓?fù)浣Y(jié)構(gòu),其中每一位參與者都有一組對等節(jié)點(diǎn),包括驗證節(jié)點(diǎn)。盡管網(wǎng)絡(luò)在云環(huán)境下運(yùn)行并且托管給物理硬件廠商,參與者還是能夠根據(jù)合約來控制運(yùn)算資源,從而在中心化環(huán)境中實(shí)現(xiàn)去中心化配置。
云服務(wù)器托管的多個網(wǎng)絡(luò)能夠使參與者通過云供應(yīng)商管理對等節(jié)點(diǎn),如果這些節(jié)點(diǎn)能夠在超文本傳輸協(xié)議(Hyper ledgerTTP)下互相連接的話。
參與者托管的內(nèi)聯(lián)網(wǎng)通過超文本傳輸協(xié)議來使用參與者所有的網(wǎng)絡(luò)。
結(jié)論
Hyperledger的任務(wù)是將區(qū)塊鏈技術(shù)引入大眾市場?;仡櫫丝尚械膮^(qū)塊鏈解決方案,也了解了業(yè)界領(lǐng)先者及技術(shù)推廣者給出的相關(guān)用例后,我們相信區(qū)塊鏈將會成為至關(guān)重要的技術(shù)模型,推動眾多工業(yè)與企業(yè)進(jìn)行革新。
我們注意到,業(yè)內(nèi)目前急需-套為企業(yè)打造的區(qū)塊鏈框架,做到既高效,又可擴(kuò)展,并且能夠為隱私與機(jī)密相關(guān)的需求提供企業(yè)級的支持。我們也發(fā)現(xiàn)了各種不同的用例,而每一用例可能需要不同的區(qū)塊鏈底層實(shí)現(xiàn)。
為了全面發(fā)掘區(qū)塊鏈技術(shù)的潛能,并且開創(chuàng)一套能滿足各種使用需求的標(biāo)準(zhǔn),我們設(shè)計了靈活且可延伸的Hyperledger構(gòu)架。此外,我們還在引導(dǎo)Hyper ledger協(xié)議的默認(rèn)實(shí)現(xiàn),其中涉及了各種計算機(jī)科學(xué)學(xué)科的先進(jìn)成果。
評論