- 浏览: 768192 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (1045)
- 数据结构 (36)
- UML与设计模式 (42)
- c++ (87)
- rust (36)
- Qt (41)
- boost模板元编程 (43)
- Linux (77)
- 汇编 (4)
- 其它 (2)
- 烹饪 (3)
- unix c / socket (73)
- 软件工程 (4)
- shell (53)
- Python (37)
- c++ primer 5th(c++11) (22)
- 数据库/MySQL (27)
- 数据存储 (4)
- lisp (7)
- git (4)
- Utility (3)
- CDN与DNS (54)
- Http (53)
- php (7)
- nginx/lua/openresty (41)
- redis (11)
- TCP/IP (16)
- 互联网 (6)
- kernel (2)
- go (34)
- 区块链 (43)
- 比特股 (13)
- 以太坊 (23)
- 比特币 (23)
- 密码学 (10)
- EOS (53)
- DAG (1)
- docker (1)
- filecoin (7)
- solidity (65)
- ipfs (8)
- 零知识证明 (1)
- openzeppelin (3)
- java (1)
- defi (7)
- Ton (0)
最新评论
1.创建新的公/私钥
xjdeMacBook-Pro:hi xj$ cleos create key --to-console
Private key: 5KLhyM534ZvjJxubEPcZ8pgU9gD8zu4ErxZfhvBVEhsxKv9nbbQ
Public key: EOS7b5YBthLNRuLrk7y2RCHfW1vWB5JGqQVouSMPK7dTpjk4a7veJ
1.5.eosio的私钥也要导入
xjdeMacBook-Pro:cleos xj$ cleos wallet import
private key: imported private key for: EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV
xjdeMacBook-Pro:cleos xj$ cleos create account eosio xiangj EOS8Loi1SbeLZnqk9fdZTL2rhjGBsEjnR2VdP7PYJeNNeTFvUeU5R
executed transaction: 605984e6dfe3fab0f839771c096d2f5b36003bcb744c45e94c70e54c99bc4e4a 200 bytes 7637 us
# eosio <= eosio::newaccount {"creator":"eosio","name":"xiangj","owner":{"threshold":1,"keys":[{"key":"EOS8Loi1SbeLZnqk9fdZTL2rhj...
warning: transaction executed locally, but may not be confirmed by the network yet ]
2.将上面的私钥导入钱包
xjdeMacBook-Pro:hi xj$ cleos wallet import
private key: imported private key for: EOS6vzUgGinif3gnw75AH436x7P13rQPb75B2R5zn6wQYYeL98X7f
3.根据公钥创建合约帐号
xjdeMacBook-Pro:hi xj$cleos create account eosio xiangj EOS7b5YBthLNRuLrk7y2RCHfW1vWB5JGqQVouSMPK7dTpjk4a7veJ
executed transaction: 85e2e7c038eba8939176bac1ad62b89475e5b6cb565e3bd0cb49106257e76e44 200 bytes 810 us
# eosio <= eosio::newaccount {"creator":"eosio","name":"xiangj","owner":{"threshold":1,"keys":[{"key":"EOS7b5YBthLNRuLrk7y2RCHfW1...
warning: transaction executed locally, but may not be confirmed by the network yet ]
4.编译代码
xjdeMacBook-Pro:helloworld xj$ eosio-cpp -o hi.wasm hi.cpp --abigen
#eos1.8:eosiocpp -o hi.wasm hi.cpp
Warning, empty ricardian clause file
Warning, empty ricardian clause file
Warning, action <hello> does not have a ricardian contract
5.创建合约
xjdeMacBook-Pro:hi xj$ cleos create account eosio hi EOS5ZyWiAYkSo4xhwiAzUhKaSs6coMrQ1nHbpKBprwrQPeZEy9wnU -p eosio@active
executed transaction: 8ecb0c2e061b9f41d3dbe19d784466f2d149d0bc4ba8c507f87308a0aed2048c 200 bytes 854 us
# eosio <= eosio::newaccount {"creator":"eosio","name":"hi","owner":{"threshold":1,"keys":[{"key":"EOS5ZyWiAYkSo4xhwiAzUhKaSs6coM...
warning: transaction executed locally, but may not be confirmed by the network yet
6.部署合约
xjdeMacBook-Pro:helloworld xj$cleos set contract hi /Users/xj/code/eos/build/programs/cleos/hi -p hi@active
Reading WASM from /Users/xj/code/eos/build/programs/cleos/hi/hi.wasm...
Publishing contract...
executed transaction: 4317b908267fd4d4b67d6f870f1fba5e825425c3aad8820692386429da316c2d 1440 bytes 1291 us
# eosio <= eosio::setcode {"account":"hi","vmtype":0,"vmversion":0,"code":"0061736d0100000001390b60027f7e006000017f60027f7f017...
# eosio <= eosio::setabi {"account":"hi","abi":"0e656f73696f3a3a6162692f312e3100010568656c6c6f00010475736572046e616d650100000...
warning: transaction executed locally, but may not be confirmed by the network yet ]
7.调用合约
xjdeMacBook-Pro:helloworld xj$cleos push action hi hello '["xiangj"]' -p xiangj@active
executed transaction: 2a76833bd8a8373d0b51be07d15e416827b6d48a270e43b1d42a2d908fe31115 104 bytes 509 us
# hi <= hi::hello {"user":"xiangj"}
warning: transaction executed locally, but may not be confirmed by the network yet
8.nodeos控制台查看输出:nodeos --contracts-console
xjdeMacBook-Pro:hi xj$ cleos create key --to-console
Private key: 5KLhyM534ZvjJxubEPcZ8pgU9gD8zu4ErxZfhvBVEhsxKv9nbbQ
Public key: EOS7b5YBthLNRuLrk7y2RCHfW1vWB5JGqQVouSMPK7dTpjk4a7veJ
1.5.eosio的私钥也要导入
xjdeMacBook-Pro:cleos xj$ cleos wallet import
private key: imported private key for: EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV
xjdeMacBook-Pro:cleos xj$ cleos create account eosio xiangj EOS8Loi1SbeLZnqk9fdZTL2rhjGBsEjnR2VdP7PYJeNNeTFvUeU5R
executed transaction: 605984e6dfe3fab0f839771c096d2f5b36003bcb744c45e94c70e54c99bc4e4a 200 bytes 7637 us
# eosio <= eosio::newaccount {"creator":"eosio","name":"xiangj","owner":{"threshold":1,"keys":[{"key":"EOS8Loi1SbeLZnqk9fdZTL2rhj...
warning: transaction executed locally, but may not be confirmed by the network yet ]
2.将上面的私钥导入钱包
xjdeMacBook-Pro:hi xj$ cleos wallet import
private key: imported private key for: EOS6vzUgGinif3gnw75AH436x7P13rQPb75B2R5zn6wQYYeL98X7f
3.根据公钥创建合约帐号
xjdeMacBook-Pro:hi xj$cleos create account eosio xiangj EOS7b5YBthLNRuLrk7y2RCHfW1vWB5JGqQVouSMPK7dTpjk4a7veJ
executed transaction: 85e2e7c038eba8939176bac1ad62b89475e5b6cb565e3bd0cb49106257e76e44 200 bytes 810 us
# eosio <= eosio::newaccount {"creator":"eosio","name":"xiangj","owner":{"threshold":1,"keys":[{"key":"EOS7b5YBthLNRuLrk7y2RCHfW1...
warning: transaction executed locally, but may not be confirmed by the network yet ]
4.编译代码
#include <eosiolib/eosio.hpp> using namespace eosio; class hi : public contract { public: using contract::contract; [[eosio::action]] void hello( name user ) { print( "hello, ", name{user}); } }; EOSIO_DISPATCH( hi, (hello))
xjdeMacBook-Pro:helloworld xj$ eosio-cpp -o hi.wasm hi.cpp --abigen
#eos1.8:eosiocpp -o hi.wasm hi.cpp
Warning, empty ricardian clause file
Warning, empty ricardian clause file
Warning, action <hello> does not have a ricardian contract
5.创建合约
xjdeMacBook-Pro:hi xj$ cleos create account eosio hi EOS5ZyWiAYkSo4xhwiAzUhKaSs6coMrQ1nHbpKBprwrQPeZEy9wnU -p eosio@active
executed transaction: 8ecb0c2e061b9f41d3dbe19d784466f2d149d0bc4ba8c507f87308a0aed2048c 200 bytes 854 us
# eosio <= eosio::newaccount {"creator":"eosio","name":"hi","owner":{"threshold":1,"keys":[{"key":"EOS5ZyWiAYkSo4xhwiAzUhKaSs6coM...
warning: transaction executed locally, but may not be confirmed by the network yet
6.部署合约
xjdeMacBook-Pro:helloworld xj$cleos set contract hi /Users/xj/code/eos/build/programs/cleos/hi -p hi@active
Reading WASM from /Users/xj/code/eos/build/programs/cleos/hi/hi.wasm...
Publishing contract...
executed transaction: 4317b908267fd4d4b67d6f870f1fba5e825425c3aad8820692386429da316c2d 1440 bytes 1291 us
# eosio <= eosio::setcode {"account":"hi","vmtype":0,"vmversion":0,"code":"0061736d0100000001390b60027f7e006000017f60027f7f017...
# eosio <= eosio::setabi {"account":"hi","abi":"0e656f73696f3a3a6162692f312e3100010568656c6c6f00010475736572046e616d650100000...
warning: transaction executed locally, but may not be confirmed by the network yet ]
7.调用合约
xjdeMacBook-Pro:helloworld xj$cleos push action hi hello '["xiangj"]' -p xiangj@active
executed transaction: 2a76833bd8a8373d0b51be07d15e416827b6d48a270e43b1d42a2d908fe31115 104 bytes 509 us
# hi <= hi::hello {"user":"xiangj"}
warning: transaction executed locally, but may not be confirmed by the network yet
8.nodeos控制台查看输出:nodeos --contracts-console
发表评论
-
eos快照
2019-10-06 08:31 381快照:为区块链提供临时 ... -
eos待确认/分叉库
2019-10-05 08:32 251fork_database:管理了轻量级状态数据,是由未确认的 ... -
eos controller概述
2019-10-03 17:28 292EOS中的模型层是blocks.log和基于chainbase ... -
eos multi_index
2019-10-03 09:01 282EOS的数据库就是chainbase,而调用数据库服务的C++ ... -
eos chainbase状态库
2019-10-01 08:03 431chainbase:是一个快速包含 ... -
eos action
2019-09-28 17:18 182action:在EOS中,action被分配到对应程序(一般是 ... -
eos事务结构
2019-09-28 16:34 394transaction_header:事务头的数据大小是固定的 ... -
eos区块头结构
2019-09-28 08:54 283block_header:区块头 struct block ... -
eos rpc set
2019-09-26 19:27 281set contract:设置合约 xjdeMacBook- ... -
eos rpc create
2019-09-26 19:18 2551.创建公私钥对 xjdeMacBook-Pro:safeco ... -
EOS blocks.log
2019-09-26 07:40 368区块数据通过blocks.log与blocks.index持久 ... -
引用区块
2019-09-25 07:26 309trx.set_reference_block(ref_blo ... -
EOS事务
2019-09-24 07:36 347调用函数add_standard_transaction_op ... -
全节点搭建
2019-09-22 09:34 2631.通过system regproducer命令可将普通账户注 ... -
eos名词解释
2019-09-14 09:34 6541.Authority:权力,要与Permission做好区分 ... -
智能合约依赖库
2019-08-29 07:32 364Action:这部分定义了查询或发送action的API.在E ... -
eos_rpc_system资源获取
2019-08-21 07:39 370资源主要有CPU,net bandwidt ... -
eos_rpc_sign
2019-08-21 07:22 243sign [OPTIONS] transaction:完成EO ... -
eos_rpc_wallet
2019-08-20 07:31 3151.wallet create [OPTIONS]:创建一个新 ... -
eos_rpc_get
2019-08-18 08:38 2901.get info:通过指定全节点API接口获取其连接的EO ...
相关推荐
EOS智能合约开发是一项涉及到区块链技术、合约编写和执行的技术,它允许开发者在EOS平台上创建和部署智能合约,为去中心化应用(DAPP)提供运行的基础。本文将详细探讨EOS智能合约开发的相关知识点。 首先,EOS智能...
【标题】"cpp-eos3dio和eosdayioEOS智能合约"涉及的是使用C++语言在EOS区块链平台上开发...通过深入学习和实践以上知识点,开发者可以有效地创建和管理cpp-eos3dio和eosdayio这样的EOS智能合约,为用户提供可靠的服务。
通过深入研究这些源代码,开发者可以学习如何创建自己的EOS节点、编写智能合约、管理资源、实现跨合约交互以及如何参与网络治理。对于想要涉足公链开发的人来说,这是一个宝贵的教育资源,可以提升对区块链技术的...
这是一个EOS智能合约的最小例子,它将做4件简单的事情。 创建,读取,更新和销毁。 该合同基本上是一个简单的数据库,没有任何强大的功能。 每个“记录”都包含一个id , user和一个字符串data 。 设置 此步骤需要您...
EOS6,全称为Enterprise Operating System 6,是针对企业级应用开发的一款强大操作系统,特别适用于区块链技术中的智能合约编写。本教程旨在通过具体的案例代码,帮助开发者深入理解EOS6编程的核心概念、语法结构...
- EOSIO.CPP:深入学习EOS的C++智能合约开发环境,包括EOSIO SDK和相关工具。 3. EOS开发工具 - EOS.IO软件开发工具包(SDK):熟悉EOS.IO SDK提供的各种库和API,以便于开发DApps。 - EOS钱包和命令行工具:如...
生成EOS C ++智能合约以在区块链上创建表。 安装 通过以下方式全局安装: npm i -g eos-new-table 用法 选项 $ eos-new-table Generate EOS C++ smart contract to create a table on the blockchain. Options: -...
EOS应用框架是开发人员在EOS网络上构建应用程序的基础,它提供了丰富的工具和接口,使得开发者能够更便捷地创建智能合约和前端应用。 ### 一、EOS应用框架基础 1. **智能合约**:EOS应用框架的核心是智能合约,它...
在EOS中,数据存储通过智能合约实现,开发者需要了解如何创建、修改和删除表。这涉及到EOS的数据结构、abi(Application Binary Interface)文件的生成以及如何通过EOS CLI工具进行交互。 三、多表关联 多表关联是...
EOS6在智能合约层面进行了优化,支持更复杂的逻辑和交互。开发者可以通过EOSIO智能合约语言如EOSIO.CPP或EOSIO.SWIFT编写合约,实现更丰富的业务逻辑和用户交互。 **4. Web开发工具** 为了支持RichWeb开发,EOS6...
6. 构建DApps:详细步骤和最佳实践,指导开发者如何从零开始创建一个完整的EOS DApp,包括前端交互和后端智能合约。 7. 测试和部署:介绍本地测试网、主网部署策略,以及如何进行应用测试和错误调试。 8. 部署后的...
1. **定义合约结构**:在EOS智能合约中,我们需要定义一个结构体来表示数据实体,其中包含联合主键的字段。例如: ```cpp struct Account { name username; uint8_t account_type; // 其他字段... EOSLIB_...
智能合约是EOS平台的核心组成部分,教程将详细解释如何使用EOSIO的C++智能合约语言编写、编译和部署智能合约。此外,还将涵盖EOS的ABI(Application Binary Interface)和JSON-RPC API,这些都是与智能合约交互的...
1. **智能合约语言**:EOS6支持基于WebAssembly(WASM)的智能合约,开发者可以使用C++或其他支持WASM的语言(如Solidity)编写合约。 2. **合约生命周期管理**:合约的创建、部署、更新和撤销都有明确的流程,确保...
教程会详细讲解如何创建、测试和部署智能合约。 5. **账户与权限管理**:EOS的账户系统具有复杂的权限管理机制,允许精细控制不同操作的访问权限。开发者需要掌握如何设置和管理账户权限。 6. **资源管理**:在EOS...
EOS6 的架构基于模块化设计,包括节点软件、智能合约语言、网络通信协议等关键组件。其核心是EOS.IO软件,它提供了一个高性能的区块链框架,能够处理高并发交易并实现秒级确认。 2. **共识机制 - DPOS** EOS6 ...
合约在EOS生态系统中起着至关重要的作用,它们是智能合约的实现,允许用户在区块链上执行预定的操作和逻辑。本示例将重点介绍两个EOS合约的演示:`more.moment` 和 `more.voting`。 1. **more.moment合约** `more....
在区块链开发领域,EOS作为一种新兴的高性能区块链平台,其智能合约和链上操作涉及到大量的技术细节和状态检查。为了确保操作的正确性,EOS提供了丰富的错误代码以帮助开发者识别和定位问题。本文集整理了EOS区块链...
EOS6 支持基于WebAssembly(WASM)的智能合约,这使得开发者可以使用多种高级编程语言(如C++、Solidity等)编写合约。智能合约在EOS6上执行,它们定义了账户之间的交互规则,确保了交易的透明度和不可篡改性。 **4...
本文将带你初探EOS的开发环境搭建、钱包创建、智能合约部署等基础步骤。 首先,为了开始EOS的开发,我们需要安装EOSIO SDK,这包含了编译智能合约所需的工具链。EOSIO SDK提供了Dawn版本,例如Dawn 4.2,这是一个...