首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么要用区块链技术实现智能合约?

区块链的特点有两个:

1.数据不能修改、删除,只能查看和增加。

2.去中心化。避免了中心化的“人”因素。

关于特点1,传统技术通过软件做限制,可以实现。

特点2,信用好的机构做担保,保证特点1不会被修改。就是保证数据不被修改和删除(或者可以把数据公开,如果被修改了,大家都能发现)

意思相当于:区块链=传统技术+机构信用担保

当然,在一些事情上,很难保证“人”不作恶。不过在大部分的事情上(或者说不大的事情上),“人”的信用还是值得相信的,毕竟日常很多事情都是基于“人”的信用进行的(比如,中小事情)。

因此,在不大的事情上,是不是可以用:传统技术+机构信用担保,来实现区块链要做的事情呢?

这个问题是一个老同学大老远从北京到广州来看我,在咖啡馆坐下的第一个问题,当时我只是简单的回答了下,不过越讨论越深,在这里也拿出来给大家分享一下:

看这个问题之前,我们先要搞清楚什么是智能合约。

这个术语是跨领域法律学者尼克·萨博(Nick+Szabo)提出来的,他对智能合约的定义是“一个智能合约是一套以数字形式定义的承诺(promises),包括合约参与方可以在上面执行这些承诺的协议。”换成更加通俗描述就是的“智能合约是一个在计算机系统上,当一定条件被满足的情况下,可以被自动执行的合约。”

智能合约一定要在区块链技术之上实现吗?答案是否定的。举个大家都熟悉的例子,就是信用卡的自动还款服务,我们就可以把它理解成一种智能合约。在具体的时间(信用卡还款日),当还款条件被满足(储蓄卡余额比信用卡还款金额要多的情况下),计算机系统会自动完成这笔交易(用最初设定的储蓄卡为信用卡还款)。然而这些服务仍是运行在传统的计算机系统之上,而这些系统并没有利用区块链技术。

既然传统计算机技术就可以实现自动交易的合约,那为什么这些应用没有广泛应用呢?那是因为还有一个问题没有被解决,那就是信任问题。我们知道,在现实世界中,合约是写在纸上的,签印之后人们才认为它生效;在计算机世界中,合约是记录在代码里的。那数字化的合约,会不会有合约被篡改之类道德风险,抑或是被黑客攻击的技术风险呢?答案是很高的。回到我们前面讲的自动还款的例子,如果是银行的官网提供这项服务,大家也许能够愿意接受,因为很多人是愿意相信银行的。但是同样的服务,搬到淘宝上新开的店铺,或者其他的网站上,从技术来讲其实也并不是那么难,但是会有人选择这种服务吗?因为人们不会信任提供服务的人,因为他们太容易做坏事,而且一旦出现纠纷,举证也是件非常困难的事情,最重要的证据都保存在对方的计算机系统中,他们想改点什么还不容易么。

那区块链技术又何德何能,能有什么过人的地方,可以赢得用户的信任。这就要从区块链技术的几个基础的特性讲起,我们经常讲,区块链技术给我们带来了一个去中心化的,不可篡改的,高可靠性的系统。首先是不可篡改,这样就不需要担心合约的内容会被更改;其次是高可靠行,我们不用担心系统在条件被满足时不执行合约;然后就是去中心和给我们带来的全网备份,完备的记录完全可以支持支持事后的审计。这样的系统,我们不再需要去相信和我们签订合约的对方,只需要相信区块链系统会把剩下的事完成就可以了。这就是区块链技术带来的革命性变化——去信任。正是在去信任的环境下,智能合约才大有用武之地。

现在,比特币网络、以太坊网络以及国内的井通网络等一系列区块链社区都提供了公开的智能合约编程的接口。已经有众多的创业公司基于这些公开的接口,开始开发智能合约的业务了,如果你也想一显身手,完全可以去尝试一下。

--END--

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180407G0884C00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券