如何利用以太坊的智能合约和代币创建你自己的去中心化应用

2023-12-15 15:24:15 1628
逐风

以太坊(英语:Ethereum)是一个开源的有智能合约功能的公共区块链平台。通过其专用加密货币以太币(Ether,又称“以太币”)提供去中心化的虚拟机(称为“以太虚拟机”Ethereum Virtual Machine)来处理点对点合约。

以太坊的概念首次在2013至2014年间由程序员维塔利克·布特林受比特币启发后提出,大意为“下一代加密货币与去中心化应用平台”,在2014年透过ICO众筹得以开始发展。

截至2018年6月,以太币是市值第二高的加密货币,以太坊亦被称为“第二代的区块链平台”,仅次于比特币。

相较于较大多数其他加密货币或区块链技术,以太坊的特点包括下列:

智能合约(smart contract):存储在区块链上的程序,由各节点运行,需要运行程序的人支付手续费给节点的矿工或权益人。

代币(tokens):智能合约可以创造代币供分布式应用程序使用。分布式应用程序的代币化让用户、投资者以及管理者的利益一致。代币也可以用来进行首次代币发行。

叔块(uncle block):将因为速度较慢而未及时被收入母链的较短区块链并入,以提升交易量。使用的是有向无环图的相关技术。

权益证明(proof-of-stake):相较于工作量证明更有效率,可节省大量在挖矿时浪费的电脑资源,并避免特殊应用集成电路造成网络中心化。(测试中)

支链(Plasma):用较小的分支区块链运算,只将最后结果写入主链,可提升供单位时间的工作量。(尚未实现)

状态通道(state channels):原理类似比特币的闪雷网络,可提升交易速度、降低区块链的负担,并提高可扩展性。尚未实现,开发团队包括雷电网络(Raiden Network)和移动性网络(Liquidity Network)。

分片(sharding):减少每个节点所需纪录的数据量,并透过平行运算提升效率(尚未实现)。

分布式应用程序:以太坊上的分布式应用程序不会停机,也不能被关掉。

发展历史

以太坊最初由 Vitalik Buterin 在2013年提出。Vitalik 本是一名参与比特币社群的程序员,曾向比特币核心开发人员主张比特币平台应该要有个更完善的编程语言让人开发程序,但未得到他们的同意,因此决定开发一个新的平台作此用途[8]:88。Buterin 认为很多程序都可以用类似比特币的原理来达成进一步的发展。Buterin 在2013年写下了《以太坊白皮书》,说明了建造去中心化程序的目标。然后2014年透过网络公开募资得到开发的资金,投资人用比特币向基金会购买以太币。

最初以太坊程序是由一间位在瑞士的公司 Ethereum Switzerland GmbH 开发[11][12],之后转移至一个非营利机构“以太坊基金会”(Ethereum Foundation)。

在平台开始发展的最初,有人称赞以太坊的科技创新,但也有人质疑其安全和可扩展性。

比特币开创了去中心化密码货币的先河,五年多的时间充分检验了区块链技术的可行性和安全性。比特币的区块链事实上是一套分布式的数据库,如果再在其中加进一个符号——比特币,并规定一套协议使得这个符号可以在数据库上安全地转移,并且无需信任第三方,这些特征的组合完美地构造了一个货币传输体系——比特币网络。

然而比特币并不完美,其中协议的扩展性是一项不足,例如比特币网络里只有一种符号——比特币,用户无法自定义另外的符号,这些符号可以是代表公司的股票,或者是债务凭证等,这就损失了一些功能。另外,比特币协议里使用了一套基于堆栈的脚本语言,这语言虽然具有一定灵活性,使得像多重签名这样的功能得以实现,然而却不足以构建更高级的应用,例如去中心化交易所等。以太坊从设计上就是为了解决比特币扩展性不足的问题。

