http://ethdocs.org/en/latest/introduction/what-is-ethereum.html
以太坊是什么
以太坊是一个开放的区块链平台,可让任何人构建和使用在区块链技术上运行的分散式应用程序。与比特币一样,没有人控制或拥有以太坊 - 这是一个由世界各地许多人建立的开源项目。但与比特币协议不同,以太坊被设计为具有适应性和灵活性。在Ethereum平台上创建新应用程序很容易,而且随着Homestead版本的推出,任何人都可以安全地使用这些应用程序。
下一代的区块链平台
区块链技术是比特币的技术基础,最早由其神秘作者中本聪在他于2008年发表的白皮书“比特币:对等电子现金系统”中描述。虽然区块链已被用于更广泛的用途在原始文件中讨论过,直到几年后,区块链技术才成为一个通用术语。区块链是一种分布式计算架构,其中每个网络节点都执行并记录相同的事务,这些事务被分组为块。一次只能添加一个块,并且每个块都包含一个数学证明,验证它是否与前一个块的顺序相符。通过这种方式,区块链的“分布式数据库”在整个网络中保持一致。个人用户与分类帐(交易)的交互通过强大的密码学进行保护。维护和验证网络的节点通过编入协议的数学强制性经济激励来激励。
在比特币的情况下,分布式数据库被认为是账户余额表,分类账和交易是比特币令牌的转移,以促进个人之间的无信任融资。但是,随着比特币开始吸引开发者和技术人员的更多关注,新颖的项目开始将比特币网络用于价值代币转移以外的目的。其中许多采取了“alt硬币”的形式 - 独立的区块链和自己的加密货币,它们改进了原有的比特币协议以增加新的特性或功能。2013年末,以太坊的发明家Vitalik Buterin提出,一个能够重新编程以执行任意复杂计算的区块链可能包含这些许多其他项目。
2014年,以太坊创始人Vitalik Buterin,Gavin Wood和Jeffrey Wilcke开始研究下一代区块链,他们有志于实施一个完全不受信任的智能合约平台。
以太坊虚拟机
以太坊是一个可编程的区块链平台。 Ethereum并没有为用户提供一套预定义的操作(比如比特币交易),而是允许用户创建自己想要的任何复杂操作。通过这种方式,它可以作为许多不同类型的分散式区块链应用的平台,包括但不限于加密货币。
以太坊在狭义上指的是一组协议,为分布式应用定义了一个平台。它的核心是以太坊虚拟机(“EVM”),它可以执行任意算法复杂度的代码。用计算机科学术语来说,以太坊是“图灵完整”的。开发人员可以使用基于JavaScript和Python等现有语言的友好编程语言创建在EVM上运行的应用程序。
像任何区块链一样,以太坊还包括一个点对点网络协议。以太坊区块链数据库由连接到网络的许多节点维护和更新。网络的每个节点都运行EVM并执行相同的指令。出于这个原因,以太坊有时被形容为“世界电脑”。
整个以太坊网络的这种大规模并行计算并没有使计算更有效率。事实上,这个过程使以太坊的计算速度远远低于传统的“计算机”,并且更为昂贵。相反,每个以太坊节点都运行EVM,以便在整个区块链中保持一致。分散化的共识赋予以太坊极高的容错水平,确保零停机时间,并使存储在区块链中的数据永远不会改变,并且不受审查制约。
以太坊平台本身是无功能的, 它的价值与编程语言类似. 企业家和开发人员需要决定应该使用什么功能。但是,很显然某些应用程序类型会从以太坊平台获益良多。具体而言,以太坊适用于自动化对等之间的直接交互或促进整个网络中协调的群组操作的应用程序。例如,协调对等市场或复杂金融合同自动化的应用程序。比特币允许个人在不涉及金融机构,银行或政府等中间商的情况下交换现金。以太坊的影响可能更为深远。理论上讲,使用在以太坊上运行的代码可以自动,可靠地进行金融互动或任何复杂的交换。除了财务应用之外,任何信任,安全和永久性都很重要的环境 - 例如资产登记,投票,治理和物联网 - 可能会受到以太坊平台的巨大影响。
以太坊的工作机制
以太坊整合了比特币用户所熟悉的许多功能和技术,同时也引入了许多自己的修改和创新。
鉴于比特币区块链纯粹是交易清单,以太坊的基本单位就是账户。以太坊区块链跟踪每个账户的状态,以太坊区块链上的所有状态转换都是账户之间的价值和信息转移。有两种类型的帐户:
* 外部拥有账户(EOAs),由私钥控制
* 合同账户由合同代码控制,只能由EOA“激活”
对于大多数用户来说,它们之间的基本区别在于人类用户控制EOA - 因为他们可以控制私人密钥,从而控制EOA。另一方面,合同账户受其内部代码的约束。如果它们被用户“控制”,那是因为它们被编程为由具有特定地址的EOA控制,而EOA又由持有控制该EOA的私钥的人来控制。流行术语“智能合约”是指合约账户中的代码 - 当交易发送到该账户时执行的程序。用户可以通过将代码部署到区块链来创建新的合同。
合同帐户只在EOA指示的情况下执行操作。因此合约账户不可能执行像随机数字生成或API调用这样的本地操作 - 只有在EOA提示的情况下,才能执行这些操作。这是因为以太坊要求节点能够就计算结果达成一致,这需要严格确定执行的保证。
与比特币一样,用户必须向网络支付小额交易费用。这可以保护以太坊区块链免受轻微或恶意计算任务的困扰,如DDoS攻击或无限循环。交易的发送者必须支付他们激活的“程序”的每一步,包括计算和内存存储。这些费用是以以太坊的本地价值代币以太的价格支付的。
这些交易费用由验证网络的节点收集。这些“矿工”是以太坊网络中接收,传播,验证和执行交易的节点。然后,矿工将交易 - 其中包括以太坊区块链中账户“状态”的许多更新 - 分成所谓的“区块”,然后矿工们相互竞争,使其块成为下一个要添加的区块区块链。矿工每获得一个成功的矿块都会得到乙醚奖励。这为人们将硬件和电力奉献给以太坊网络提供了经济激励。
就像比特币网络一样,矿工的任务是解决一个复杂的数学问题,以便成功地“挖掘”一个区块。这被称为“工作证明”。(proof of work) 任何计算问题需要数量级的更多资源来解决算法上的问题,而不是验证解决方案所需的资源,这是工作证明的良好选择。为了阻止由于使用专用硬件(如ASIC)而导致的集中化,就像在比特币网络中发生的那样,以太坊选择了难以计算的内存问题。如果问题需要内存以及CPU,理想的硬件实际上就是通用计算机。这使得以太坊的工作证明ASIC具有抵抗性,从而使安全性的分布式特性更好. 对比比特币, 它的挖掘完全由专业硬件支配。
如何使用这个教程
本节介绍用户想要参与以太坊项目的基本方式。首先成为网络中的一个节点,你需要运行一个以太坊客户端。选择一个客户端部分列出了多种实现方式,这也可以为您提供建议,客户可以在各种设置中选择客户端。连接到网络可为您提供有关网络,连接故障排除和区块链同步的基本信息。高级网络主题(如设置专用链)可在测试网络中找到。
Web3.0 一个去中心化app的平台
许多人开始相信像Ethereum这样开放,节点假定不可信(trustless)的区块链平台非常适合作为去中心化的安全的互联网--Web 3.0的共享“后端”。一个互联网,诸如DNS和数字身份等核心服务是去中心化的,个人可以在互相之间进行经济互动。
按照以太坊开发者的意图,以太坊是一张空白的画布,您可以随意自由创作任何您想要的东西。以太坊协议旨在进行推广,以便可以以任意方式组合核心功能。理想情况下,以太坊的dapp项目将利用以太坊区块链构建依赖分散共识的解决方案,以提供先前无法实现的新产品和服务。
以太坊可能被最好地描述为一个生态系统:核心协议由构成以太坊项目的各种基础设施,代码和社区支持。通过查看使用以太坊的项目,还可以了解以太坊。已经有一些以Ethereum为基础构建的高端项目,如Augur,Digix,Maker等等(见Dapps)。另外,还有开发团队构建任何人都可以使用的开源组件。虽然这些组织都与以太坊基金会分离并拥有自己的目标,但它们无疑有益于整体以太坊生态系统。
智能合同
你会与你从未见过的人签订合同吗?你会同意把钱借给埃塞俄比亚的一些农民吗?你会成为战区少数民族报纸的投资人吗?您是否会为通过互联网购买价值5美元的合法合同签订合法的麻烦?
大多数问题的答案是否定的,原因是合同需要大量的基础设施:有时您需要双方之间建立起有效的信任关系,有时您需要依靠有效的法律制度,警察和律师费用。
在以太坊你不需要这些:如果合同的所有必要条件都可以放在区块链中,那么它们将在几乎没有代价的不需信任环境中进行。
如果你怀疑这些场景, 不妨这么考虑: 你有1000个小合同,因为它们在经济上不可行或者没有足够的法律保护,因此在现场生活中你绝不会同意这些合同。但是在区块链上不同.
DAO
这只是一个例子:假设你和你的朋友拥有一笔小生意。律师和会计师费用昂贵,并且信任单一合伙人来监督这些书籍会成为紧张的根源(即使是欺诈的机会)。严格遵守多个合作伙伴监督书籍的体系可能会尝试,并且只要协议没有完全遵守,就会受到欺诈。
使用智能合约,您公司的所有权和资金支出条款可以在一开始就指定。智能合同可以写成只有大多数业主批准才能改变。像这样的智能合同可能会作为开源软件提供,所以你甚至不需要雇用自己的程序员而不是会计师/律师。
像这样的智能合同易于扩展。几个青少年可以透明地分配柠檬水摊位的收入,因为主权财富基金可以向有资格获得这些资金的亿万公民分配资金。在这两种情况下,这种透明度的价格可能是每美元一分钱的几分之一。
社区&参考资源
这段就懒得翻了. http://ethdocs.org/en/latest/introduction/community.html
网友评论