当前位置:首页区块链EOS钱包开发:EOS开发环境搭建

EOS钱包开发:EOS开发环境搭建

本课程是eos钱包开发,可以选择**三种网络进行开发:

  • 主网
  • Jungle 测试网络
  • 本地网络

咱们在开发阶段一般选择测试网络和本地网络皆可,测试完成后在部署到主网。这里我们先选择在本地网络上进行开发,因为在Jungle 测试网络中不支持wallet的RPC接口,因为它作为一个公共的服务节点,是不可能帮助到底管理私钥的,那样会非常不安全,到底都会共用相同的钱包和私钥。**我们将使用本地搭建的keosd服务管理钱包,并连接到Jungle 测试网络中。

EOS支持的操作系统

  • Amazon 2017.09 and higher
  • Centos 7
  • Fedora 25 and higher (Fedora 27 recommended)
  • Mint 18
  • Ubuntu 16.04 (Ubuntu 16.10 recommended)
  • MacOS Darwin 10.12 and higher (MacOS 10.13.x recommended)

本教程的开发环境选择为:Ubuntu 16.04、本地网络、RPC+eos、eosV1.2.2。下面的开始搭建EOS本地环境将它部署在单个主机。

获取EOS指定版本源码及其所有子模块,若不加入–recursive参数,则不能下载EOS关联的子项目。指定版本源码使用指定版本号。


编译源码生成可执行文件



编译时间比较长,需一两个小时不等,若编译顺利成功后,则会看到如下显示

在编译的过程中很有可能会出现各种错误,由于系统、EOS版本的差异出现的错误也会不一样,下面的列出了常见的多种错误的解决办法。

解决办法:

修改文件源码中的,将7000改为自己系统的内存大小,如4000,如还报错,那么继续减小。



解决办法:

在文件源码中增加如下一行代码代码前面。


无法下载MongoDB等是由于翻墙配置的问题。

解决办法:

Mac的Shadowsocks使用“PAC自动模式”,另外偏好设置配置如下

Ubuntu的配置如下,其中的192.168.1.116 是Mac的局域网地址。

解决办法:

进入目录,删除文件夹即可。

安装所有依赖库并构建EOSIO,使用如下命令


若出现如下错误,加上sudo即可。

安装成功后的效果如下

安装完在根目录新增了build文件夹,**EOS的目录结构如下。

是用来运行节点的EOSIO程序。执行一下步骤进行配置:

  • 找到如下config.ini文件的位置,然后打开config.ini文件
    • Mac OS:?
    • Linux:?
  • 将文中所在行用注释,所在行也用注释
  • 再**面添加如下内容

若是v1.2之前的版本需添加插件。

?是一个轻客户端钱包,负责管理钱包,以便在广播到网络之前保护密钥和签署交易,在本地计算机上运行并在本地存储您的私钥。

  • 找到路径,然后打开config.ini文件
  • 将第一行的服务地址设置为:

使用币**命令启动自己的单节点区块链


  • 1使用了加载一些可选插件,在V1.2之前版本需要添加插件。启动后应该每0.5秒生成一个块并有日志输出到终端,如下

如果报如下错误,则添加参数

可以直接输入命令即可启动keosd。

停止keosd,因为可以自动启动,最终可能会有多个正在运行。
注意:当使用RPC接口时,需要另起keosd,且端口与nodeos的不能一样。在使用cleos连接wallet时不用另外单独启动keosd,它连接的是nodeos的keosd服务。若使用cleos时报如下错误,则须停止keosd。

下面的我们使用命令行进行操作,需要使用到Cleos,它是一个命令行工具,可以与nodeos公开的REST API进行交互,前提是nodeos需要配置插件。

钱包是授权私钥的存储库,与区块链交互所必需的。通过如下命令创建钱包,可以通过参数指定创建的钱包名称。如果不指定钱包名称,则会创建一个名为的默认钱包。


若是1.2上面这些版本,则需添加参数,输出如下


成功后将会生成钱包的解锁密码,钱包15分钟不用将会自动锁定,注意一定要保存**一行的密码,需要使用它解锁这个钱包。

