十分钟教你开发EOS智能合约

在CSDN、柏链道捷(PDJ Education)、HelloEOS、中关村区块链产业联盟主办的「EOS入门及最新技术解读」专场沙龙上,柏链道捷(PDJ Education)CTO、副总裁康烁,作了如何在EOS上开发智能合约的精彩演讲。演讲中,康烁从EOS环境的搭建、钱包和账号的创建及管理、智能合约的开发步骤作了详细的讲解,希望对你有所帮助。


640?wx_fmt=png&wxfrom=5&wx_lazy=1


康烁简介:

康烁,柏链道捷(PDJ Education)CTO、副总裁、清华阿尔山区块链研究中心高级工程师。曾受邀参加2015LLVM开发者大会,展示了自研的Android模拟器项目。主持开发的开源项目SkyEye在国内外有众多用户,是知名的开源项目之一。主持开发的开源项目Android_S2E项目被华为公司内部使用,目前主要从事区块链底层系统开发工作。


作者 | 康烁

整理 | 科科

   

以下为康烁在EOS入门及最新技术解读专场沙龙的精彩分享。

 

我分享的角度可能更多是从一个EOS智能合约的入门者或者开发者的角度去分析我对EOS的初步认识。

 

在这之前我编译过EOS,然后开发了一些智能合约,包括之前把以太坊的一些智能合约做了移植。对于这里面,我有自己的一些看法。

 

我主要是做系统软件出身,之前在操作系统、虚拟机、编译器、安全等领域都有一些项目实战,我自己现在主持和维护了两个开源项目:

 

1、SkyEye。这是一个比较知名的开源虚拟机项目,如果大家在网上用Google和百度搜索这个项目,可以看到用户还是比较多的,包括国内或者国外。

 

2、Android s2e。这个项目主要做的是符号执行,它可以检测安全漏洞。

 

大概在去年的时候,以太坊的智能合约被爆出大概有几千个漏洞。其实就是用符号执行的方法,把智能合约的好多漏洞都扫描出来了。而我做的这个项目是可以对Android的整个操作系统做符号分析,并且这个项目在华为内部得到使用。

 

所以,我对操作系统或者说编译器方面是蛮有经验的。我想先从系统软件从业者的角度,分享一些对EOS的看法。

 

EOS和以太坊很像,EOS很明确的说明它就是一个区块链的操作系统,BM在博客中也是说过的。

 

可以这样比喻,EOS就相当于内置激励系统的Windows/Linux/MacOS,这是它的一个定位。包括以太坊也有自己的定位,Vitalik在2014年第一次说以太坊想法的时候,他就很明确的说了,以太坊就是一个全球计算机,这些都是创始人本人提出的一个想法。

 

EOS环境搭建和启动节点

 

下面从EOS入门的环境搭建、编译运行一个智能合约、发送一些Aigsen,给大家做一些展示,希望能让非技术人员也有一些收获。

 

首先下载EOS环境搭建和启动节点。这一步其实还是比较简单的,但是对于非技术人员,最大的障碍就是,现在用EOS,不管是在MacOS还是Linux,基本都是在命令行下操作,这一点和以太坊还是不太一样。因为以太坊有一个浏览器插件,可以用一些图形化的IDE去操作,这样对非技术人员或者前端人员,可能他不太熟悉这个命令行命令的人都是比较友好的。

 

EOS环境的搭建和节点启动分为以下两步:

 

第一步:用Git克隆,下载EOS的源代码

 

使用命令:

 
 

git clonehttps://github.com/EOSIO/eos --recursive


下载源代码,时间会比较长,大概1-3小时,另外,下载编译对计算机内存要求最少要有8GB。

 

下载编译之后,里面有三个应用程序,这三个应用程序也都是命令行的:

1、Cleos;

2、Nodeos;

3、Keosd。

 

这三个应用程序之间有什么关系呢?我们现在使用的前端,怎么使用EOS呢?

 

-Cleos,它是一个命令行程序。在前端使用EOS是通过Cleos输入命令,给EOS下达指令。

 

-Nodeos,其实它就是挖矿客户端。在启动Nodeos之后,它自然就会产生区块。

 

-Keosd,它是在后端启动。它的目的主要是管理钱包,可以创建私钥。

 

为什么分成Nodeos和Keosd?

 

我理解的是,Keosd可以认为是个轻客户端,因为有时候只需要进行钱包操作,不需要挖矿,就可以启动Keosd。

 

第二步:节点启动

 

在第一步下载编译都做完之后,就可以启动一个节点开始愉快的挖矿了!下面是启动节点的命令:

 
 

cd build/programs/nodeos
./nodeos -e -p eosio --plugin eosio::wallet_api_plugin --plugineosio::chain_api_plugin --plugin eosio::account_history_api_plugin

 

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值