2016年初,以太坊的技术得到市场认可,价格开始暴涨,吸引了大量开发者以外的人进入以太坊的世界。中国三大比特币交易所之二的火币网及OKCoin币行都于2017年5月31日正式上线以太坊。 

自从进入2016年以来,那些密切关注数字货币产业的人都急切地观察着第二代加密货币平台以太坊的发展动向。

作为一种比较新的利用比特币技术的开发项目,以太坊致力于实施全球去中心化且无所有权的的数字技术计算机来执行点对点合约。简单来说就是,以太坊是一个你无法关闭的世界计算机。加密架构与图灵完整性的创新型结合可以促进大量的新产业的出现。反过来,传统行业的创新压力越来越大,甚至面临淘汰的风险。

比特币网络事实上是一套分布式的数据库,而以太坊则更进一步,她可以看作是一台分布式的计算机:区块链是计算机的ROM,合约是程序,而以太坊的矿工们则负责计算,担任CPU的角色。这台计算机不是、也不可能是免费使用的,不然任何人都可以往里面存储各种垃圾信息和执行各种鸡毛蒜皮的计算,使用它至少需要支付计算费和存储费,当然还有其它一些费用。

最为知名的是2017年初以摩根大通、芝加哥交易所集团、纽约梅隆银行、汤森路透、微软、英特尔、埃森哲等20多家全球顶尖金融机构和科技公司成立的企业以太坊联盟。而以太坊催生的加密货币以太币近期又成了继比特币之后受追捧的资产。

以太坊基金会:

总部设在瑞士楚格州的非营利基金会,这个基金是负责为未来加密货币研发和推进开发的其他机构分配资源的伞形公司。该基金会的董事会由Vitalik Buterin(主席),Mihai Alisie(副主席),Taylor Gerring, Stephan Tual, Joseph Lubin, Jeffrey Wilcke 还有 Gavin Wood组成。该基金会将重点放在首要的“使命”上,即,使运营机构来完成每天的日常工作。

以太坊瑞士有限公司:

总部设在瑞士的一家公司,为了领导创世块链的发行,将负责运营2014年度的一部分工作。该公司由以太坊基金会100%控制,计划在创世块链发行后停止运作。

功能应用

以太坊是一个平台,它上面提供各种模块让用户来搭建应用,如果将搭建应用比作造房子,那么以太坊就提供了墙面、屋顶、地板等模块,用户只需像搭积木一样把房子搭起来,因此在以太坊上建立应用的成本和速度都大大改善。具体来说,以太坊通过一套图灵完备的脚本语言(Ethereum Virtual Machinecode,简称EVM语言)来建立应用,它类似于汇编语言。我们知道,直接用汇编语言编程是非常痛苦的,但以太坊里的编程并不需要直接使用EVM语言,而是类似C语言、Python、Lisp等高级语言,再通过编译器转成EVM语言。

上面所说的平台之上的应用,其实就是合约,这是以太坊的核心。合约是一个活在以太坊系统里的自动代理人,他有一个自己的以太币地址,当用户向合约的地址里发送一笔交易后,该合约就被激活,然后根据交易中的额外信息,合约会运行自身的代码,最后返回一个结果,这个结果可能是从合约的地址发出另外一笔交易。需要指出的是,以太坊中的交易,不单只是发送以太币而已,它还可以嵌入相当多的额外信息。如果一笔交易是发送给合约的,那么这些信息就非常重要,因为合约将根据这些信息来完成自身的业务逻辑。

合约所能提供的业务,几乎是无穷无尽的,它的边界就是你的想象力,因为图灵完备的语言提供了完整的自由度,让用户搭建各种应用。白皮书举了几个例子,如储蓄账户、用户自定义的子货币等。

技术更迭

2013年年末,以太坊创始人Vitalik Buterin发布了以太坊初版白皮书,在全球的密码学货币社区陆续召集到一批认可以太坊理念的开发者,启动了项目。

