区块链智能合约知识普及

扇贝科技智能合约

扇贝科技认为,自 2009 年比特币开启区块链时代以来,基于区块链的分布式应用(dapp)呈现出井喷的趋势,而支撑着 dapp 的底层技术就是“区块链+智能合约”(www.57d.net)。

以太坊采用了 Solidity 作为智能合约语言,Solidity 是一门为实现智能合约而创建的高级编程语言,能在允许以太坊程序的节点上运行。该语言吸收了 C++、JavaScript 的一些特性,例如它是静态类型语言,支持继承库等。

智能合约是一种只有通过区块链才能实现的新技术。智能合约是数字化的,存储在区块链中,并使用加密代码强制执行协议。智能合约与区块链的结合,普遍被认为是区块链世界中一次里程碑式的升级。第一个结合了区块链与智能合约技术的平台--以太坊的诞生,被认为是开启了"区块链 2.0"时代。

在扇贝科技看来,智能合约只是软件程序,与所有程序一样,它们完全按照程序员的意图执行。智能合约就像编程应用程序一样:“一旦出现,就去执行。”

智能合约程序可以自己保存加密货币的余额,甚至控制其他智能合约程序。一旦被创建,他们可以自动进行操作。这个术语的使用可能会随着区块链技术的成熟而逐渐消失。开发人员更倾向于指代一种特定的语言或他们正在使用的平台,不同于一个通用术语可以描述区块链中的任何复杂操作。

智能合约就是可编程的合同,扇贝科技认为也可以理解为一段自动执行的条文合同,在计算机中,就是一段自动执行的程序片段。它更易于合约保存,并且由确定的算法运行,给定输入,就得到对应的输出,极大保障了合约的执行力。

那为什么在这 10 年中,智能合约与区块链却产生了如此紧密的关联?因为区块链可以保证智能合约的不可篡改,不仅合约内容不可篡改,每次调用记录亦不可篡改。

与此同时,扇贝科技认为智能合约也在反哺着区块链,它极大地扩展了区块链的业务场景。

基本上通过数学计算,智能合约可以协商协议中的条款,自动验证履行,甚至执行约定的条款,所有这些都不需要通过中央组织来批准。智能合约使公证人、代理人和律师等中间人几乎毫无意义。

从编程角度而言,智能合约就是一段代码。相比常规代码,智能合约具有许多差别与限制,例如:

◈ 单线程执行◈ 代码执行会消耗资源,不能超出资源限制◈ 目前难以获取链外数据,例如取得天气信息、比赛结果等◈ 其他限制,如 TPS

然而,智能合约的本体是一份代码,非常容易被篡改,如何为其提供强力的存储介质就成了问题。这正好是区块链擅长解决的——通过比特币的实践,证明了区块链可以在分布式环境下让电子记录不可被篡改。

这些特点使得目前智能合约生态以链上资源的治理为核心。就像以太坊上各式各样的 ERC 标准与治理方案;EOS上有各种资源模型,比如 CPU、RAM、Rex、Bancor 协议等。例如支付通道、跨链、plasma、rollup,它们都从不同角度打破安全与性能的枷锁。

学习智能合约,推荐选择 Solidity 语言,朋友们可以尝试基于 FISCO BCOS 快速搭建区块链环境,部署一个最简单的合约,熟悉部署、调用方式,再进一步走入 Solidity 的世界。

公司名称:广州龙宇五金筛网有限公司