第二,EOS 幣(EOS 通證)。EOS 幣由 Block.one 公司在以太坊上按 ERC20 通證標(biāo)準(zhǔn)發(fā)售。按發(fā)售條款,發(fā)售獲得的 ETH 資金歸屬 Block.one 公司。歷時(shí)一年的發(fā)售于 2018 年 6 月 2 日結(jié)束,之后,EOS 幣被映射到上線的 EOS 主網(wǎng)上,它現(xiàn)在是 EOS 主網(wǎng)的原生數(shù)字貨幣。
第三,EOS 主網(wǎng)。通過競選,一批區(qū)塊生產(chǎn)者(BP,超級節(jié)點(diǎn))被選出來,它們啟動(dòng) EOS 主網(wǎng)。EOS 主網(wǎng)于 2018 年 6 月初由 EOS 社區(qū)上線。但可以合理地推測,在 EOS 社區(qū)中,Block.one 公司有著非常大的影響力。
在主網(wǎng)之外還出現(xiàn)了一些未獲得 EOS 社區(qū)廣泛認(rèn)同的,可視為 EOS 替代網(wǎng)(altnet,這是我們造的一個(gè)與之前的替代幣(altcoin)、替代鏈(alt chain)相對應(yīng)的詞)。
EOSIO 是一個(gè)開源軟件,Block.one 公司也支持各方使用這個(gè)開源軟件來架設(shè)自己的區(qū)塊鏈網(wǎng)絡(luò)。不過也出現(xiàn)了一些有爭議的替代網(wǎng),比如有的替代網(wǎng)試圖混淆自己與 EOS 主網(wǎng)。開發(fā)者還可以用 EOSIO 軟件建立單節(jié)點(diǎn)測試網(wǎng)、多節(jié)點(diǎn)測試網(wǎng)。
EOS 主網(wǎng)的賬戶包括兩種:外部賬戶(由私鑰控制的外部賬戶)和合約賬戶。和賬戶相關(guān)的概念是錢包與權(quán)限,錢包是保存密鑰的客戶端,而權(quán)限包括兩個(gè)基礎(chǔ)權(quán)限類別(owner 與 active),應(yīng)用可自定義各種權(quán)限。
圖1:一張圖看懂EOS區(qū)塊鏈與EOSIO開源軟件
EOS 的智能合約
EOS 的智能合約是關(guān)聯(lián)在各個(gè)合約賬戶上的。在 EOSIO 系統(tǒng)中,“合約”是沿用了區(qū)塊鏈的專業(yè)術(shù)語,但其含義非常接近于 Linux 操作系統(tǒng)的后臺應(yīng)用,比如節(jié)點(diǎn)在啟動(dòng)時(shí)會包括四個(gè)缺省合約,如 eosio.bios、eosio.token 等。
EOS 的智能合約可以通過兩種方式調(diào)用,一是用戶通過命令調(diào)用,二是通過 EOSIO 軟件的 send 方法調(diào)用。一個(gè)賬戶通過轉(zhuǎn)賬等動(dòng)作觸發(fā)另一個(gè)合約賬戶中的合約運(yùn)行之后,這個(gè)合約可以通過軟件代碼調(diào)用其他的合約(見圖3-11)。
EOS 智能合約現(xiàn)在是用 C++ 語言編寫的,文件格式分別為*.hpp/*.cpp,編譯后變?yōu)?WebAssembly 格式文件 WASM(*.wast)與應(yīng)用頭文件(*.abi)。