在2013年12月到2014年1月这段期间,以太坊的工作重心是如何启动Vitalik在以太坊白皮书所描绘的愿景。团队最后都认为创世纪预售是一个好主意,经过长期、多层面的讨论,为了创建一个合适的基础结构和法律策略,团队决定延期原本在2014年2月份举行的以太币预售。

2014年2月对于以太坊是一个非常重要的月份,以太坊的各方面都在突飞猛进:社区成长、写代码、写wiki内容、商业基础结构和法律策略。在这个月,Vitalik在迈阿密比特币会议上第一次公布了以太坊项目,并在Reddit上举办第一次“问我们任何事儿”活动,核心开发团队成为世界级的密码学货币团队。迈阿密会议后,Gavin Wood和Jeffrey Wilcke加入以太坊,进行全职工作,虽然在在这以前,他们完全出于兴趣为以太开发C++和GO客户端。

在三月初以太坊发布了第三版测试网络(POC3),并最终将以太坊总部搬到了瑞士楚格州。在六月份,团队发布POC4,并快速向POC5前进。在这期间,团队还决定将以太坊做成一个非营利性组织。四月份,Gavin Wood发布了以太坊黄皮书,这是以太坊的技术圣经,将以太坊虚拟机(EVM)等重要技术规格化。 在7月份,团队创建了瑞士以太坊基金会、发布了POC5,在24日开始了创世纪预售,同时在Reddit上组织了第二次“问我们任何事儿”。

从2014年7月24日起,以太坊进行了为期42天的以太币预售,一共募集到31,531个比特币,根据当时的比特币价格折合1843万美元,是当时排名第二大的众筹项目。预售时所使用的比特币地址是36PrZ1KHYMpqSyAQXSG8VwbUiq2EogxLo2,在比特币区块链浏览器里可以看到每一笔转入和转出。在预售前两周一个比特币可以买到2000个以太币,一个比特币能够买到的以太币数量随着时间递减,最后一周,一个比特币可以买到1337个以太币。最终售出的以太币的数量是60,102,216。另外还有0.099x(x = 60102216 为发售总量)个以太币被分配给在BTC融资之前参与开发的早期贡献者,另外一个0.099x 将分配给长期研究项目。所以以太坊正式发行时有 60102216 + 60102216 * 0.099 * 2 = 72002454个以太币。自上线时起,在POW(工作量证明机制)阶段,计划每年最多有60102216 * 0.26=15,626,576个以太币被矿工挖出。1~2年内转成POS(权益证明机制)后,每年产出的以太币将大为减少,甚至可以不再增发新币。

2014年的秋季是以太坊的收获季节,在代码和运营方面都取得了很大进展。10月5日发布了POC6。这是一个具有重要意义的版本,亮点之一是区块链速度。区块时间从60秒减少到12秒,并使用了新的基于GHOST的协议。在11月份,以太坊在柏林举办了第一次小型开发者会议(DEVCON 0)。

在2015年1月,团队发布了POC7,在二月份,团队发布了POC8。在三月份团队发布了一系列关于发布创世纪区块的声明,同时POC9也在紧张开发中。在5月份,团队发布了最后一个测试网络(POC9),代号为Olympic。为了更好地对网络进行测试,在Olympic阶段,参与测试网络的成员会获得团队给予的以太币奖励。奖励形式有多种,主要包括测试挖矿奖励和提交bug奖励。

经过近两个的严格测试以后,团队在七月末发布了正式的以太坊网络,这也标准着以太坊区块链正式运行。以太坊的发布分成了四个阶段,即Frontier(前沿)、Homestead(家园)、Metropolis(大都会)和Serenity(宁静),在前三个阶段以太坊共识算法采用工作量证明机制(POW),在第四阶段会切换到权益证明机制(POS)。