可以通过两种方式解锁钱包,推荐使用第二种方式解锁。

  • 直接在命令行上添加密码参数,可以通过参数指定钱包名称

  • 在交互模式下解锁

接着提示,然后输入密码即可


两种方式解锁成功后都会输出。

注意:

直接在命令行上使用您的密码并将其记录到您的bash历史记录中通常是不安全的,因此**在交互模式下解锁。

出于安全考虑,**在不使用钱包时使用命令将钱包锁定。

使用命令查看钱包列表,在列表中解锁后的钱包将在钱包名后面有标记。


上述步骤中启动的私有区块链是使用默认初始密钥创建的,必须将其加载到钱包中。

使用命令。可以通过参数指定钱包名称


注意:此时导入的私钥并不是创建钱包时生成的密码。

这个密钥在币**配置文件中可以查看

  • Mac OS:?
  • Linux:?

打开文件后滑动到最下面的即可查看到私钥。

注意该秘钥对正是超级账户 eosio的秘钥对。下面的就会用到eosio账户。

cleos create account eosio eosio.bios EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV

现在我们有一个拥有帐户eosio密钥的钱包,那么下面的用eosio账户部署默认的系统合约,确保钱包处于解锁状态。

eosio账户是默认就有的,在系统启动的时候就自动被创建的超级用户。

出于开发目的,可以使用系统提供的合约,通过此合约可以通过确认用户持有的token直接控制其他帐户的资源分配,包括管理链上的堆栈和非堆栈资源,带宽、CPU以及内存资源。该合约可以在中找到源代码。

先进入到eos根目录,再使用命令部署BIOS合约。


命令中的参数说明:

  • :部署合约的账户
  • :合约路径
  • :作用是告诉使用帐户部署此合约,将使用我们之前导入的帐户的active权限的私钥对该操作进行签名。
  • 实现的是多签系统合约,实现了一个多签功能,由于EOS要求系统的每一次更新都需要出块节点完成一次多签,当签名数达到2/3+1时,更新才能生效。所以出块节点可以调用这个合约实现多签功能。

    
    

eosio.system是EOS系统合约中最重要的部分,实现了EOS项目的所有基本功能:如:创建新账户、部署智能合约、交易RAM、抵押获取资源(net、cpu)、投票、领取节点奖励等;


用来发布代币的合约。



合约提供的功能来创建代币。


在中可以修改keosd应用程序的端口,可以通过keosd命令单独启动。

在中可以修改nodeos应用程序的端口,可以通过nodeos命令启动,一般需要添加插件启动,如:


支持wallet RPC API,在nodeos中添加eosio::wallet_api_plugin插件以启动keosd,那么keosd的端口与nodeos一致,同时也可以再通过命令keosd单独启动keosd应用程序,此时可以通过两种途径访问keosd,一是使用nodeos的插件方式访问,得用nodeos的端口访问keosd,二是使用keosd的端口访问。

通过RPC访问钱包数据的时候目录在。通过命令访问钱包数据的时候目录在。

nodeos已经删除了钱包API,应该直接在keosd中使用API。它的API定义与之前一样,可以在v1.2之前的版本中查看钱包API,所以在nodeos中不能再添加钱包插件以启动keosd了,需要通过命令keosd单独启动keosd应用程序,注意它的端口不能与nodeos一样。

通过RPC和命令访问钱包数据的目录都在。

版权声明:博客中的文章版权归博主所有,未经授权禁止转载,转载请联系作者(微信:lixu1770105)取得同意并注明出处。

未经授权禁止转载、改编,转载请注明出处!

免责声明: 文章源于会员发布,不作为任何投资建议,如有侵权请联系我们删除!

温馨提示:

文章标题:EOS钱包开发:EOS开发环境搭建

文章链接:https://www.btchangqing.cn/436397.html

更新时间:2023年01月06日

本站大部分内容均收集于网络,若内容若侵犯到您的权益,请联系我们,我们将第一时间处理。

区块链

reits基金可以长期持有吗(reits基金好不好)

2023-1-6 19:51:05

区块链

下载晨星基金网(下载晨星基金网电脑版)

2023-1-6 20:10:01

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索