1.以太幣(Ether)產(chǎn)生規(guī)則和比特幣有哪些區(qū)別?
1. 出塊時(shí)間。
比特幣出塊時(shí)間是平均10分鐘傲茄,而以太坊約是15秒。
2.獎勵沮榜。
以太幣獎勵為5以太幣盘榨,并且每次出塊獎勵不減少,大都會后改為了3個以太幣蟆融。比特幣是每次減半草巡,第一塊的是50個比特幣。之后每一塊都減半
3.區(qū)塊記錄量型酥。
以太幣記錄量遠(yuǎn)高于比特幣
4.有叔塊(uncle block)獎勵山憨。
因?yàn)橐蕴坏某鰤K時(shí)間很短,很容易出現(xiàn)兩個節(jié)點(diǎn)同時(shí)出塊的情況弥喉,為了使得所有同時(shí)出塊的節(jié)點(diǎn)都可以得到獎勵郁竟,減少無用礦工。
2.智能合約是什么由境?目前應(yīng)用到什么行業(yè)棚亩?有什么特點(diǎn)蓖议?
在區(qū)塊中傳遞的合約,或者說是傳遞的字符串讥蟆,不過不是單純的字符串和信息勒虾,而是一段可執(zhí)行的腳本,比如說攻询,有觸發(fā)條件从撼,有交互能力
應(yīng)用:第一個成功應(yīng)用的就是電子貓州弟,發(fā)布方一旦發(fā)布出去钧栖,后面自己都不能修改;之后應(yīng)用最多的就是電子賭場了婆翔,1:公信力好拯杠,代碼是公開透明的,莊家是不能作弊的(也可以說沒有莊家)啃奴,而且沒有中央服務(wù)器潭陪;2:賭博過程很難被監(jiān)控被追蹤,一旦入局不可逆轉(zhuǎn)最蕾,而且金額走向無法追蹤
特點(diǎn):1依溯、公開透明的策略,任何人都可以檢查其代碼邏輯可靠性瘟则;2黎炉、即時(shí)與區(qū)塊鏈代幣支付結(jié)合,典型如以太坊醋拧。3慷嗜、去中心化和持續(xù)生命力,代碼發(fā)布后丹壕,即便發(fā)布方倒閉庆械,解散,其產(chǎn)品依然會在鏈上運(yùn)行菌赖。
3.以太坊虛擬機(jī) EVM和JVM有什么差別缭乘?JVM能做以太坊虛擬機(jī)嗎?
虛擬機(jī)都是跨平臺的
以太坊實(shí)現(xiàn)了一個叫Ethereum Virtual Machine(EVM)的運(yùn)行時(shí)環(huán)境琉用,類似JVM堕绩,它的主要工作是執(zhí)行智能合約的字節(jié)碼,EVM“位于區(qū)塊鏈之上”辕羽,而JVM主要是執(zhí)行目標(biāo)代碼(字節(jié)碼)逛尚,內(nèi)存回收機(jī)制好像也不一樣。
可以刁愿,銀行私有鏈用JVM绰寞,安全機(jī)制高。
4.Solidity編程語言有哪些特點(diǎn)?和Javascript滤钱、Python有什么區(qū)別觉壶?
以太坊的軟件開發(fā)語言是其最大特性之一,因?yàn)閷^(qū)塊鏈進(jìn)行編程是一項(xiàng)首要目標(biāo)件缸。以太坊具有四種專用語言:Serpent (受Python啟發(fā))铜靶、 Solidity (受JavaScript 啟發(fā))、 Mutan(受Go 啟發(fā)) 和 LLL (受Lisp 啟發(fā))他炊,都是為面向合約編程而從底層開始設(shè)計(jì)的語言争剿。
Solidity是一種智能合約高級語言,運(yùn)行在Ethereum虛擬機(jī)(EVM)之上痊末。
Solidity是以太坊的首選語言蚕苇,它內(nèi)置了Serpent的所有特性,它的語法接近于Javascript凿叠,是一種面向?qū)ο蟮恼Z言涩笤,這降低了學(xué)習(xí)門檻,易于被掌握和使用盒件,因?yàn)镴avaScript是Web開發(fā)者的常用語言蹬碧。因此,Solidity充分利用了現(xiàn)有數(shù)以百萬程序員已掌握J(rèn)avaScript這一現(xiàn)狀炒刁。
但作為一種真正意義上運(yùn)行在網(wǎng)絡(luò)上的去中心合約恩沽,它又有很多的不同,下面列舉一些:
以太坊底層是基于帳戶切心,而非UTXO的飒筑,所以有一個特殊的Address的類型。用于定位用戶绽昏,定位合約协屡,定位合約的代碼(合約本身也是一個帳戶)。
由于語言內(nèi)嵌框架是支持支付的全谤,所以提供了一些關(guān)鍵字肤晓,如payable,可以在語言層面直接支持支付认然,而且超級簡單补憾。
存儲是使用網(wǎng)絡(luò)上的區(qū)塊鏈,數(shù)據(jù)的每一個狀態(tài)都可以永久存儲卷员,所以需要確定變量使用內(nèi)存盈匾,還是區(qū)塊鏈。
運(yùn)行環(huán)境是在去中心化的網(wǎng)絡(luò)上毕骡,會比較強(qiáng)調(diào)合約或函數(shù)執(zhí)行的調(diào)用的方式削饵。因?yàn)樵瓉硪粋€簡單的函數(shù)調(diào)用變?yōu)榱艘粋€網(wǎng)絡(luò)上的節(jié)點(diǎn)中的代碼執(zhí)行岩瘦,分布式的感覺。
最后一個非常大的不同則是它的異常機(jī)制窿撬,一旦出現(xiàn)異常启昧,所有的執(zhí)行都將會被回撤,這主要是為了保證合約執(zhí)行的原子性劈伴,以避免中間狀態(tài)出現(xiàn)的數(shù)據(jù)不一致密末。
5.Serpent和Python有什么區(qū)別?有什么缺陷跛璧?
Serpent與Python之間的主要區(qū)別有:
Python中的數(shù)字類型沒有大小限制严里,Serpent的數(shù)字類型則會在2256溢出。例如赡模,在Serpent中計(jì)算3^(2^254)的結(jié)果是1,雖然事實(shí)上這是一個天文數(shù)字田炭。
Serpent沒有Decimal類型师抄。
Serpent沒有l(wèi)ist comprehensions (例如[x**2 for x in my_list]這樣的表達(dá)式),字典(Hash/Map)漓柑,和其它一些高級特性。
Serpent沒有first-class函數(shù)的概念叨吮。雖然合約中可以定義函數(shù), 合約也可以調(diào)用這些函數(shù)辆布,但是在兩次函數(shù)調(diào)用之間變量(除了持久變量)是會丟失的。
Serpent有一個被稱作”持久變量“(persistent storage variables)的概念茶鉴。
在Serpent中可以使用extern語句來調(diào)用其他合約中定義的函數(shù)锋玲。
缺陷: 最近Zeppelin Solution團(tuán)隊(duì)發(fā)現(xiàn)其編譯器有一個嚴(yán)重的bug
提示:升級Serpent的時(shí)候,需要先pip uninstall ethereum-serpent然后python setup.py install涵叮。避免使用pip install ethereum-serpent惭蹂,因?yàn)閜ypi上的包八成已經(jīng)過時(shí)了。
6.Vyper比Solidity有哪些優(yōu)勢割粮?
提升以太坊上應(yīng)用程序的安全性
談著之前需要了解以太坊目前需要解決的難題有哪些盾碗?未來的需求是什么?
Vitalik Buterin:目前的挑戰(zhàn)主要是技術(shù)性問題舀瓢,大體分為以下三類:
第一廷雅,可擴(kuò)展性。我們要增加區(qū)塊鏈的容量京髓,這一性能主要反映在每秒可處理的原始交易數(shù)航缀。目前以太坊每秒鐘可處理15筆交易左右,但要滿足主流采用堰怨,還需要數(shù)千倍的提升芥玉。
第二,隱私性备图。我們需要努力確保在使用區(qū)塊鏈應(yīng)用時(shí)不會泄露個人隱私數(shù)據(jù)灿巧。
第三皇型,安全性。 我們需要在技術(shù)上幫助社區(qū)最大程度地降低數(shù)字資產(chǎn)被盜的風(fēng)險(xiǎn)砸烦,私鑰遺失弃鸦、智能合約代碼漏洞等風(fēng)險(xiǎn)也要最小化。
在實(shí)用性方面也存在著一些挑戰(zhàn)幢痘,但相較于核心協(xié)議和平臺本身唬格,每個單獨(dú)應(yīng)用的開發(fā)團(tuán)隊(duì)對實(shí)用性有著更大的影響 。
但目前我們已經(jīng)有很多可靠的解決方案來應(yīng)對以上所有的挑戰(zhàn) 颜说。例如购岗,我們有專門的團(tuán)隊(duì)在研究狀態(tài)通道技術(shù),分片技術(shù)和Plasma技術(shù)來解決可擴(kuò)展性方面的問題门粪。拜占庭硬分叉已經(jīng)完成喊积,而且它的加密功能也達(dá)到可用狀態(tài),但在構(gòu)建基礎(chǔ)設(shè)施以及利用它們的方面還有很多細(xì)節(jié)工作要做玄妈。
安全性分為兩個方面乾吻。首先,要保證以太坊本身是安全的拟蜻。這將通過Casper權(quán)益證明算法(PoS)得到改進(jìn)绎签。目前算法已經(jīng)接近完成,測試網(wǎng)已經(jīng)運(yùn)行酝锅,而且其他語言的算法實(shí)現(xiàn)也已經(jīng)在編寫诡必。 其次,是以太坊上應(yīng)用程序的安全性搔扁。這將通過一系列技術(shù)手段來解決爸舒,包括以太坊上編程語言的創(chuàng)新,比如Vyper(https://vyper.online)稿蹲,以及形式化驗(yàn)證的改進(jìn)扭勉,和更完善的智能合約開發(fā)標(biāo)準(zhǔn)
7.Transaction 交易技術(shù)實(shí)現(xiàn)步驟有哪些?
1.部署一個合約场绿,合約地址為:
0x2bda4364bb076187f0ef0067a61ccb95d636e383
2.通過 geth js 交互控制臺從 coinbase 賬戶轉(zhuǎn) 1 個 ether 給合約地址
查看合約地址中 ether 數(shù)量:
web3.fromWei(web3.eth.getBalance("0x2bda4364bb076187f0ef0067a61ccb95d636e383"),"ether") 0
3.解鎖 coinbase 賬號
personal.unlockAccount(eth.coinbase, "account_pwd", 10000000000)
4.轉(zhuǎn)賬
eth.sendTransaction({from:eth.coinbase,to:"0x2bda4364bb076187f0ef0067a61ccb95d636e383",value:web3.toWei(1,"ether")})
5.當(dāng) geth 中的地址發(fā)生交易時(shí)剖效,geth 服務(wù)的日志(請查看Ethereum 私有鏈和 web3.js 使用如何設(shè)置 geth 日志) 會打印出類似下面這樣的日志:
I1112 11:51:15.338680 eth/api.go:1185] Tx(0xb3515f0245f0f14f2756e45f402a8dd058b387e596ca50fb3ec9213390596c17) to: 0x2bda4364bb076187f0ef0067a61ccb95d636e383
6.此時(shí)說明交易已經(jīng)發(fā)生了,等待被區(qū)塊鏈確認(rèn)狀態(tài)(pending)
7.可以開啟挖礦miner.start(1)來確認(rèn)這筆交易
8.確認(rèn)后關(guān)閉挖礦?miner.stop()
9.此時(shí)再查看合約地址上的 ether 數(shù)量焰盗,你就可以發(fā)現(xiàn)增加了一個
不管什么類型的交易璧尸,都包含:
nonce:發(fā)送者發(fā)送交易數(shù)的計(jì)數(shù)
gasPrice:發(fā)送者愿意支付執(zhí)行交易所需的每個gas的Wei數(shù)量
gasLimit:發(fā)送者愿意為執(zhí)行交易支付gas數(shù)量的最大值。這個數(shù)量被設(shè)置之后在任何計(jì)算完成之前就會被提前扣掉
to:接收者的地址熬拒。在合約創(chuàng)建交易中爷光,合約賬戶的地址還沒有存在,所以值先空著
value:從發(fā)送者轉(zhuǎn)移到接收者的Wei數(shù)量澎粟。在合約創(chuàng)建交易中蛀序,value作為新建合約賬戶的開始余額
v,r,s:用于產(chǎn)生標(biāo)識交易發(fā)生著的簽名
init(只有在合約創(chuàng)建交易中存在):用來初始化新合約賬戶的EVM代碼片段欢瞪。init值會執(zhí)行一次,然后就會被丟棄徐裸。當(dāng)init第一次執(zhí)行的時(shí)候遣鼓,它返回一個賬戶代碼體,也就是永久與合約賬戶關(guān)聯(lián)的一段代碼重贺。
data(可選域骑祟,只有在消息通信中存在):消息通話中的輸入數(shù)據(jù)(也就是參數(shù))。例如气笙,如果智能合約就是一個域名注冊服務(wù)次企,那么調(diào)用合約可能就會期待輸入域例如域名和IP地址
8.合約能夠向其他合約發(fā)送消息,那么如何理解這個消息潜圃?
在以太坊狀態(tài)全局范圍內(nèi)的合約可以與在相同范圍內(nèi)的合約進(jìn)行通信缸棵。他們是通過“消息”或者“內(nèi)部交易”進(jìn)行通信的。我們可以認(rèn)為消息或內(nèi)部交易類似于交易谭期,不過與交易有著最大的不同點(diǎn)—它們不是由外部擁有賬戶產(chǎn)生的堵第。相反,他們是被合約產(chǎn)生的崇堵。它們是虛擬對象型诚,與交易不同,沒有被序列化而且只存在與以太坊執(zhí)行環(huán)境鸳劳。
當(dāng)一個合約發(fā)送一個內(nèi)部交易給另一個合約,存在于接收者合約賬戶相關(guān)聯(lián)的代碼就會被執(zhí)行
9.以太坊客戶端是錢包嗎也搓?目前常用的有哪些赏廓?各有什么優(yōu)缺點(diǎn)?
1. Mist
說到以太坊錢包傍妒,第一個要說的當(dāng)然就是Ethereum官方錢包+瀏覽器 Mist幔摸。Mist是一個錢包(全節(jié)點(diǎn)錢包通俗的來說就是同步了全部的以太坊區(qū)塊信息的錢包)。也就是說打開錢包后颤练,電腦會自動同步全部的以太坊區(qū)塊信息既忆,如果設(shè)備和網(wǎng)絡(luò)的條件過關(guān)的情況下,目前(17年9月8日)大概需要半天左右的時(shí)間嗦玖。
優(yōu)勢:
安全度高患雇,不需要經(jīng)過第三方發(fā)起交易
節(jié)點(diǎn)未同步完成之前無法查看地址余額
劣勢:
無法調(diào)整Gas Price
對網(wǎng)絡(luò)要求高,需要連接節(jié)點(diǎn)宇挫,才能發(fā)起交易
2. Parity
原以太坊基金會部分成員苛吱,開發(fā)的錢包。功能強(qiáng)大器瘪,也是一個全節(jié)點(diǎn)錢包翠储。??PS:主要掌握這個錢包就行了
優(yōu)勢:
安全度高绘雁,不需要經(jīng)過第三方發(fā)起交易
劣勢:
對網(wǎng)絡(luò)要求高,需要連接節(jié)點(diǎn)才能發(fā)起交易
下載地址:?http://ethfans.org/wikis/Ethcore-Parity-Mirror
3. MyEtherWallet
MyEtherWallet 作為一個輕錢包援所,上手難道不大庐舟,無需下載,在直接在網(wǎng)頁上就可以完成所有的操作住拭。在MyEtherWallet上生成的私鑰由用戶自我保管继阻,平臺方并無備份。
優(yōu)勢:
方便快捷废酷,連網(wǎng)即可發(fā)起交易
劣勢:
交易時(shí)需要上傳私鑰(使用時(shí)認(rèn)準(zhǔn)唯一網(wǎng)址:?https://www.myetherwallet.com?謹(jǐn)防釣魚網(wǎng)站 )
4. imToken
移動端錢包瘟檩,操作簡便,容易上手澈蟆,功能齊全墨辛,在imToken上生成的錢包私鑰保存在手機(jī)本地,平臺方并無備份趴俘。
優(yōu)勢:
移動端錢包睹簇,操作界面十分友好,連網(wǎng)即可發(fā)起交易
中國團(tuán)隊(duì)寥闪,客服好溝通太惠,反應(yīng)速度快
劣勢:
未開源
下載地址:?https://token.im/
5. MetaMask
MetaMask的錢包屬性偏弱,更多的是起到使Chrome瀏覽器兼容以太坊網(wǎng)絡(luò)的作用
優(yōu)點(diǎn):
通過添加錢包插件將Chrome變成兼容以太坊的瀏覽器
(公司的狐貍logo很可愛)
缺點(diǎn):
不支持自動顯示Erc20代幣疲憋。(需要用戶自己添加代幣的智能合約地址)
下載地址:?https://metamask.io/
6. Legder
硬件錢包凿渊,安全性頗高的錢包,官方提供的軟件功能較為局限缚柳“T啵可以配合MyEtherWallet使用。
優(yōu)點(diǎn):
安全性高
缺點(diǎn):
官方軟件功能差秋忙,無法調(diào)整gas limit 和 gas price
價(jià)格貴并且較難買到
10.Geth是什么彩掐?有哪些命令?
以太坊客戶端Geth在以太坊智能合約開發(fā)中最常用的工具(必備開發(fā)工具)灰追,一個多用途的命令行工具堵幽。
命令用法
geth [選項(xiàng)] 命令 [命令選項(xiàng)] [參數(shù)…]
版本:
1.7.3-stable
命令:
account 管理賬戶
attach 啟動交互式
JavaScript環(huán)境(連接到節(jié)點(diǎn))
bug 上報(bào)bug?Issues
console 啟動交互式JavaScript環(huán)境
copydb 從文件夾創(chuàng)建本地鏈
dump Dump(分析)一個特定的塊存儲
dumpconfig 顯示配置值
export 導(dǎo)出區(qū)塊鏈到文件
import 導(dǎo)入一個區(qū)塊鏈文件
init 啟動并初始化一個新的創(chuàng)世紀(jì)塊
js 執(zhí)行指定的JavaScript文件(多個)
license 顯示許可信息
makecache 生成ethash驗(yàn)證緩存(用于測試)
makedag 生成ethash 挖礦DAG(用于測試)
monitor 監(jiān)控和可視化節(jié)點(diǎn)指標(biāo)
removedb 刪除區(qū)塊鏈和狀態(tài)數(shù)據(jù)庫
version 打印版本號
wallet 管理Ethereum預(yù)售錢包
help,h 顯示一個命令或幫助一個命令列表
11.Parity是什么?有什么命令弹澎?
是以太坊錢包
這個錢包的特點(diǎn)有幾個朴下,一個是它因?yàn)槭侵匦聦懙拇a,所以跑起來更快裁奇,占用系統(tǒng)的資源更少桐猬。第二個特點(diǎn)是它的同步功能做得更好,所以其他錢包很久不能同步的的時(shí)候刽肠,它還是能夠很快同步溃肪。第三個特點(diǎn)免胃,它雖然是一個全節(jié)點(diǎn)錢包,但是它把那些很早的區(qū)塊只留下了區(qū)塊頭惫撰,其他內(nèi)容刪減了羔沙,所以同步好的區(qū)塊的大小也就幾個G,而如果是用以太坊的官方全節(jié)點(diǎn)錢包厨钻,光區(qū)塊大概就得有40個G扼雏。第四個特點(diǎn),這個對ICO特別有用夯膀,就是它能夠設(shè)置定時(shí)發(fā)送交易诗充,能夠在到達(dá)某個區(qū)塊數(shù)的時(shí)候自動發(fā)送轉(zhuǎn)賬交易。
12.web3.js是什么诱建?有什么優(yōu)缺點(diǎn)蝴蜓?
web3.js是以太坊提供的一個Javascript庫,它封裝了以太坊的JSON RPC API俺猿,提供了一系列與區(qū)塊鏈交互的Javascript對象和函數(shù)茎匠,包括查看網(wǎng)絡(luò)狀態(tài),查看本地賬戶押袍、查看交易和區(qū)塊诵冒、發(fā)送交易、編譯/部署智能合約谊惭、調(diào)用智能合約等汽馋,其中最重要的就是與智能合約交互的API。
Web3.js 在 npm 里作為一個節(jié)點(diǎn)模塊午笛,在 bower 和 component 里作為一個可嵌入的 js 和一個 meteor.js 包惭蟋。
優(yōu)缺點(diǎn)? ?這個我暫時(shí)還不是很清楚药磺,先留這里
13.Gas是什么?在以太坊上有什么作用煤伟?和智能合約有什么關(guān)系癌佩?
ps:gas可以有效的防止惡意攻擊,因?yàn)閾碛術(shù)as的大部分都是以太坊的內(nèi)部人員便锨。
智能合約围辙,就是一些代碼,運(yùn)行整個分布式網(wǎng)絡(luò)中放案。由于網(wǎng)絡(luò)中的每一個節(jié)點(diǎn)都是一個全節(jié)點(diǎn)姚建。這樣的好處是容錯性強(qiáng),壞處是效率低吱殉,消耗資源與時(shí)間(譯者注:原來只在一個節(jié)點(diǎn)執(zhí)行一次就行掸冤,現(xiàn)在所有節(jié)點(diǎn)中每一個厘托,都要執(zhí)行一模一樣的運(yùn)算)。因?yàn)閳?zhí)行計(jì)算要花錢稿湿,而要執(zhí)行的運(yùn)算量與代碼直接相關(guān)铅匹。所以,每個在網(wǎng)絡(luò)運(yùn)行的底層操作都需要一定量的gas饺藤。gas只是一個名字包斑,它代表的是執(zhí)行所需要花費(fèi)的成本(注:由于以太坊是圖靈完備的,隨便一個死循環(huán)就將導(dǎo)致網(wǎng)絡(luò)不可用涕俗,所以引入了gas的概念)罗丰。整個分布式網(wǎng)絡(luò)引入了強(qiáng)制限制,來避免停機(jī)問題再姑。因此如果你寫一個死循環(huán)萌抵,當(dāng)gas耗盡后,網(wǎng)絡(luò)就會拒絕執(zhí)行接下來的操作询刹,并且回滾你之前的所有操作谜嫉。
gas的價(jià)格由市場決定,類似于比特幣的交易費(fèi)機(jī)制凹联。如果你的gas價(jià)格高沐兰,節(jié)點(diǎn)則將優(yōu)先因?yàn)槔鎲栴}打包你的交易。
一般來說蔽挠,在Ethereum中計(jì)算和存儲東西比在傳統(tǒng)環(huán)境中做的更為昂貴住闯,但是,Ethereum為您的代碼提供了上述我們討論過的那些好的屬性澳淑,這可能是一樣有價(jià)值的比原。
一般來說,在以太坊網(wǎng)上讀取狀態(tài)是免費(fèi)的杠巡,只有寫入狀態(tài)是收費(fèi)的
在以太坊中一個比較重要的概念就是費(fèi)用(fees)量窘,由以太坊網(wǎng)絡(luò)上的交易而產(chǎn)生的每一次計(jì)算,都會產(chǎn)生費(fèi)用—沒有免費(fèi)的午餐氢拥。這個費(fèi)用是以稱之為”gas”的來支付蚌铜。
gas就是用來衡量在一個具體計(jì)算中要求的費(fèi)用單位。gas price就是你愿意在每個gas上花費(fèi)Ether的數(shù)量嫩海,以“gwei”進(jìn)行衡量冬殃。“Wei”是Ether的最小單位叁怪,1Ether表示10^18Wei. 1gwei是1,000,000,000 Wei审葬。
對每個交易,發(fā)送者設(shè)置gas limit和gas price。gas limit和gas price就代表著發(fā)送者愿意為執(zhí)行交易支付的Wei的最大值涣觉。
例如痴荐,假設(shè)發(fā)送者設(shè)置gas limit為50,000,gas price為20gwei旨枯。這就表示發(fā)送者愿意最多支付50,000*20gwei = 1,000,000,000,000,000 Wei = 0.001 Ether來執(zhí)行此交易蹬昌。
記住gas limit代表用戶愿意花費(fèi)在gas上的錢的最大值。如果在他們的賬戶余額中有足夠的Ether來支付這個最大值費(fèi)用攀隔,那么就沒問題皂贩。在交易結(jié)束時(shí)任何未使用的gas都會被返回給發(fā)送者,以原始費(fèi)率兌換昆汹。
在發(fā)送者沒有提供足夠的gas來執(zhí)行交易明刷,那么交易執(zhí)行就會出現(xiàn)“gas不足”然后被認(rèn)為是無效的。在這種情況下满粗,交易處理就會被終止以及所有已改變的狀態(tài)將會被恢復(fù)辈末,最后我們就又回到了交易之前的狀態(tài)—完完全全的之前狀態(tài)就像這筆交易從來沒有發(fā)生。因?yàn)闄C(jī)器在耗盡gas之前還是為計(jì)算做出了努力映皆,
所以理論上挤聘,將不會有任何的gas被返回給發(fā)送者。
這些gas的錢到底去了哪里捅彻?發(fā)送者在gas上花費(fèi)的所有錢都發(fā)送給了“受益人”地址组去,通常情況下就是礦工的地址摔笤。因?yàn)榈V工為了計(jì)算和驗(yàn)證交易做出了努力侠仇,所以礦工接收gas的費(fèi)用作為獎勵。
通常果复,發(fā)送者愿意支付更高的gas price缭裆,礦工從這筆交易總就能獲得更多的價(jià)值键闺。因此,礦工也就更加愿意選擇這筆交易澈驼。這樣的話辛燥,礦工可以自由的選擇一筆交易自己愿意驗(yàn)證或忽略。為了引導(dǎo)發(fā)送者應(yīng)該設(shè)置gas price為多少缝其,礦工可以選擇建議一個最小的gas值他們愿意執(zhí)行一個交易购桑。
存儲也有費(fèi)用
gas不僅僅是用來支付計(jì)算這一步的費(fèi)用,而且也用來支付存儲的費(fèi)用氏淑。存儲的總費(fèi)用與所使用的32位字節(jié)的最小倍數(shù)成比例。
存儲費(fèi)用有一些比較細(xì)微的方面硕噩。比如假残,由于增加了的存儲增加了所有節(jié)點(diǎn)上的以太坊狀態(tài)數(shù)據(jù)庫的大小,所以激勵保持?jǐn)?shù)據(jù)存儲量小。為了這個原因辉懒,如果一個交易的執(zhí)行有一步是清除一個存儲實(shí)體阳惹,那么為執(zhí)行這個操作的費(fèi)用就會被放棄,并且由于釋放存儲空間的退款就會被返回給發(fā)送者眶俩。
費(fèi)用的作用是什么莹汤?
以太坊可以運(yùn)作的一個重要方面就是每個網(wǎng)絡(luò)執(zhí)行的操作同時(shí)也被全節(jié)點(diǎn)所影響。然而颠印,計(jì)算的操作在以太坊虛擬機(jī)上是非常昂貴的纲岭。因此,以太坊智能合約最好是用來執(zhí)行最簡單的任務(wù)线罕,比如運(yùn)行一個簡單的業(yè)務(wù)邏輯或者驗(yàn)證簽名和其他密碼對象止潮,而不是用于復(fù)雜的操作,比如文件存儲钞楼,電子郵件喇闸,或機(jī)器學(xué)習(xí),這些會給網(wǎng)絡(luò)造成壓力询件。施加費(fèi)用防止用戶使網(wǎng)絡(luò)超負(fù)荷燃乍。
以太坊是一個圖靈完備語言(短而言之,圖靈機(jī)器就是一個可以模擬任何電腦算法的機(jī)器宛琅。對于圖靈機(jī)器不太熟悉的人可以看看這個?和這個?)刻蟹。這就允許有循環(huán),并使以太坊受到停機(jī)問題?的影響夯秃,這個問題讓你無法確定程序是否無限制的運(yùn)行座咆。如果沒有費(fèi)用的話,惡意的執(zhí)行者通過執(zhí)行一個包含無限循環(huán)的交易就可以很容易的讓網(wǎng)絡(luò)癱瘓而不會產(chǎn)生任何反響仓洼。因此介陶,費(fèi)用保護(hù)網(wǎng)絡(luò)不受蓄意攻擊。
你也許會想色建,“為什么我們還需要為存儲付費(fèi)哺呜?”其實(shí)就像計(jì)算一樣,以太坊網(wǎng)絡(luò)上的存儲是整個網(wǎng)絡(luò)都必須要負(fù)擔(dān)的成本箕戳。
14.etherbase是什么某残?有什么用?
為了賺取以太幣陵吸,你必須有etherbase(或coinbase)地址玻墅。這個etherbase默認(rèn)為你生成的第一個賬戶。如果你沒有etherbase地址壮虫,geth –mine就不會開啟澳厢。
你可以在命令行重新設(shè)置etherbase:
1
2
geth --etherbase 1 --mine 2>> geth.log // 1 is index: second account by creation order OR
geth --etherbase '0xa4d8e9cae4d04b093aac82e6cd355b6b963fb7ff' --mine 2>> geth.log
你也可以在控制臺重新設(shè)置etherbase:
1miner.setEtherbase(eth.accounts[2])
注意你的etherbase不必是本地賬戶地址环础,只要是現(xiàn)存的就可以。
15.coinbase和etherbase相同嗎剩拢?
不同? coinbase是指本地賬戶线得,意思是你設(shè)置的? etherbase是默認(rèn)給你生成的
16.balance(余額)最多可以顯示小數(shù)點(diǎn)后幾位?
18位
17.GHOST協(xié)議是什么徐伐?有什么作用贯钩?
不論什么時(shí)候只要多個路徑產(chǎn)生了,一個”分叉“就會出現(xiàn)办素。我們通常都想避免分叉角雷,因?yàn)樗鼈儠茐南到y(tǒng),強(qiáng)制人們?nèi)ミx擇哪條鏈?zhǔn)撬麄兿嘈诺逆湣?/p>
為了確定哪個路徑才是最有效的以及防止多條鏈的產(chǎn)生摸屠,以太坊使用了一個叫做“GHOST協(xié)議(GHOST protocol.)”的數(shù)學(xué)機(jī)制谓罗。
GHOST?=?Greedy Heaviest Observed Subtree
簡單來說,GHOST協(xié)議就是讓我們必須選擇一個在其上完成計(jì)算最多的路徑季二。一個方法確定路徑就是使用最近一個區(qū)塊(葉子區(qū)塊)的區(qū)塊號檩咱,區(qū)塊號代表著當(dāng)前路徑上總的區(qū)塊數(shù)(不包含創(chuàng)世紀(jì)區(qū)塊)。區(qū)塊號越大胯舷,路徑就會越長刻蚯,就說明越多的挖礦算力被消耗在此路徑上以達(dá)到葉子區(qū)塊。使用這種推理就可以允許我們贊同當(dāng)前狀態(tài)的權(quán)威版本桑嘶。
18.梅克爾帕特里夏樹(MPT:Merkle Patricia Tree)如何散列炊汹?作用是什么?
一種數(shù)據(jù)結(jié)構(gòu)逃顶,它會存儲每個帳戶的狀態(tài)(存儲鍵值對關(guān)系)讨便。這個樹的建立是通過從每個節(jié)點(diǎn)開始,然后將節(jié)點(diǎn)分成多達(dá)16個組以政,然后散列每個組霸褒,然后對散列結(jié)果繼續(xù)散列,直到整個樹有一個最后的“根散列”盈蛮。
19.Frontier(前沿)是什么废菱?
「前沿」是以太坊的最初版本, 只有命令行界面抖誉,主要使用者是開發(fā)者
20.Homestead(家園)是什么殊轴?
「家園」增加了類似 Windows系統(tǒng)那樣的圖形界面普通用戶也可以方便地體驗(yàn)以太坊的功能
21.Metropolis(大都會)是什么?
「大都會」加入了—個像谷歌瀏覽器那樣的瀏覽器袒炉,除了使用方便之外旁理,它還擁有一個強(qiáng)大的應(yīng)用商店,可以安裝插件實(shí)現(xiàn)更多功能我磁。第三個版本在2017年年底發(fā)布了出來
22.拜占庭是什么韧拒?在以太坊上如何解決怎么問題淹接?
拜占庭硬分叉在第437萬個區(qū)塊高度發(fā)生,時(shí)間是2017年10月16日叛溢,引入了zk-Snarks 及 抽象賬戶等。
23.君士坦丁堡是什么劲适?能夠解決什么問題楷掉?
預(yù)計(jì)在2018年實(shí)施, 主要的特性就是平滑處理掉所有由于"拜占庭"所引發(fā)的問題霞势,并引入 PoW 和 PoS 的混合鏈模式烹植。
24.Serenity(寧靜)是什么?
「寧靜」目前還沒有確定發(fā)布時(shí)間愕贡,預(yù)計(jì)它會將前三個版本采用的工作量證明(Pow) 共識機(jī)制切換到混合的共識機(jī)制
25.零知識證明是什么草雕?有哪些零知識證明的例子?
簡單說就是固以,在不透露交易細(xì)節(jié)的情況下驗(yàn)證了交易記錄墩虹。零知識證明可以有效保護(hù)交易隱私,隱藏交易來源并防止追溯憨琳,同時(shí)也能保證交易是安全的诫钓,因?yàn)槿魏卧噲D修改交易的行為都無法通過驗(yàn)證。
例子:零知識證明應(yīng)用最廣的就是洗錢和跨境支付篙螟。
1)A要向B證明自己擁有某個房間的鑰匙菌湃,假設(shè)該房間只能用鑰匙打開鎖,而其他任何方法都打不開遍略。這時(shí)有2個方法:
①A把鑰匙出示給B惧所,B用這把鑰匙打開該房間的鎖,從而證明A擁有該房間的正確的鑰匙绪杏。
②B確定該房間內(nèi)有某一物體下愈,A用自己擁有的鑰匙打開該房間的門,然后把物體拿出來出示給B寞忿,從而證明自己確實(shí)擁有該房間的鑰匙驰唬。
后面的②方法屬于零知識證明。好處在于在整個證明的過程中腔彰,B始終不能看到鑰匙的樣子叫编,從而避免了鑰匙的泄露。
2)A擁有B的公鑰霹抛,A沒有見過B搓逾,而B見過A的照片,偶然一天2人見面了杯拐,B認(rèn)出了A霞篡,但A不能確定面前的人是否是B世蔗,這時(shí)B要向A證明自己是B,也有2個方法朗兵。
①B把自己的私鑰給A污淋,A用這個私鑰對某個數(shù)據(jù)加密,然后用B的公鑰解密余掖,如果正確寸爆,則證明對方確實(shí)是B。
②A給出一個隨機(jī)值盐欺,并使用B的公鑰對其加密赁豆,然后將加密后的數(shù)據(jù)交給B,B用自己的私鑰解密并展示給A冗美,如果與A給出的隨機(jī)值相同魔种,則證明對方是B。后面的方法屬于零知識證明粉洼。
3)有一個缺口環(huán)形的長廊节预,出口和入口距離非常近(在目距之內(nèi)),但走廊中間某處有一道只能用鑰匙打開的門漆改,A要向B證明自己擁有該門的鑰匙心铃。采用零知識證明,則B看著A從入口進(jìn)入走廊挫剑,然后又從出口走出走廊去扣,這時(shí)B沒有得到任何關(guān)于這個鑰匙的信息,但是完全可以證明A擁有鑰匙樊破。
25.PoS是什么愉棱?和POW有什么區(qū)別?缺點(diǎn)是什么哲戚?
POS 就是基于擁有的數(shù)量和時(shí)間獲得證明的共識算法奔滑,它不像POW注重算力競爭,而是強(qiáng)化了擁有的意義顺少,比如在銀行存的錢越多朋其,存的越長 則收益越大
缺點(diǎn):POS也存在一些問題,比如馬太效應(yīng)脆炎,最后系統(tǒng)決策和收益依然會集中在少數(shù)寡頭手里梅猿,除此之外,當(dāng)?shù)V工熱潮退卻后秒裕,如何保證有效的工作節(jié)點(diǎn)數(shù)量來完成運(yùn)算袱蚓,也是值得觀察的
26.Casper 的共識算法是什么樣的?
以太坊中PoS協(xié)議的實(shí)現(xiàn)几蜻, 剛開始每100個區(qū)塊將有一個采用PoS協(xié)議挖出
25.抽象賬戶是什么喇潘?有什么作用体斩?
在的以太坊有兩類賬戶:即外部賬戶和合約賬戶,以太坊正在試圖模糊二者的界限颖低,即你可以同時(shí)擁有合約賬戶和外部賬戶絮吵,這種做法本質(zhì)上就是讓用戶按照合約賬戶的格式來定義外部賬戶。
26.難度炸彈是什么枫甲?有什么作用源武?
為了確保以太坊的礦工能加入到新鏈條中來,開發(fā)團(tuán)隊(duì)引入了"難度炸彈"機(jī)制想幻。它會使難度系數(shù)呈指數(shù)增加以至于讓挖礦變得幾乎不可能的。
27.以太坊硬分叉是什么话浇?能解決什么問題脏毯?有什么缺點(diǎn)?
所謂硬分叉是分叉方約定幔崖,在某個區(qū)塊節(jié)點(diǎn)開始食店,啟用新的系統(tǒng)架構(gòu)繼續(xù)前進(jìn),不再和主鏈保持一致赏寇,但同時(shí)繼承了該節(jié)點(diǎn)前的所有區(qū)塊吉嫩。在這個節(jié)點(diǎn)之后,雙方各自挖各自的礦嗅定,各自爆各自的區(qū)塊自娩,各走各的路。比如:公司有一本對公賬本渠退,有一本內(nèi)部賬本忙迁,兩個賬本完全獨(dú)立
能解決什么問題:在我看來有兩點(diǎn):1.黑客發(fā)起針對The DAO智能合約多個漏洞的攻擊,其中也包含了遞歸調(diào)用漏洞碎乃,并向一個匿名地址轉(zhuǎn)移了3600萬個以太幣姊扔,導(dǎo)致以太坊選擇硬分叉啟用新的系統(tǒng)架構(gòu);2.很多人為了發(fā)行ICO通過以太坊割點(diǎn)韭菜的錢
缺點(diǎn):硬分叉不需要主鏈允許或通過梅誓,任何人都可以發(fā)起硬分叉恰梢,都可以基于自己的理解和判斷發(fā)起一個新的分支,但對于信仰者來說梗掰,每個分叉都是對共識的撕裂嵌言,是在破壞共識。共識算法本身就是防范故障或者惡意分叉的愧怜,而人為強(qiáng)行分叉顯然是算法所不能處理的呀页。
28.ERC-20是什么?在什么地方會用到拥坛?
代幣合約標(biāo)準(zhǔn)蓬蝶,一系列通過以太坊智能合約發(fā)布的代幣制定了代幣發(fā)放的通用規(guī)則尘分。該標(biāo)準(zhǔn)是目前通過ICO發(fā)行代幣的基礎(chǔ)準(zhǔn)則。
該標(biāo)準(zhǔn)能夠確蓖璺眨基于以太坊的代幣在整個生態(tài)系統(tǒng)中以一種可預(yù)測的方式進(jìn)行培愁,使去中心化應(yīng)用程序和智能合約可以在整個平臺上彼此協(xié)作,所有代幣都遵循一個固定的安全標(biāo)準(zhǔn)缓窜。
ERC-20 標(biāo)準(zhǔn)是在2015年11月份推出的定续,使用這種規(guī)則的代幣,表現(xiàn)出一種通用的和可預(yù)測的方式禾锤。簡單地說私股,任何 ERC-20 代幣都能立即兼容以太坊錢包(幾乎所有支持以太幣的錢包,包括Jaxx恩掷、MEW倡鲸、imToken等,也支持 erc-20的代幣)黄娘,由于交易所已經(jīng)知道這些代幣是如何操作的峭状,它們可以很容易地整合這些代幣。這就意味著逼争,在很多情況下优床,這些代幣都是可以立即進(jìn)行交易的。
ERC20 是各個代幣的標(biāo)準(zhǔn)接口誓焦。ERC20 代幣僅僅是以太坊代幣的子集胆敞。為了充分兼容 ERC20,開發(fā)者需要將一組特定的函數(shù)(接口)集成到他們的智能合約中罩阵,以便在高層面能夠執(zhí)行以下操作:
獲得代幣總供應(yīng)量
獲得賬戶余額
轉(zhuǎn)讓代幣
批準(zhǔn)花費(fèi)代幣
ERC20 讓以太坊區(qū)塊鏈上的其他智能合約和去中心化應(yīng)用之間無縫交互竿秆。一些具有部分但非所有ERC20標(biāo)準(zhǔn)功能的代幣被認(rèn)為是部分 ERC20兼容,這還要視其具體缺失的功能而定稿壁,但總體是它們?nèi)匀缓苋菀着c外部交互幽钢。
ERC-20標(biāo)準(zhǔn)還有待完善。其中一個障礙是傅是,將令牌直接發(fā)送給令牌的智能合同將導(dǎo)致資金損失匪燕。這是因?yàn)橐粋€令牌的合同只會跟蹤和分配資金。例如喧笔,當(dāng)您從錢包中向另一個用戶發(fā)送令牌時(shí)帽驯,該錢包將調(diào)用令牌的合約來更新數(shù)據(jù)庫。所以如果您試圖將令牌直接傳輸?shù)搅钆频暮霞s中书闸,那么由于該令牌的合約無法響應(yīng)尼变,所以金錢就“丟失”了。
ERC223要解決的首要問題是什么?
自從引入ERC20令牌標(biāo)準(zhǔn)以來嫌术,幾乎所有的基于以太坊的令牌都成功的接受了這個新標(biāo)準(zhǔn)哀澈。然而其自身的缺點(diǎn)需要及時(shí)解決,這便是ERC223令牌誕生的原因度气。
ERC20標(biāo)準(zhǔn)無法通過接收方合同處理傳入的交易割按。這是該令牌存在的最大問題,也是開發(fā)者一直希望改進(jìn)的地方磷籍。ERC20令牌無法將令牌發(fā)送給一個與這些令牌不兼容的契約适荣,也正因?yàn)檫@樣,部分資金存在丟失的風(fēng)險(xiǎn)院领。
Reddit上的一篇文章指出弛矛,由于被發(fā)送到“錯誤”的合同上,大約價(jià)值40萬美元的ERC20令牌被困比然,這對整個以太坊生態(tài)系統(tǒng)而言是一個巨大的威脅汪诉。幸運(yùn)的是,ERC223令牌可以解決這一難題谈秫,前提是該令牌能夠獲得批準(zhǔn)并被引入。
ERC223令牌標(biāo)準(zhǔn)將向現(xiàn)有的ERC20標(biāo)準(zhǔn)引入一個新功能鱼鼓,以防止意外轉(zhuǎn)移的發(fā)生拟烫。ERC223令牌標(biāo)準(zhǔn)可以防止令牌在以太坊網(wǎng)絡(luò)上丟失。
假設(shè) ERC223 令牌標(biāo)準(zhǔn)能夠取代ERC20成為新的標(biāo)準(zhǔn)迄本,現(xiàn)有令牌的發(fā)行方需要做一些艱難的決定硕淑。因?yàn)椋瑥默F(xiàn)實(shí)情況來看嘉赎,不管用何種方式置媳,從ERC20轉(zhuǎn)換到ERC223是不可能的,同樣的公条,所有ERC20令牌都需要在ERC223標(biāo)準(zhǔn)下重新部署拇囊。這也意味著任何交易平臺的上市都需要更新他們的信息和地址。這是一個艱苦的過程靶橱,這也就意味著寥袭,在未來很少有現(xiàn)有的令牌被有效地轉(zhuǎn)換為ERC223。
正如Alex van de Sande在Reddit上指出的那樣关霸,“更方便”的過程可能是創(chuàng)建新的令牌传黄,它們是通過持有舊令牌的合同支持的。這可能是大多數(shù)項(xiàng)目最合理的選擇队寇,但只有時(shí)間才能確定哪些選項(xiàng)將被實(shí)施
29.EIPs是什么膘掰?比原有舊協(xié)議有哪些改進(jìn)?
Ethereum Improvement Proposals - 以太坊改進(jìn)協(xié)議
2017年10月16日下午1點(diǎn)22分佳遣,全球市值排名第二的加密貨幣以太坊執(zhí)行了第5次硬分叉识埋。這次硬分叉將帶來一系列的以太坊改進(jìn)提案(EIPs)凡伊。
具體而言:硬分叉帶來的改變包括以下方面:
1、增加‘REVERT’操作符惭聂,允許處理錯誤不需要花費(fèi)掉所有的gas(EIP 140)
2窗声、現(xiàn)在交易接收方可以包括一個狀態(tài)字段,用以指出交易成功還是失敗(EIP 658)
3辜纲、在alt_bn128 (EIP 196)和配對檢查上 (EIP197)增加橢圓曲線和標(biāo)量乘法笨觅,允許ZK-Snarks和其它加密數(shù)
4、支持大數(shù)模冪 (EIP 198)耕腾,實(shí)現(xiàn)RSA簽名驗(yàn)證和其它加密應(yīng)用见剩。
5、支持可變長度返回值 (EIP 211)
6扫俺、增加‘STATICCALL’操作符苍苞,允許對其它合約進(jìn)行非狀態(tài)改變調(diào)用(EIP 214)
7、修改難度調(diào)整公式狼纬,將叔塊計(jì)算在內(nèi)(EIP100)
8羹呵、冰河期/難度炸彈延期一年,區(qū)塊獎勵從5個以太坊降到3個以太坊 (EIP 649)
30.Ommer是什么疗琉?有什么缺點(diǎn)冈欢?
是一個區(qū)塊的父區(qū)塊與當(dāng)前區(qū)塊父區(qū)塊的父區(qū)塊是相同的。
由于以太坊區(qū)塊生產(chǎn)時(shí)間(大概15秒左右)比比特幣(大概10分鐘左右)要快很多盈简。更短的區(qū)塊生產(chǎn)時(shí)間的一個缺點(diǎn)就是:更多的競爭區(qū)塊會被礦工發(fā)現(xiàn)凑耻。
這些競爭區(qū)塊同樣也被稱為“孤區(qū)塊”(也就是被挖出來但是不會被添加到主鏈上的區(qū)塊)
Ommers的目的就是為了幫助獎勵礦工納入這些孤區(qū)塊,Ommer區(qū)塊會收到比全區(qū)塊少一點(diǎn)的獎勵柠贤。
31.預(yù)言機(jī)是什么香浩?有什么作用?
通過向智能合約提供數(shù)據(jù)臼勉,它現(xiàn)實(shí)世界和區(qū)塊鏈之間的橋梁
32.公有鏈?zhǔn)鞘裁矗?/p>
公有鏈?zhǔn)悄壳拔覀兪熘谋忍貛帕诳裕蕴唬鸩◣胚@些坚俗,每個人都可以參與镜盯,每個人都可以在上面進(jìn)行交易,如果支持智能合約猖败,每個人也都可以發(fā)布自己的應(yīng)用速缆。
33.聯(lián)盟鏈?zhǔn)鞘裁矗?/p>
聯(lián)盟鏈?zhǔn)侵敢恍┰敢獗舜藢?shí)現(xiàn)共信的機(jī)構(gòu)和組織共同組建的,為各自機(jī)構(gòu)提供共識信用和價(jià)值傳遞的平臺恩闻,這樣只要聯(lián)盟不存在一家獨(dú)大的情況艺糜,還是可以實(shí)現(xiàn)共識基礎(chǔ),而且相對來說可能價(jià)值更大一些,我其實(shí)覺得聯(lián)盟鏈?zhǔn)怯幸恍┦袌鰴C(jī)會的破停。
34.私有鏈?zhǔn)鞘裁矗?/p>
私有鏈目前是很多金融機(jī)構(gòu)正在考慮的翅楼,在自己的體系內(nèi)搭建一套區(qū)塊鏈系統(tǒng)極速快三源碼出售(www.1159880099.com)QQ1159880099,不公開對外服務(wù)真慢,但是提供內(nèi)部的共識網(wǎng)絡(luò)毅臊,解決諸如信用證書,合同管理等問題黑界。但私有鏈缺乏共識管嬉,也需要公權(quán)機(jī)構(gòu)背書,與傳統(tǒng)中心化相比價(jià)值有限朗鸠,只能說防黑客篡改可能略微有點(diǎn)意義蚯撩。
35.測試網(wǎng)絡(luò)有哪幾種?各自在什么情況下使用烛占?如何使用胎挎?
以太坊用來測試功能的網(wǎng)絡(luò),比如拜占庭分叉之前先在測試網(wǎng)絡(luò)(Ropsten)上運(yùn)行一段時(shí)間忆家,穩(wěn)定后再發(fā)布到公有鏈(正式網(wǎng)絡(luò))犹菇。
以太坊測試網(wǎng)絡(luò)有:
Olympic測試網(wǎng)絡(luò) - 早期的一個測試網(wǎng)絡(luò),已不再使用
Ropsten測試網(wǎng)絡(luò) - 使用Pow芽卿,和當(dāng)前的公有鏈環(huán)境一致项栏,2016/11發(fā)布。
Kovan測試網(wǎng)絡(luò) - 僅parity錢包支持蹬竖,使用PoA共識
Rinkeby測試網(wǎng)絡(luò) - 僅parity錢包支持,使用PoA共識
36.DAO(decentralized autonomous organization)去中心自治組織作用是什么流酬?有什么局限性币厕?
這是一個組織(就像,一群人)芽腾,其中旦装,使用代碼來保證最終的強(qiáng)制執(zhí)行,而不是使用傳統(tǒng)的法律文件摊滔。這群人使用智能合約來做常見組織做的所有的事情阴绢,比如在某件事上進(jìn)行投票,比如決定是否對什么進(jìn)行投資等等艰躺。
副作用是決策呻袭,管理,以及對什么進(jìn)行投資的結(jié)果將會不可改變的存儲在區(qū)塊鏈上腺兴。
之前slock.it創(chuàng)建了標(biāo)準(zhǔn)的DAO框架來說明這個理念左电。在這里有對DAO概念的總覽,以及如何使用框架來實(shí)現(xiàn)一個自己的DAO(注:這個項(xiàng)目由于bug被黑客攻擊了)。