前言
区块链1.0是以比特币为代表,解决了货币和支付手段的去中心化问题,区块链2.0最显著的特征就是以太坊的智能合约了。
一、什么是智能合约
智能合约(Smart Contract)的理念可以追溯到1995年,几乎与互联网(world wide web)同时出现。密码学家尼克·萨博(Nick Szabo)首次提出了“智能合约”这一术语。从本质上来说,智能合约是指运行在计算机上的一段条件语句代码(If Then)。也就是说将我们传统的纸质合同通过编码的方式在区块链上创建了一份数字化的合约。这份合约规定,当一个预先编好的条件被触发时,智能合约执行相应的合同条款。它可以处理信息,接收、储存和发送价值。
二、智能合约与传统合约的区别
1、从自动化方面看来,智能合约可以对于触发条件进行智能判断,而传统合约则只能进行认为判断(也就是说合同双方可能对这个出发条件的认知不一样,这时候就需要借助第三方仲裁机构)。
2、从主客观方面看来,智能合约中的惩罚等条件是提前进行明晰的,适用于客观的请求场景;而传统合约则更适用于主观请求场景。
3、从成本方面而言,智能合约的成本要明显低于传统合约成本。因为智能合约中的各项执行条件等已经被提前写入代码,执行时候不需要再耗费更多的人力物力即可进行。
4、从惩戒的方式而言,智能合约中,各种数字资产被当做抵押品,若有违约行为发生,则违约者会有资产的损失,但传统合约中,则将通过法律手段进行制裁。
5、适用的范围不同,智能合约可以在全球范围内进行推广并投入使用,但传统合约则因为地域文化、习俗、具体法律法规的不同而有特定的使用范围、广度与智能合约有着很大差别。但是有一点,智能合约虽然确定性强,但是在合同法上还欠缺一定的灵活性。
三、智能合约一定要在区块链技术之上实现吗?
我认为这是一个值得每个人去思考的问题。对于一个区块链项目,我们至少得思考2个问题,第一,这个项目能解决什么问题?第二,解决这个问题,必须要用区块链技术吗?很显然,在智能合约的思考上,第二点很重要,一定要在区块链技术之上实现吗?答案是否定的,看到这里,你或许会有点惊讶,别急,听我慢慢说道,我给你举2个例子,你就清楚了。
第一、火车站或者公园的自动售货机,知道吧。你选择了你需要的商品,然后你通过扫码支付或者零钱支付,如果金额大于等于商品的价格,售货机对应的商品就会掉下来,如果你的零钱大于了商品的价格,它会找你零钱,如果金额不足,则交易无法完成,也就不能买到商品。你仔细对比一下,这个流程是不是符合智能合约定义的那些条件,没错,这就是一个简单的智能合约。
第二、信用卡的自动还款服务,我们就可以把它理解成一种智能合约。如果在信用卡还款日(具体的时间),当你的储蓄卡余额比信用卡还款金额要多的情况下(还款条件被满足),系统会自动扣款(自动完成这笔交易)。这些服务仍是运行在传统的计算机系统之上,而这些系统并没有利用区块链技术。
既然现在的互联网计算机技术就可以实现自动交易的合约,那为什么这种类型的智能合约应用没有广泛应用呢?那就是信任问题还没有解决。智能合约实际上是数字化的代码,那会不会有合约被篡改之类道德风险,抑或是被黑客攻击的技术风险呢?答案是存在的。而且在上面的2个例子中,我们之所以会使用这些服务,是因为有银行和政府作为背书,大家愿意信任它们,才会使用这些服务。但是同样的服务,如果搬到很小众的平台或者很难互相信任的个体或者机构之间,还会有人选择这种服务吗?我想很少甚至没有人愿意,就是因为不信任。
那为什么基于区块链的智能合约凭什么就可以得到大家的信任呢?我们经常都听到,区块链就是一个去中心化的分布式记账系统。还有一点,不可篡改性,这是因为传统的数据库是包含CRUD(增删改查)4种操作的,而在区块链的数据库中没有删除,你所有的记录都存在于区块中,这样就不用担心合约的内容被篡改;再者,可靠性,不用担心条件满足时不执行合约;其次,去中心化和分布式账本的全网备份,能够让你随时审查。去信任就是区块链技术带来的革命性变化
运用场景
智能合约可以快速的运用在在诸如保险、所有权记录、贸易金融等方面。