转载

学习EOSIO 之 Block.one线上公开课(2/3)| EOSNation

d64bea1cefc3bdbc82d8535f01037e28_GEZDQMBKG4ZDA.png

本期学习EOSIO内容:Block.one的第二期线上公开课

“在EOSIO上创建自己的第一份智能合约”

那我们赶快跟着Lena一起来看看吧!

e0d1230ef2f6c4c10e797417b7047889_GE2TSMZKHA2TI.png 

Block.one的第二次EOSIO线上公开课结束了。该主题是“在EOSIO上创建自己的第一份智能合约”。我们的主讲人是Rakesh " Bob " Ghatvisave。Bob是Block.one的开发人员关系团队的技术文档工程师。第二期内容是第一期内容的延申。内容包括7个部分,我们可以学习如何建立我们的第一个EOSIO智能合约。如果你错过了,那可以看看录像来跟上大家的步伐。我选择了一些我感兴趣的内容与大家分享。让我们开始吧。

 

智能合约简介

EOSIO是最快速、可扩展和用户友好的区块链解决方案之一。我们已经看到开发人员和社区对该平台的大量采用。为了更好的理解EOSIO,我们需要了解一个概念的基本知识。这个概念被称为“智能合约”。

首先,我们先来了解一下什么是智能合约。看字面的意思,不难猜出来,是把合约智能化。这个术语可以追溯到90年代,是由跨领域法律学者尼克·萨博Nick Szabo提出的,他对智能合约的定义是“一个智能合约是一套以数字形式定义的承诺,包括合约参与方可以在上面执行这些承诺的协议。”其实也就是我们刚刚猜测的意思,智能合约就是在计算机系统上,合约条款嵌入到硬件和软件中,当一定条件被满足的情况下,合约可以被自动执行。

这个概念听起来很不错,对吧?那么,大家可能就会有疑问,既然这个概念早在90年代就被提出来了,为什么在近几年“智能合约”这个词才渐渐被大众所知道,又为什么“智能合约”和区块链技术会有这么强的关联?

不要着急,我们来仔细想想。针对第一个为什么,我想有一个很重要的原因是当时技术落后于理论,没有成型的可以支持可编程交易的数字金融系统。但是现在,技术快速发展,这个对当时来说极具前瞻性的理论,已经变得有可行性。

针对第二个为什么,我觉得其实也很好理解。在生活中,我们会把合约逻辑写在纸上,大家签字盖章后才会生效。智能合约的实施是在计算机世界里,所有的逻辑都编码在智能合约中。那么就会存在技术风险,合约有很大的概率会被恶意篡改或遭到黑客攻击。如今,正因为我们相信银行、阿里巴巴等这样的第三方,才选择使用他们提供的服务,我们的个人财产等信息都保存在他们的计算机系统中。区块链技术是去中心化的代表,正因为区块链技术的特征,我们可以享受到一个不可篡改并且安全性高的系统。基于区块链的智能合约,可以让我们不再需要去依赖于相信某个组织,只需要相信区块链系统。正是因为区块链的去中心化,去信任,智能合约才能发挥出它真正的力量。可以去看看我们的上一期内容,讲到了关于区块链特性的相关内容。

b728e80a29a0ca91855a0420fcf6d741_GE3DCMRKHA3DG.png 

在本次线上公开课的这页PPT中,我们可以清晰地看出差别。传统的服务存在这样的缺陷:不透明、停机和失败风险、不可靠的历史信息记录。而基于区块链技术的智能合约刚好弥补了这样的风险:有弹性、透明且可审计、不可更改的历史。

 

EOSIO平台

31df9ed4739c7425666a51618665bbbd_GE3TAMJKHA3TM.png 

接下来,主讲人介绍了EOSIO平台。正如我们在PPT里看到的,EOSIO是被大家广为认可的最高性能的区块链平台,可以提供快速、成本效益极佳和安全的解决方案。我们可以看到EOSIO智能合约开发有很多工具包。在上一期内容中,有对Nodes, Cleos的简要介绍。本期内容,来带你简单认识EOSIO.CDT。EOSIO.CDT是EOSIO为智能合约提供的独立且功能完整的工具集。基于WASM平台,是一个WebAssembly编译工具链。除了发挥作为通用的WebAssembly工具链的作用之外,还提供针对EOSIO的优化作用。可以从下面的PPT中看出来基础的EOSIO智能合约开发生命周期。

205d8f62682e9e04a5326eb646aa2cb6_GE3DANBKHA3TE.png 

账户和权限 

9b2a6b2cd78ef8d649c251df237f4a3f_GE3DENRKHA3DC.png

对于传统的账户,个人的密码是被存储在该公司的服务器里的,容易遭到黑客攻击,而且没有透明度。我们在如今的生活中,也会看到一些第三方公司配合所谓的“大客户”私自查看他人账户信息等丑闻。而区块链账户能给用户带来更高的安全性。区块链账户有三个重要组成部分:私钥、公钥、地址。随机数生成私钥,通过密码学算法生成公钥和地址,这个过程单向不可逆。在上一期“和Lena一起学习EOSIO”内容里,我们讨论了“加密哈希函数”。如果你感兴趣,可以随时查看。在下图中,同时我们还可以从PPT中清楚地了解到用户和EOSIO智能合约交互的过程。

72db03b1729c15c994806284337e0a5b_GE2TSNJKHA3DC.png

 

EOSIO智能合约

本期还包含了一个程序实践。如果您没有安装EOSIO环境,同样可以在网页中试一试这个简单的小程序。

5bb275071f0c4bc6ae1b7809b920ec60_GE2DKNRKHA3DA.png 

在Block.one的开发者门户中,也有关于“Hello World”的合约创建教程。大家可以选择观看Bob的视频回放或者跟着网站教程来自行实践。

bdb5f14932e0d856ec20bb0674e4636d_G42TOKRSG43Q.png

跟着Bob还可以更详细地了解其他重要内容。在本期线上公开课的最后还有一个有趣的问答环节。如果你错过了这一期内容,可以随时观看回放哦。

英文版:https://eosnation.io/learning-eosio-with-lena-block-one-webinar-2/

正文到此结束
本文目录