区块链智能合约是什么?

2017 年底,比特币涨到了最高达十二万元人民币,区块链技术也慢慢走进了技术圈的视野。

随着以太坊 Ethereum 的兴起,这个开源的拥有智能合约功能的区块链平台,也引起了大家的注意。

同时,能在以太坊平台上部署、运行的智能合约,也逐渐被大家所了解。谜恋猫 CryptoKitties 的大热,又一次燃起了大众对智能合约的应用场景之一的 Dapp 的关注。

主链侧链开发数字货币交易所白皮书区块链浏览器跨境支付场内场外宠物挖矿游戏基金会牌照 181-4069-6008 微信电话同号

2. 什么是智能合约?

智能合约(Smart Contract)是一种旨在以信息化方式传播、验证或执行合同的计算机协议。智能合约允许在没有第三方的情况下进行可信交易,这些交易可追踪且不可逆转。

我们这里讲的智能合约指的是区块链领域的智能合约。

区块链领域的智能合约有以下特点:

规则公开透明,合约内的规则以及数据对外部来讲是可见的。

所有交易公开可见,任何地址与智能合约进行交易,都会公开的展示起来,不会存在任何虚假或者隐藏的交易。

之前社会中的合同或者约定的行为,都是由人来制定规则,然后由人去执行,遇到边界问题或者异常,再由人去做界定。

但是智能合约不同,开发者通过智能合约去制定一套规则,然后发布到线上,当人们去做事情与智能合约交互的,由机器去完成业务的部分,这样就避免了由人来执行时造成的作弊行为。

这样就引入了去中心化自治组织(DAO,Decentralized Autonomous Organization)的概念,从理论上对智能合约的意义进行了升华。

3. 智能合约的分类

3.1 以太坊 Solidity

Solidity 是以太坊的智能合约实现的编程语言,运行在以太坊的虚拟机 Ethereum Virtual Machine(EVM)上。

Solidity 是静态类型的,支持继承、库和其他功能中复杂的用户定义类型。

Solidity 是本系列课程的主要内容,将在接下来的课程中详细介绍。

Hyperledger Fabric

Hyperledger Fabric 是 The Linux Foundation 主办的 Hyperledger 项目之一。

Hyperledger Fabric 旨在作为开发模块化体系结构的区块链应用程序的基础,以便诸如共识和会员服务等组件可以即插即用。

它使用容器技术来托管构成系统应用逻辑的智能合约(也称为链代码),简而言之,Hyperledger Fabric 是为企业构建的领先的开源、通用区块链结构。

和以太坊不同的是 Hyperledger 主要面对的是企业级的项目开发,Hyperledger 项目的主要推动者是 IBM。

3.2 以太坊 Ethereum 的 Solidity

Solidity 是太坊 Ethereum 的智能合约使用的的编程语言。

Solidity 是一种静态类型的编程语言,用于开发在 EVM 上执行的智能合约,被编译为可在 EVM 上执行的字节码。

借由 Solidity,开发人员能够编写出可自我执行其欲实现之商业逻辑的应用程序,该程式可被视为一份具权威性且永不可悔改的交易合约,对已具备程式编辑能力的人而言,编写 Solidity 的难易度就如同编写一般的编程语言。

下面是一个简单的智能合约示例,这里先做简单的认识,在接下来的课程中,我们会逐一分析。

4. 智能合约和代币的关系

提起智能合约,很多人可能不是很清楚,但是一说 ICO,大部分人都是很感兴趣的。

ICO 的本质就是,用智能合约建立规则,并存储数据。用户给智能合约发送一定数量的 Eth,智能合约就在自己的账户内建立对应地址的代币数据。

4.1 ERC20

以太坊一直在维护一个项目,被成为EIP(Ethereum Improvement Proposals)。

Ethereum Improvement Proposals (EIPs) describe standards for the Ethereum platform, including core protocol specifications, client APIs, and contract standards.

ERC20 定义了 ERC-20 Token 的通用标准,所有符合 ERC20 的智能合约创建出来的代币,都被称为 ERC20 代币,都能够被以太坊钱包(几乎所有支持以太币的钱包,包括 imToken、币兜钱包等,也支持 ERC-20 的代币)识别使用。