在2015年7月30日,以太坊发布了Frontier阶段。Frontier阶段是以太坊的最初版本,不是一个完全可靠和安全的网络。Frontier是空白版的以太坊网络:一个用于挖矿的界面和一种上传和执行合约的方法。Frontier的主要用途是:将挖矿和交易所交易运行起来,从而社区可以运行挖矿设备,和开始建立一个环境,人们可以在里面测试分布式应用(DApps)。由于Frontier阶段的以太坊客户端只有命令行界面,没有图形界面,所以该阶段主要开发者。随着Frontier的发布,以太币也开始在世界各地的交易所进行交易。在2016年初,以太币的价格开始暴涨,以太坊的技术实力开始在市场上得到认可,吸引了大量开发者以外的人进入以太坊的世界。另外,在此阶段每年被矿工挖矿的以太币大约为1000万个,少于最初计划的每年1500万。

2015年11月9日到13日,以太坊在伦敦举行了为期五天的开发者大会(DEVCON 1),吸引了全世界三百多名开发者参加。第三次开着大会(DEVCON 2)将于2016年9月份在上海举行。

在2016年3月14日(圆周率节),以太坊发了Homestead阶段。Homestead阶段与Frontier阶段相比,没有明显的技术性里程碑,只是表明以太坊网络已经平稳运行,不再是不安全和不可靠的网络了。在此阶段,以太坊提供了图形界面的钱包,易用性得到极大改善,以太坊不再是开发者的专属,普通用户也可以方便地体验和使用以太坊。

Metropolis阶段发布日期尚未确定。在Metropolis阶段,团队将最终正式发布一个为非技术用户设计的、功能相对完善的用户界面,也就是发布Mist浏览器。团队期望Mist的发布将包括一个去中心化应用商店和一些功能完善、设计良好的基础性应用,表现以太坊网络的强大。Mist浏览器将非常简单易用,只要会使用普通浏览器就会使用Mist。在以太坊平台上,第三方开发者为普通用户开发的去中心化应用逐渐增多,以太坊不仅是一个开发平台,还逐渐成为一个应用市场,开发者和用户都是不可或缺的部分。

Serenity阶段发布日期尚未确定。在Serenity阶段,以太坊将从PoW转换到PoS。工作量证明意味着将电力转换为热量、以太币和网络稳定性。但是若非必要,以太坊不想因为挖矿排放过多热量,所以需要修改算法:权益证明(POS)。网络从工作量证明(POW)转换到权益证明(POS)将需要一个实质性的转换,一个转变过程,这似乎是一个长期过程,但并不是那么遥远:这类开发工作正在进行中。POW是对计算能力的严重浪费,就像民主–除了其它系统以外的最坏系统。从POW的约束中解脱出来,网络将更加快速、出块更快、更加有效、对新用户来说更加易用、更能抵制挖矿的中心化等。这将可能是像将智能合约放到区块链一样的巨大进步。 转换到POS以后,前三个阶段所需要的挖矿将被终止,新发行的以太币也将大为降低,甚至不再增发新币。

在以太坊2.0阶段,开发团队的主要目标是通过分片(sharding)方式解决可扩展性问题(Scalability),即提高区块链的处理交易处理能力,这也是所有的区块链项目致力解决的瓶颈。 预计 2017年年末发布。

如何获得ETH?

获取ETH最简单的方式就是购买。 市面上有许多可以购买ETH的数字货币交易所,但用户需要根据所处地址和付款方式选择合适的交易所。


免责声明:以上内容(如有图片或视频亦包括在内)均为平台用户上传并发布,本平台仅提供信息存储服务,对本页面内容所引致的错误、不确或遗漏,概不负任何法律责任,相关信息仅供参考。

本站尊重他人的知识产权、名誉权等法律法规所规定的合法权益!如网页中刊载的文章或图片涉及侵权,请提供相关的权利证明和身份证明发送邮件到qklwk88@163.com,本站相关工作人员将会进行核查处理回复

收藏
分享
海报
1628

忘记密码?

图形验证码