亦來云(Elastos)是全球第一個(gè)讓區(qū)塊鏈的可信能夠傳遞到用戶日常場(chǎng)景的操作系統(tǒng)。以區(qū)塊鏈為可信基礎(chǔ),結(jié)合 Elastos 的沙箱隔離機(jī)制和網(wǎng)絡(luò)隔離機(jī)制,讓數(shù)字資產(chǎn)可以被確權(quán)、數(shù)量有限(稀缺)、可交易和可消費(fèi)。讓人人都能擁有數(shù)字資產(chǎn),變現(xiàn)未來財(cái)富。從而將互聯(lián)網(wǎng)打造為智能經(jīng)濟(jì)生態(tài)圈。
亦來云(Elastos)是開源的軟件系統(tǒng),其研發(fā)過程中受到了富士康等產(chǎn)業(yè)巨頭超過兩個(gè)億人民幣的贊助支持,已開源了上千萬行源代碼,包括超過四百萬行原創(chuàng)開發(fā)的源代碼。亦來云項(xiàng)目在陳榕的帶領(lǐng)下,幾百人團(tuán)隊(duì)開發(fā)多年,苦于一直沒遇到合適的市場(chǎng)窗口期(像當(dāng)年微軟的 DOS和 WINDOWS),直到遇上了區(qū)塊鏈以及韓鋒等業(yè)界代表人物。
Elastos 可以很好地保護(hù)數(shù)字內(nèi)容、隱私不被泄露、不被竊取;而區(qū)塊鏈可以為數(shù)字內(nèi)容頒發(fā) ID(權(quán)證),確認(rèn)數(shù)字內(nèi)容產(chǎn)權(quán)和可交易。兩者結(jié)合為信息時(shí)代的互聯(lián)網(wǎng)提供“私有產(chǎn)權(quán)”的經(jīng)濟(jì)基礎(chǔ)。只有在產(chǎn)權(quán)明晰的基礎(chǔ)之上才能產(chǎn)生經(jīng)濟(jì)、發(fā)展生產(chǎn)力。
陳榕和韓鋒等人經(jīng)過數(shù)十次討論,對(duì)一個(gè)去中心化的全自動(dòng)智能經(jīng)濟(jì)需要一個(gè)安全并且可用的操作系統(tǒng)達(dá)成共識(shí)。亦來云實(shí)現(xiàn)了“信任和計(jì)算分離”,使得大型去中心化應(yīng)用(DApp)兼具“可用性”和“可信度”。
解決了以太坊為代表的、智能合約虛擬機(jī)功能高度耦合的現(xiàn)有區(qū)塊鏈系統(tǒng)的局限性。保證去中心化的應(yīng)用完全跑在一個(gè)高性能的、可信安全的“財(cái)富互聯(lián)網(wǎng)”上。
亦來云致力于在傳統(tǒng)互聯(lián)網(wǎng)上打造全新智能經(jīng)濟(jì)特區(qū),亦來幣是該經(jīng)濟(jì)特區(qū)內(nèi)流通的基礎(chǔ)代幣。 亦來云創(chuàng)造者們期望把互聯(lián)網(wǎng)智能經(jīng)濟(jì)推進(jìn)到一個(gè)全新的高度。
亦來云 :區(qū)塊鏈驅(qū)動(dòng)的智能萬維網(wǎng)
亦來云的設(shè)計(jì)思想源于前微軟資深軟件工程師陳榕,他于 2000 年開始致力于開發(fā)世界第一個(gè)互聯(lián)網(wǎng)操作系統(tǒng),提出了“上網(wǎng)不計(jì)算,計(jì)算不上網(wǎng)”的基本設(shè)計(jì)思想,后經(jīng)富士康等投資近兩個(gè)億發(fā)展成一個(gè)上千萬行源代碼的開源操作系統(tǒng)(github.com/elastos),2017 年開始和區(qū)塊鏈相結(jié)合,提出了智能萬維網(wǎng)(Smartweb)的概念。
亦來云智能萬維網(wǎng)(Smartweb)可以解析為四個(gè)層次:
區(qū)塊鏈及智能合約。區(qū)塊鏈作為操作系統(tǒng)的信任區(qū)實(shí)現(xiàn) “可信”。亦來云主鏈通過與比特幣聯(lián)合挖礦共享算力,依托比特幣的 POW 機(jī)制保證可信度。同時(shí)亦來云還通過側(cè)鏈提供服務(wù)和擴(kuò)展第三方應(yīng)用,以集群服務(wù)的方式提升區(qū)塊鏈層面的計(jì)算能力,避免主鏈負(fù)載過重。亦來云支持在側(cè)鏈上運(yùn)行智能合約實(shí)現(xiàn)“可信計(jì)算”,可以靈活擴(kuò)展區(qū)塊鏈能力,但會(huì)嚴(yán)格限制合約的使用范圍,僅用于針對(duì)數(shù)據(jù)資產(chǎn)的可信計(jì)算。
Elastos Carrier。Elastos Carrier 是一個(gè)完全去中心化的 P2P 網(wǎng)絡(luò)服務(wù)平臺(tái),是亦來云支撐去中心化應(yīng)用開發(fā)和運(yùn)行的重要基礎(chǔ)設(shè)施。
Elastos Runtime。Elastos Runtime 運(yùn)行于客戶的設(shè)備之上,實(shí)現(xiàn)“可靠運(yùn)行時(shí)環(huán)境”。開發(fā)者通過開發(fā) Elastos DApp 來實(shí)現(xiàn)使用(播放)數(shù)字資產(chǎn)的功能。VM 保證數(shù)字資產(chǎn)運(yùn)行于區(qū)塊鏈控制范圍內(nèi),為用戶提供消費(fèi) / 投資數(shù)字內(nèi)容的能力。
Elastos SDK。傳統(tǒng)意義的 APP,可以通過包含亦來云的 SDK 來擴(kuò)展能力,獲得身份鑒權(quán)、可信記錄等區(qū)塊鏈典型能力。
亦來云具有如下特點(diǎn):
恢復(fù)區(qū)塊鏈本身的價(jià)值定位:可信數(shù)據(jù)庫(可信賬本)。只有最有價(jià)值的內(nèi)容才保存在區(qū)塊鏈,既經(jīng)濟(jì),又高效。
限定智能合約的能力不能濫用,它的定位類似于數(shù)據(jù)庫的存儲(chǔ)過程,用于區(qū)塊鏈數(shù)據(jù)的自動(dòng)計(jì)算和處理。
基于區(qū)塊鏈的可信記錄和可信計(jì)算,我們可以為數(shù)字內(nèi)容頒發(fā)權(quán)證(token)。通過權(quán)證確認(rèn)數(shù)字內(nèi)容的所有權(quán)。通過轉(zhuǎn)移權(quán)證來交易所有權(quán)。讓區(qū)塊鏈成為數(shù)字內(nèi)容的“產(chǎn)權(quán)中心”。
Elastos Runtime 運(yùn)行于客戶的 OS 設(shè)備上,費(fèi)用、能力和性能都不受限,可以使用傳統(tǒng)編程模型和編程語言開發(fā) Elastos DApp,甚至可以直接移植現(xiàn)有軟件。同時(shí),通過沙箱與 OS 原生環(huán)境相互隔離,保證數(shù)字內(nèi)容不會(huì)外漏。再通過 P2P 網(wǎng)絡(luò)連接區(qū)塊鏈服務(wù),使權(quán)證在用戶 OS 上仍然有效,繼續(xù)保護(hù)數(shù)字內(nèi)容。這樣既可以低成本對(duì)接現(xiàn)有 App 生態(tài),包括用戶和開發(fā)者;又可以擴(kuò)展和延伸區(qū)塊鏈對(duì)數(shù)字內(nèi)容的保護(hù)范圍;還能讓用戶在手機(jī)上消費(fèi)數(shù)字內(nèi)容。
對(duì)于更多的現(xiàn)有 App 來說,最輕量的方式是嵌入 Elastos SDK,通過它來訪問部分區(qū)塊鏈功能,從而實(shí)現(xiàn)部分去中心能力。比如可以通過SDK 提供的身份 ID 來綁定自己的用戶,進(jìn)行身份鑒權(quán);還可以通過 SDK提供的 API 將重要內(nèi)容的哈希散列保存在區(qū)塊鏈,從而起到公證 / 存證的作用。通過這種方式可以最輕量級(jí)的對(duì)接現(xiàn)有應(yīng)用生態(tài),也讓各種應(yīng)用更方便的擁有區(qū)塊鏈所帶來的便利能力。
通過 Elastos Runtime 將“區(qū)塊鏈的可信記錄”與“智能合約的可信計(jì)算”正交,我們讓區(qū)塊鏈上的數(shù)字資產(chǎn)可以從生產(chǎn)、交易、消費(fèi)完成閉環(huán)。根據(jù)現(xiàn)代經(jīng)濟(jì)學(xué)理論和量子財(cái)富觀,只有明晰、受保護(hù)的產(chǎn)權(quán)和合規(guī)的交易才能形成資本市場(chǎng),才能成為未來時(shí)的財(cái)富。只有如此才能將現(xiàn)在的互聯(lián)網(wǎng)發(fā)展成為“價(jià)值互聯(lián)網(wǎng)”,直至“財(cái)富互聯(lián)網(wǎng)”。
可以這樣對(duì)比比特幣、以太坊和亦來云:
有了 Elastos Runtime 保護(hù)的可信應(yīng)用環(huán)境,數(shù)字內(nèi)容才能真正產(chǎn)生價(jià)值,變現(xiàn)未來,被用戶“消費(fèi)”和投資。就好像給用戶一張火星上的土地產(chǎn)權(quán)證,在目前科技水平,這張證書基本沒用。雖然它也可以去交易、可以去投資,但最終無法使用它的本體。如果宇宙空間科技提供一種能力把人類瞬間傳送到火星,那么這張產(chǎn)權(quán)證就真的有用了。Elastos 就是這樣一個(gè)橋梁,可以讓用戶在體驗(yàn)、效率、功效方面真正可消費(fèi)數(shù)字內(nèi)容,完成整個(gè)數(shù)字產(chǎn)品資本市場(chǎng)的閉環(huán)。
亦來云商業(yè)模式的基礎(chǔ):
1. 數(shù)字內(nèi)容可以被使用無數(shù)次而仍然完好如初;
2. 可以在區(qū)塊鏈上用權(quán)證標(biāo)識(shí)確權(quán);
3. 權(quán)證在區(qū)塊鏈上可轉(zhuǎn)移、交易,變成可變現(xiàn)未來的資本;
4. 憑借權(quán)證,可以在 Elastos Runtime 內(nèi)消費(fèi) / 使用數(shù)字內(nèi)容;
5. 可以為數(shù)字內(nèi)容設(shè)置有限數(shù)量,制造稀缺,成為變現(xiàn)未來的資本。
基于上述基礎(chǔ),我們可以實(shí)現(xiàn)一種全新的用戶投資消費(fèi)模式:
1. 用戶購買限量版游戲 App;
2. 在用戶手機(jī)上的 Elastos Runtime 內(nèi)玩游戲;
3. 不想再玩以后可以將這個(gè)游戲賣掉。因?yàn)檫@個(gè)游戲是限量版,并隨著這個(gè)游戲口碑的傳播,讓它在二手市場(chǎng)里乘風(fēng)破浪漲了好多。幫助用戶既享受了數(shù)字內(nèi)容又賺取了“早起”的收益,變現(xiàn)了未來時(shí)的財(cái)富。
我們稱這種既投資、又消費(fèi)的行為叫“投資消費(fèi)者”( 螞蟻金服首席戰(zhàn)略官陳龍回復(fù),韓鋒的文章時(shí)提出的概念 )。通過幫助用戶取得這樣的效果和價(jià)值,可以吸引更多用戶加入、使用 Elastos Runtime。當(dāng)聚集大量用戶以后,會(huì)有更多的數(shù)字內(nèi)容生產(chǎn)者(開發(fā)商)加入我們的平臺(tái)生產(chǎn)內(nèi)容、發(fā)布內(nèi)容。更多的內(nèi)容帶來更多的用戶;更多的用戶促發(fā)更多的內(nèi)容。從而形成正向循環(huán),最終產(chǎn)生數(shù)量巨大的、有價(jià)值的數(shù)字內(nèi)容和財(cái)富。
而亦來幣是整個(gè)平臺(tái)運(yùn)轉(zhuǎn)的自然等價(jià)物。需要用亦來幣支付手續(xù)費(fèi)、購買基礎(chǔ)服務(wù)和購買數(shù)字內(nèi)容,變現(xiàn)未來時(shí)財(cái)富。全部亦來幣可以看做是平臺(tái)所承載的全部數(shù)字內(nèi)容和用戶對(duì)其未來的“標(biāo)價(jià)”。隨著內(nèi)容的增加和用戶的增多,亦來云的同步 GDP 增長(zhǎng),源源不斷地有更多數(shù)字資產(chǎn)變現(xiàn)未來,這為總數(shù)近似恒定的亦來幣帶來了升值基礎(chǔ)。
我們希望通過亦來云,讓互聯(lián)網(wǎng)可信、讓數(shù)字內(nèi)容成為資產(chǎn)、讓創(chuàng)作者獲得財(cái)富、讓消費(fèi)者同時(shí)也成為投資者,讓信息互聯(lián)網(wǎng)變成財(cái)富互聯(lián)網(wǎng)。
架構(gòu)
1.信用體系
自從上世紀(jì)七十年代,美元與黃金脫鉤,布雷頓森林全球信用體系崩潰,全球信用生產(chǎn)完全依賴人的信用。如今比特幣挖礦產(chǎn)業(yè)正在逐步演變?yōu)槲磥砣蛐庞蒙a(chǎn)的基礎(chǔ)設(shè)施及戰(zhàn)略性資源,這標(biāo)志著人類社會(huì)信用體系與自然資源脫鉤的態(tài)勢(shì)正在發(fā)生微妙的改變,預(yù)示著人類信用資源又開始向自然資源(算力)回歸的大趨勢(shì)。
亦來云聯(lián)合創(chuàng)始人韓鋒于 2016 年 3 月發(fā)布《生產(chǎn)全球信用的人們》報(bào)告,第一次指出中國已經(jīng)占到全球比特幣挖礦產(chǎn)業(yè)算力 50% 以上。同時(shí),亦來云聯(lián)合比特大陸、BTC.TOP 、BTCC、幣信等戰(zhàn)略合作伙伴成立“區(qū)塊鏈挖礦信用生產(chǎn)聯(lián)盟”,致力于推動(dòng)將比特幣算力升級(jí)為信用生產(chǎn)的公共服務(wù),進(jìn)而抑制能源消耗和碳排放的問題。
亦來云區(qū)塊鏈攜手其戰(zhàn)略合作伙伴進(jìn)行比特幣聯(lián)合挖礦,這意味亦來云區(qū)塊鏈發(fā)布第一天即獲得極其強(qiáng)大的算力保障。我們致力于成為世界級(jí)的公有鏈,為全球區(qū)塊鏈創(chuàng)新,特別是亦來云生態(tài)提供信用生產(chǎn)的基礎(chǔ)服務(wù)。
2.數(shù)字資產(chǎn)確權(quán)、交易和流通
在“比特世界”里,數(shù)字資源幾乎無成本復(fù)制與傳播。但由于數(shù)字資源無法確權(quán),雖然被海量生產(chǎn)、流通、消費(fèi),而且創(chuàng)造價(jià)值,但是無法創(chuàng)造財(cái)富。從而導(dǎo)致盜版、山寨橫行,原創(chuàng)動(dòng)力不足等副作用,數(shù)字不能有效變成財(cái)富使虛擬數(shù)字經(jīng)濟(jì)發(fā)展遇到了瓶頸。區(qū)塊鏈技術(shù)已經(jīng)證明數(shù)字貨幣是可行的,在新的智能經(jīng)濟(jì)模式中,傳統(tǒng)“原子世界”看不見的思想、人脈、數(shù)據(jù)、糾纏等會(huì)成為財(cái)富的主體,這即是量子財(cái)富觀。
亦來云為數(shù)字資產(chǎn)的確權(quán)、交易和流通提供基礎(chǔ)設(shè)施。將數(shù)字資源通過區(qū)塊鏈發(fā)布到網(wǎng)絡(luò)上時(shí),將被確權(quán),數(shù)字資源將成為區(qū)塊鏈上被信任的數(shù)字資產(chǎn),可以用于流通和交易。發(fā)布數(shù)字資產(chǎn)必須有亦來云錢包,錢包帳戶余額須足以支付礦工費(fèi),然后發(fā)起確權(quán)交易請(qǐng)求,請(qǐng)求包括所有者錢包地址、資源 URI、數(shù)量、單價(jià)等信息,然后計(jì)算資源的哈希值,把該交易作為 UTXO 記錄在鏈上。當(dāng)資產(chǎn)確權(quán)交易記錄被發(fā)布到區(qū)塊鏈以后,該資源成為可以用于交易的數(shù)字資產(chǎn),購買交易生效后,客戶購買的數(shù)字資產(chǎn)的歸屬權(quán)也轉(zhuǎn)移到客戶賬戶名下,除了使用價(jià)值外,也可以再次出售。
3.去中心化應(yīng)用(DApp)
基于當(dāng)前的數(shù)字貨幣和區(qū)塊鏈技術(shù),至今還沒有可以跟主流應(yīng)用媲美的去中心化應(yīng)用。這是因?yàn)檫壿嬌系膮^(qū)塊鏈?zhǔn)澜缬?jì)算機(jī)雖然是圖靈等價(jià)的,但其計(jì)算能力、IOPS 等關(guān)鍵指標(biāo)都比較弱,區(qū)塊鏈已經(jīng)不堪重負(fù)。
亦來云區(qū)塊鏈設(shè)計(jì)采用了主鏈、側(cè)鏈模式,所有的智能合約、應(yīng)用都運(yùn)行在側(cè)鏈上。用戶通過亦來云操作系統(tǒng),可以很方便地開發(fā)出安全的去中心化應(yīng)用。在不使用亦來云操作系統(tǒng)的情況下,通過 ElastosRuntime,可以開發(fā)出同樣效果的基于 Android、iOS、PC、Mac 等的去中心化應(yīng)用。
同時(shí)我們建立亦來云應(yīng)用商店,分發(fā)去中心化應(yīng)用。
亦來云區(qū)塊鏈
如同手機(jī)操作系統(tǒng)需要一個(gè)信任區(qū)(Trust Zone)保存關(guān)鍵數(shù)據(jù),比如用戶指紋,亦來云區(qū)塊鏈相當(dāng)于亦來云生態(tài)的信任區(qū),為整個(gè)生態(tài)提供信用、交易基礎(chǔ)服務(wù)。
面對(duì)智能經(jīng)濟(jì)和去中心化應(yīng)用需求,亦來云區(qū)塊鏈采用主鏈、側(cè)鏈設(shè)計(jì)方案,即每個(gè)應(yīng)用都可以獨(dú)立開設(shè)一個(gè)側(cè)鏈。亦來云區(qū)塊鏈提供內(nèi)置的、完善的、易用的側(cè)鏈支持,側(cè)鏈有多種共識(shí)算法模塊供用戶選擇,側(cè)鏈可以發(fā)行代幣,主鏈和側(cè)鏈可進(jìn)行雙向資產(chǎn)轉(zhuǎn)移。所有側(cè)鏈與主鏈共享算力,因此所有側(cè)鏈都具有和主鏈一樣的安全性。同時(shí)整體系統(tǒng)能耗可以實(shí)現(xiàn)最小化,避免分頭挖礦帶來巨大能源消耗和碳排放的問題。
1.交易和區(qū)塊設(shè)計(jì)
亦來云區(qū)塊鏈結(jié)構(gòu)參考了現(xiàn)有的經(jīng)典的數(shù)字貨幣系統(tǒng)設(shè)計(jì),包括區(qū)塊驗(yàn)證必要的前一區(qū)塊頭哈希、交易默克爾樹根哈希、用于工作量證明算法的計(jì)數(shù)器(Nonce)、時(shí)間戳、難度目標(biāo)等內(nèi)容,這樣一個(gè)鏈?zhǔn)降拇鎯?chǔ)結(jié)構(gòu),能夠讓交易獲得所有累積在上面的工作量證明的保護(hù),并且實(shí)現(xiàn)去中心共識(shí)的目標(biāo),進(jìn)而成為全自動(dòng)的信用生產(chǎn)體系。
同時(shí)我們也吸取了現(xiàn)有的數(shù)字貨幣、區(qū)塊鏈系統(tǒng)的經(jīng)驗(yàn)教訓(xùn),整體上采用主鏈、側(cè)鏈相結(jié)合的設(shè)計(jì)思路。將驗(yàn)證腳本從交易結(jié)構(gòu)中拿出去,減少了交易空間占用,避免了延展性攻擊。側(cè)鏈?zhǔn)且鄟碓票姸?DApp 運(yùn)行的基礎(chǔ),因此亦來云主鏈結(jié)構(gòu)要提供對(duì)側(cè)鏈的支持,要能夠方便資產(chǎn)在主鏈和側(cè)鏈間轉(zhuǎn)移。
2.聯(lián)合挖礦
亦來云區(qū)塊鏈采用比特幣聯(lián)合挖礦機(jī)制, 比特幣作為主鏈(Parent Blockchain),亦來幣作為輔鏈(Auxiliary Blockchain),礦池通過部署聯(lián)合挖礦代碼,礦工同時(shí)向比特幣和亦來云提交工作量證明,無需耗費(fèi)額外算力即可享有雙重獎(jiǎng)勵(lì),增加了礦工在采礦競(jìng)爭(zhēng)中的收益。
通過聯(lián)合挖礦機(jī)制,亦來云區(qū)塊鏈擁有極其強(qiáng)大的算力保障。為全球區(qū)塊鏈創(chuàng)新,特別是亦來云生態(tài)提供信用生產(chǎn)的基礎(chǔ)服務(wù)。除了充分利用既有比特幣計(jì)算資源并且更為環(huán)保之外,聯(lián)合挖礦技術(shù)還具備之前并未被人們充分認(rèn)識(shí)的潛在價(jià)值:
》》 可以多層次信任傳遞。亦來云主鏈依托于比特幣主鏈聯(lián)合挖礦,采用POW 共識(shí)的亦來云側(cè)鏈也可以依托于亦來云主鏈聯(lián)合挖礦,依次遞推,這種信任關(guān)系可以在很深的層次傳遞,這有利于分層次結(jié)構(gòu)化組織區(qū)塊鏈生態(tài)。
》》 依托于聯(lián)合挖礦的輔鏈并不需要多個(gè)節(jié)點(diǎn)的共識(shí)。極端情況,一條鏈只需要一個(gè)節(jié)點(diǎn)就可以了,而且這并不影響鏈上帳本信息的可信度,這種優(yōu)勢(shì)是其它任意一種區(qū)塊鏈共識(shí)算法都不具備的。這非常有利于使用分叉機(jī)制復(fù)用側(cè)鏈的實(shí)現(xiàn)代碼,擴(kuò)充側(cè)鏈的計(jì)算能力。
3.代幣分配方案
亦來云代幣(ELA Coin),簡(jiǎn)稱亦來幣(ELA),是亦來云區(qū)塊鏈上的原生代幣,用于交易、支持?jǐn)?shù)字資產(chǎn)、支付區(qū)塊鏈交易手續(xù)費(fèi)等。
我們使用 ELA 作為亦來云代幣的基本單位,中文名稱:亦來幣或者艾拉。此外,向數(shù)字貨幣啟蒙者 Satoshi Nakamoto 致敬,我們用 SatoshiELA作為亦來幣最小貨幣單位,并縮寫為 Sela,中文名字是:賽拉。其換算關(guān)系如下:
4.側(cè)鏈
如前所述,以區(qū)塊鏈技術(shù)構(gòu)建的任意一條鏈的計(jì)算能力都是小于等于一臺(tái)計(jì)算機(jī)的,這顯然無法適應(yīng)互聯(lián)網(wǎng)層面的多種應(yīng)用需求,這也是直到今天區(qū)塊鏈技術(shù)依然無法大規(guī)模應(yīng)用于互聯(lián)網(wǎng)的根本原因。亦來云團(tuán)隊(duì)深刻認(rèn)識(shí)到了這點(diǎn),所以自亦來云項(xiàng)目起步之初就提出了“區(qū)塊鏈的發(fā)展應(yīng)放棄主鏈思維”的指導(dǎo)思想。
基于這一指導(dǎo)原則 ,亦來云主鏈只為上層架構(gòu)提供可信的亦來幣交易服務(wù),同時(shí)限制智能合約的執(zhí)行,因此主鏈上的服務(wù)功能是純粹并且有限的,我們希望在主鏈層面更多的關(guān)注區(qū)塊鏈服務(wù)架構(gòu)的可擴(kuò)展性而不是某種功能或者性能。
亦來云通過主鏈對(duì)側(cè)鏈更好的支持來擴(kuò)展區(qū)塊鏈層面的基礎(chǔ)服務(wù)能力,這種層次化和結(jié)構(gòu)化的設(shè)計(jì)思想能從根本上解決目前區(qū)塊鏈技術(shù)的計(jì)算能力問題,就如同從單機(jī)計(jì)算時(shí)代發(fā)展到分布式計(jì)算時(shí)代。這是亦來云在鏈層面的結(jié)構(gòu)性創(chuàng)新,我們認(rèn)為其重要性要遠(yuǎn)遠(yuǎn)高于某種局部技術(shù)或者共識(shí)算法的創(chuàng)新。
除了支持第三方能夠比較方便的在亦來云公鏈上構(gòu)建側(cè)鏈外,亦來云本身還會(huì)架構(gòu)一些提供基礎(chǔ)服務(wù)的側(cè)鏈,比如 ID 服務(wù)、Token 發(fā)行服務(wù)、快速支付服務(wù)以及數(shù)字資產(chǎn)交易服務(wù)等等,我們稱之為亦來云區(qū)塊鏈集群服務(wù),它們都是亦來云基礎(chǔ)設(shè)施的重要組成部分。
在主鏈和側(cè)鏈的接口中,交易轉(zhuǎn)賬是其最核心的部分。 從主鏈向側(cè)鏈轉(zhuǎn)賬,意味著要把主鏈資產(chǎn)轉(zhuǎn)變?yōu)閭?cè)鏈資產(chǎn),轉(zhuǎn)賬目標(biāo)地址是對(duì)應(yīng)側(cè)鏈在主鏈上的聯(lián)合簽名地址,轉(zhuǎn)賬過程需要保證轉(zhuǎn)賬交易能夠自動(dòng)被側(cè)鏈識(shí)別并為轉(zhuǎn)賬人在側(cè)鏈對(duì)應(yīng)賬號(hào)充值對(duì)應(yīng)價(jià)值的側(cè)鏈代幣。
通過隨機(jī)秘密以及對(duì)應(yīng)的哈希,我們可以構(gòu)造必須提供秘密才能解鎖的交易腳本。下面是轉(zhuǎn)賬過程的示意步驟:
1. 轉(zhuǎn)賬用戶 A 生成一個(gè)隨機(jī)秘密,以及對(duì)應(yīng)的哈希;
2. 用戶 A 在主鏈上構(gòu)造給側(cè)鏈在主鏈上的聯(lián)合簽名地址轉(zhuǎn)賬的交易,交易的解鎖條件除了需要提供聯(lián)合簽名地址的私鑰簽名,還要提供用戶生成的秘密;
3. 用戶 A 將上面的交易以及秘密對(duì)應(yīng)的哈希發(fā)送給側(cè)鏈轉(zhuǎn)賬處理節(jié)點(diǎn);
4. 側(cè)鏈轉(zhuǎn)賬處理節(jié)點(diǎn)在側(cè)鏈上生成給用戶 A 在側(cè)鏈上的發(fā)幣交易,這個(gè)發(fā)幣交易的鎖定腳本要求用戶 A 提供秘密哈希對(duì)應(yīng)的秘密本體以及用戶 A在側(cè)鏈上的私鑰簽名;
5. 用戶 A 提供秘密,從側(cè)鏈上獲得代幣;
6. 側(cè)鏈在主鏈上對(duì)應(yīng)的聯(lián)合簽名地址根據(jù)上面提供的秘密,從主鏈獲得代幣。
側(cè)鏈向主鏈的轉(zhuǎn)賬過程相當(dāng)于從主鏈的聯(lián)合簽名地址中轉(zhuǎn)賬亦來幣到用戶在主鏈的帳戶。下面是轉(zhuǎn)賬過程的示意步驟:
1. 轉(zhuǎn)賬用戶 A 生成一個(gè)隨機(jī)秘密,以及對(duì)應(yīng)的哈希;
2. 用戶 A 在側(cè)鏈上構(gòu)造提幣交易,交易的解鎖條件是提供用戶 A 生成的秘密;
3. 用戶 A 將上面的交易以及秘密對(duì)應(yīng)的哈希發(fā)送給側(cè)鏈轉(zhuǎn)賬處理節(jié)點(diǎn);
4. 側(cè)鏈轉(zhuǎn)賬處理節(jié)點(diǎn)在主鏈上生成給用戶 A 在主鏈上的發(fā)幣交易,這個(gè)發(fā)幣交易的鎖定腳本要求用戶 A 提供秘密哈希對(duì)應(yīng)的秘密本體以及用戶 A在主鏈上的私鑰簽名;
5. 用戶提供秘密,從主鏈上獲得代幣;
6. 側(cè)鏈在主鏈上對(duì)應(yīng)的聯(lián)合簽名地址根據(jù)上面提供的秘密,解鎖用戶 A 的提幣交易,銷毀對(duì)應(yīng)的代幣 。
為了控制聯(lián)合簽名地址上亦來幣的安全性,這個(gè)“聯(lián)合簽名地址”會(huì)限制只能發(fā)起上面描述的“提款轉(zhuǎn)賬”交易。
5.智能合約
在主鏈上提供強(qiáng)大的智能合約會(huì)導(dǎo)致每個(gè)節(jié)點(diǎn)要獲得整個(gè)網(wǎng)絡(luò)的最新狀態(tài),就要把未運(yùn)行的智能合約都運(yùn)行一遍,而只有打包交易的礦工運(yùn)行合約才能得到交易費(fèi),所以對(duì)于單純驗(yàn)證的節(jié)點(diǎn)來說是在浪費(fèi)計(jì)算資源,如果合約調(diào)用次數(shù)頻繁或者數(shù)量龐大,都會(huì)對(duì)執(zhí)行合約帶來巨大壓力甚至無法實(shí)現(xiàn)。
為了避免這樣的問題,亦來云主鏈只有限地支持用于數(shù)字代幣交易的智能合約。側(cè)鏈可以支持智能合約,而且各個(gè)側(cè)鏈可以獨(dú)立設(shè)計(jì)其智能合約功能,比如支持 NEO 區(qū)塊鏈的 NeoContract。
Elastos Carrier:去中心化 P2P 網(wǎng)絡(luò)
ElastosCarrier 為亦來云生態(tài)提供去中心化互聯(lián)網(wǎng)基礎(chǔ)服務(wù)。其節(jié)點(diǎn)可以運(yùn)行在任何網(wǎng)絡(luò)環(huán)境中,包括家庭或者辦公環(huán)境的局域網(wǎng)內(nèi)部,采用基于 UDP 的透明 NAT 穿越技術(shù),及相關(guān)輔助設(shè)施,可以實(shí)現(xiàn)任意節(jié)點(diǎn)都可以被連接,同時(shí)也可以實(shí)現(xiàn)任意兩個(gè)節(jié)點(diǎn)間的直接連接。這樣可以讓任意節(jié)點(diǎn)的能力都可以被充分利用,從整體上提升網(wǎng)絡(luò)的效能。
基礎(chǔ)服務(wù)包括去中心化域名服務(wù)、去中心化計(jì)算服務(wù)、去中心化存儲(chǔ)服務(wù)。為開發(fā)去中心化應(yīng)用程序(DApp)提供了基礎(chǔ)性的支持。在這樣的環(huán)境里,用戶可以擁有自己的數(shù)據(jù),擁有自己的計(jì)算,充分保護(hù)了用戶隱私。同時(shí),也可以隨時(shí)把自己的設(shè)備通過亦來云區(qū)塊鏈租借給他人,根據(jù)計(jì)算量、存儲(chǔ)量獲得對(duì)應(yīng)的亦來幣激勵(lì)。
Elastos OS:安全的通用操作系統(tǒng)
Elastos OS 是以安全為核心目標(biāo)的,面向 IoT 設(shè)備、樹莓派等創(chuàng)客設(shè)備、移動(dòng)設(shè)備等的通用操作系統(tǒng)。提供原生的、完整的亦來云生態(tài)編程環(huán)境支持。最新的第三版從 2013 年 5 月開始產(chǎn)品化迭代周期,已達(dá)到 Beta 版水平,測(cè)試運(yùn)行于 Moto X(XT1085)手機(jī)、Lamobo-R1S 智能路由器之上,全部源代碼規(guī)模超過千萬行。
安全方面,ElastosOS 禁止應(yīng)用直接創(chuàng)建進(jìn)程,不允許應(yīng)用直接訪問TCP/IP,由系統(tǒng)自動(dòng)創(chuàng)建和查找部署于本地、周邊、云里的微服務(wù),自動(dòng)生成遠(yuǎn)程調(diào)用及事件回調(diào),規(guī)避從第三方應(yīng)用或服務(wù)發(fā)起網(wǎng)絡(luò)攻擊的可能性,并隔離病毒傳播。
Elastos OS 提供了原生的、完善的去中心化應(yīng)用開發(fā)支持,可以方便訪問 ElastosCarrier 網(wǎng)絡(luò),獲取所需基礎(chǔ)服務(wù),方便訪問 ElastosChain,獲取信用和交易服務(wù)。開發(fā)出來的 DApp 可以方便使用亦來幣進(jìn)行交易,同時(shí)也可以方便處理其他數(shù)字資產(chǎn),比如:程序代碼、數(shù)據(jù)、電子書、音視頻、游戲道具等,包括確權(quán)、交易、流通。
系統(tǒng)采用 C/C++、JAVA、HTML5/JS 三類語言并重的開發(fā)模式,其 C++編程 API 基本對(duì)應(yīng)安卓 Java API,實(shí)現(xiàn)云、管、端三位一體統(tǒng)一管理。JavaScript、Java 還是 C/C++ 語言寫的應(yīng)用程序模塊相互調(diào)用,無需手工編寫 JNI,真正做到“一次編程、到處運(yùn)行”。支持 CAR 構(gòu)件技術(shù),下面是一個(gè)使用 CAR 構(gòu)件技術(shù)編寫的 C++ 代碼和 JavaScrip 代碼交互的示例:
Elastos OS 的 C++ Framework 采用類安卓的應(yīng)用接口,方便應(yīng)用的開發(fā)和遷移。在 Elastos OS 上,甚至可以直接支持運(yùn)行 Android 應(yīng)用,其實(shí)現(xiàn)模型如下:
可以認(rèn)為 Elastos Runtime 就是 C++ 版的 Java 虛擬機(jī)和 Java 框架,也可以稱為 CVM。Elastos OS 服務(wù)和應(yīng)用在 CVM 中運(yùn)行,讓同樣的服務(wù)更容易適配不同的硬件和節(jié)點(diǎn)。
Elastos Runtime:運(yùn)行時(shí)環(huán)境
雖然通過 ElastosOS 可以立刻獲得原生的、完善的去中心化應(yīng)用編程環(huán)境支持,但在很多時(shí)候,用戶會(huì)繼續(xù)使用現(xiàn)有的操作系統(tǒng)。這時(shí)可以采用ElastosRuntime,即亦來云去中心化應(yīng)用運(yùn)行時(shí)環(huán)境,同樣提供了完善的支持。我們將提供 Elastos Runtime for Android,Elastos RuntimeforiOS,Elastos Runtime for GNU/Linux,開發(fā)者可以根據(jù)自己需要靈活選擇。下面我們將通過一些示例代碼來展示亦來云去中心化應(yīng)用編程風(fēng)格。
1.P2P 網(wǎng)絡(luò)接口
DApp 之間可以直接通過構(gòu)件接口互相訪問、調(diào)用,無需(也無法)編寫網(wǎng)絡(luò)操作代碼,編程體驗(yàn)更加簡(jiǎn)單、直觀、安全可控:
上面網(wǎng)絡(luò)代碼不再需要考慮如何封包、拆包、加密、解密,不再設(shè)計(jì)“協(xié)議”,都由 ElastosRuntime 的 CAR 接口完成,只需要編輯下面的接口 CAR 文件:
然后再編寫對(duì)應(yīng)的接口函數(shù)即可完成相應(yīng)功能:
相比傳統(tǒng)的基于 Socket API,基于 Elastos Runtime 編寫 P2P 網(wǎng)絡(luò)應(yīng)用更加安全并且非常簡(jiǎn)單。
2.數(shù)字資產(chǎn)接口示例
如前面例子所展示的,我們?cè)?a target="_blank">網(wǎng)絡(luò)通信時(shí)不再依賴 IP 地址或者域名,目前的互聯(lián)網(wǎng)并不可信,但基于 Elastos Runtime 開發(fā)時(shí),我們給予亦來云的可信區(qū),即亦來云區(qū)塊鏈,Elastos Runtime 會(huì)進(jìn)行相應(yīng)的驗(yàn)證和確認(rèn)。
進(jìn)而可以進(jìn)行數(shù)字資產(chǎn)的交易,下面是檢查所有權(quán)演示代碼:
下面是交易演示代碼:
評(píng)論