4.2 ERC223

由于之前出现过智能合约的问题,导致至少有价值四十万美元的以太币的损失,所以后来出现了 ERC20 的改良版本——ERC223。ERC223 标准是向下兼容 ERC20 的。

目前市面上绝大部分代币都是基于 ERC20 标准的,基于 ERC223 的并不多,比如 ATN。

4.3 他们的关系

举个简单的例子,智能合约就像是一张白纸,代币就像是用白纸叠成的纸飞机,我们还可以用这张白纸来做纸青蛙。

5. 智能合约能给我们带来什么?

从现在这个时间点来看,智能合约首先的应用是创造代币,也就是大家提到的 ICO。

ICO 创造一种新的商业模式,它将社区的力量发挥出来。在技术圈内,社区一直是很重要的力量,很多知名的开源项目比如 Linux,都是集合了社区开发者的智慧变得越来越完善。

而 ICO 的意义在于,真正有价值的项目可以不用通过传统的风投而是通过社区人员众筹来获得项目的启动资金,并且随着项目的发展,社区人员也能通过它来收到回报。这从一定程度上解决了技术人员有能力做项目,却没能力筹钱的问题。

但是 ICO 也暴露了人性的恶,2017 年开始,大量没有技术背景的 ICO 出现在全球市场上,各种负面新闻也出现,到 2018 年年初,已经有大部分 ICO 以失败告终。

智能合约的中心思想是用机器去实现既定的规则,让规则内的人们不会去作弊,并提高了业务的效率。

除了发代币之外,智能合约的应用场景非常多,比如投票、结合物联网做智能家居等等。

在不久的将来,智能合约的应用注定会爆发。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏java思维导图

区块链(Blockchain)简单介绍

1 概要 此项目旨在了解区块链,包括概念、原理及了解可供学习及使用的开源项目平台。此文是整合诸多前辈们的文章而来,特此声明,参考的文章链接在本文末尾。 2 ...

4107
来自专栏奇点大数据

区块链 : 历史、现在与未来

就区块链而言,问不同的人,你会得到不同的答案。有人说,区块链是自互联网以来最重要的技术创新。也有人说,区块链不过是问题的解决方案而已。 最初的区块链,是数字货...

3684
来自专栏FreeBuf

区块链技术的安全价值与局限性解析

我们正站在新变革来临的边缘,互联网正在经历去中心化的阶段。经过了20年的科学研究,在密码学领域和去中心化计算网络上都产生了新的进展,带来诸如区块链技术(bloc...

2786
来自专栏汇智网教程

以太坊是什么【视频】

30412
来自专栏企鹅号快讯

区块链=活在未来?

稿件由路可比特整理自《区块链生存训练》 「导读」 介绍完区块链中的十多个概念 还是总结一下吧 你也一定很期待 ▍区块链的自组织体系 区块链中的十多个概念,用一张...

2237
来自专栏CSDN技术头条

刚入门区块链的程序员应该看些什么?

来源 | 知乎 作者 | Fickr Sung孫啟誠 毫无疑问,区块链将使得程序员迎来第三春,这个机会在现阶段只属于程序员。 曾经,乔布斯赶上了个人电脑的风潮...

4416
来自专栏区块链深度

一文看懂区块链的3种类型:公有链、私有链和联盟链

在具体介绍公有链、私有链和联盟链之前,我们先从最简单的字面意思上,对这几个概念有个大致了解:

3155
来自专栏陈树义

区块链上的智能合约是否有利于物联网的发展?

对于大多数的组织来说,物联网技术意味着更好的组件连接方式、数据生产方式和决策方式。但物联网也意味着将这所有东西自动化。这意味它会带来许多新的商业上的概念 - 包...

4315
来自专栏区块链大本营

麻将算什么? 纽约时报竟然暗藏着世界上最早的区块链

随着加密货币的火热,区块链自去年以来一直充斥着人们的茶余饭后,甚至连街边的大妈说起区块链都头头是道,不知道大家是通过什么途径听说区块链的。

1132
来自专栏编舟记

智能合约和 DApp

2017年11月份和2018年5月份的技术雷达,都将Ethereum for decentralised applications. 放到了 Technique...

1301

扫码关注云+社区

领取腾讯云代金券