编辑: 麒麟兔爷 | 2017-10-12 |
这就是 说,你无法发布象 我发布此交易输出给任何愿意支付我在创世交易H:i中定义的1个金币 的人 这样的交易,因为指令码语言根本不知道这里居然还会有不同的色彩.这带来的主 要后果是,虽然不依赖于信任的不同色彩的币的交换依然是可能的,但无法下买卖单却 导致无法运行一个完全的去中心化的交易所. 2. 与比特币一样的局限 C 理论上,链上协定可以支援高级衍生品,赌约和本文后面将详述 的多种条件转让.但彩色币继承的比特币的局限使得上述金融工具中的许多无法实现. Ethereum 下一代智能合约和去中心化应用平台
5 彩色币 元币 另一个如HTTP建立在TCP上面那样在比特币协议之上叠加协议建立起来的概念是 元币 .元 币的概念很简单:元币协议提供了一种把元币交易数慈氡忍乇医灰资涑龅姆椒,一个元 币节点会处理所有的比特币交易,评估同时是合法元币交易的比特币交易以确定任何给定时 刻的平衡账目.例如,一个简单的元币协议可能要求一个交易有四个输出:MARKER, FROM, TO 和VALUE. MARKER 是一个特殊的标识符字段用来把一个交易标识成元币交 易,FROM 是币的发出地址, TO是币要发往的地址,VALUE 是表示交易数额的字段.因为 比特币协议并未意识到元币协议的存在,因此不会拒绝非法的元币交易,元币协议必须根 比特币交易的第一个输出是否为MARKER识别出元币交易并作相应处理.这样的元币协议的 相关部分的编码可能是类似这样的: if tx.output[0] != MARKER: break else if balance[tx.output[1]] <
decode_value(tx.output[3]): break else if not tx.hasSignature(tx.output[1]): break else: balance[tx.output[1]] -= decode_value(tx.output[3]);
balance[tx.output[2]] += decode_value(tx.output[3]);
元币协议的好处是允许更多的高级交易类型,包括定制货币,去中心化交易所,衍生品等, 这些交易类型是作为基础的比特币协议本身无法实现的.然而,比特币之上的元币有一个主 要的缺点:在彩色币那里已经很困难的简化交易验证,在元币这里干脆就是不可能的.原因 是,当使用简化交易验证去确认一个由地址X发送30个元币的交易时,并不必然意味著地址X 拥有30个元币;
如果发送者没有30个元币从而该交易是非法的怎麽办?找出当前状态的任何 一部分都需要对所有交易进行一次彻底的后向扫描直至元币的初始发行交易,以判断当前交 易是否合法.这使得任何不下载庞大的完整比特币块链的轻客户端都不会是真正安全的. 以上两个例子推出以下结论:努力在比特币协议之上建立更高级协议,正如在TCP之上建立 HTTP,是值得赞赏的,也确实是走向更高级的去中心化应用的正确道路.然而,在比特币协 议之上创建彩色币和元币的尝试更像是在SMTP上创建HTTP;
SMTP协议是用来传输电子邮 件消息的,而不是用来作为一般互联网通信的基础协议的,(在SMTP上创建HTTP)将不得 不使用许多低效的以及结构丑陋的方法使其能够工作.与之类似,虽然比特币在简单交易和 价值储存方面是一个出色的协议,但它绝非是被设计用来,而且前述证砻魉豢赡鼙挥 来,作为通用金融端到端协议的底层协议. 通过建立自己的块链,通过在每一个区块保存一个表示当前每个地址的平衡账目的清晰的 状 态树 和一个表示当前区块和上一个区块间交易的 交易表 ,以太坊解决了可扩展性问题.以 太坊合约将被允许在持久内存中存储数,这样的内存加上图灵完备的脚本语言将使在单个 合约中编码一个完整的货币成为可能.因此,以太坊并不以取代前述的彩色币或元币协议为 目的,而是旨在成为一个提供超强脚本系统的优秀底层协议,在其上可以创建任意高级的合 约,货币及其它去中心化应用.如果现存的彩色币和元币项目迁移至以太坊平台,它们将从 以太坊的简化支付确认,与金融衍生品和去中心化交易所的适应性,以及能够同时在一个网 络中存在的能力中获益.使用以太坊,那些想出可能极大改变加密货币应用现状的点子的人 将不再需要去启动他们自己的块链,他们可以简单地用以太坊脚本编码实现他们的想法,简 而言之,以太坊是创新的基础平台. Ethereum 下一代智能合约和去中心化应用平台