xuperchain环境搭建及智能合约应用
Go语言环境搭建
sudo apt install git
下载安装go的安装包
以go1.19.1.linux-amd64为例
git clone https://studygolang.com/dl/golang/go1.19.1.linux-amd64.tar.gz
# 如果下载速度慢或失败用以下这个方法
wget https://studygolang.com/dl/golang/go1.19.1.linux-amd64.tar.gz
将压缩包解压到指定目录
sudo tar -xzvf go1.19.1.linux-amd64.tar.gz -C /usr/local/
配置环境
# sudo gedit $HOME/.profile
export GOROOOT="/usr/local/go"
export GOPATH=$HOME/go
export GOBIN=$GOROOT/bin
export PATH=$PATH:$GOBIN
启动配置文件
source $HOME/.profile
版本检测
go version
如果没有go命令使用以下命令
sudo apt install golang-go
# 报错没有发现go包
sudo apt-get upgrade
# 升级
查看配置信息
go env
xuperchain环境搭建
拉取源码
git clone https://github.com/xuperchain/xuperchain.git
进入xuperchain目录,执行下面命令
cd xuperchain
git checkout -b v5.1.0 v5.1.0
make
如果make后报以上错误,执行以下命令
sudo apt-get install curl -y
export XVM_BUILD_MAIN=xxx
make可能会出现拉取失败(文件缺少),可以配置GOPROXY解决此问题执行:
export GOPROXY=https://goproxy.cn,direct
GOPATH问题报错,不推荐使用go1.11版本之前的版本
GCC版本需要升级到4或5以上
重新拉取
在output下,有bin, conf, data三个目录,以及一个control.sh 脚本
基本操作
启动脚本,单节点共识链
bash contorl.sh start
查看链的状态
bin/xchain-cli status -H 127.0.0.1:37101
创建用户
# 创建普通用户, 生成的地址,公钥,私钥在--output 指定位置
$ bin/xchain-cli account newkeys --output data/bob
create account using crypto type default
create account in data/bob# xuperchain 也支持国密算法,关于xuperchain中的密码学,可在 `密码学基础<../design_documents/crypto.html>` 了解更多
$ bin/xchain-cli account newkeys --output data/alice --crypto gm
create account using crypto type gm
create account in data/alice## 创建合约账号
bin/xchain-cli account new --account 1111111111111111 --fee 2000
contract response:{"pm": {"rule": 1,"acceptValue": 1.0},"aksWeight": {"TeyyPLpp9L7QAcxHangtcHTu7HUZ6iydY": 1.0}}The gas you cousume is: 1000
The fee you pay is: 2000
Tx id: b4c588a52e0d35a9388f0583a58c3adc0865b1fee1d5242268e66b9f3daae3c1
account name: XC1111111111111111@xuper
查看账户余额
# 根据账户存储的路径,查询该账户的余额。--keys为要查询的账户的地址,如 bob:--keys data/bob
$ bin/xchain-cli account balance --keys data/bob -H 127.0.0.1:37101
100000000000338000000# 根据地址查询该账户余额
$ bin/xchain-cli account balance TeyyPLpp9L7QAcxHangtcHTu7HUZ6iydY -H 127.0.0.1:37101
100000000000401000000# 查询合约账户余额
$ bin/xchain-cli account balance XC1111111111111111@xuper -H 127.0.0.1:37101
0
转账
# --to 后面接转账地址 --amount 后面是转账金额
bin/xchain-cli transfer --to czojZcZ6cHSiDVJ4jFoZMB1PjKnfUiuFQ --amount 100 --keys data/keys -H 127.0.0.1:37101
24d53ea6e61ede8dc4fe65a04fd30da17c079a359e700738f8795dfddc55ffb4
查询交易信息
bin/xchain-cli tx query 24d53ea6e61ede8dc4fe65a04fd30da17c079a359e700738f8795dfddc55ffb4 -H 127.0.0.1:37101
{"txid": "24d53ea6e61ede8dc4fe65a04fd30da17c079a359e700738f8795dfddc55ffb4","blockid": "e83eae0750d0f48cc2b45f25d853fb587d124552851bf6693757e0715837b377","txInputs": [{"refTxid": "2650aa0c0e8088def98093a327b475fa7577fa8e266c5775435f7c022fe0f463","refOffset": 0,"fromAddr": "TeyyPLpp9L7QAcxHangtcHTu7HUZ6iydY","amount": "1000000"}],......"authRequireSigns": [{"publickey": "{\"Curvname\":\"P-256\",\"X\":36505150171354363400464126431978257855318414556425194490762274938603757905292,\"Y\":79656876957602994269528255245092635964473154458596947290316223079846501380076}","sign": "30460221009509e35b1341284b5d1f22b48c862ecfe2856056196c5650bc203b8a4ed0d454022100f8d286c63ad8eb3bc605bc08da4ff417aaff3c0433a31039f608bb47a90b1267"}],"receivedTimestamp": 1628596303271475925,"modifyBlock": {"marked": false,"effectiveHeight": 0,"effectiveTxid": ""}
}
查询block信息
bin/xchain-cli block e83eae0750d0f48cc2b45f25d853fb587d124552851bf6693757e0715837b377 -H 127.0.0.1:37101
{"version": 1,"blockid": "e83eae0750d0f48cc2b45f25d853fb587d124552851bf6693757e0715837b377","preHash": "41c74e22ccea7dcf1db6ba0d7e1eefd6cfbd7bac7659c3d8cd33d2a009201003","proposer": "TeyyPLpp9L7QAcxHangtcHTu7HUZ6iydY","sign": "3044021f349da2d5c238175a6e7df23262eeb122014f0a0040fc4ce109a3ab2c22b2700221009d92198061193fcd47e25c8f5c2b54e1ea2ffb4aaab675384c4d6408ab2b63de","pubkey": "{\"Curvname\":\"P-256\",\"X\":36505150171354363400464126431978257855318414556425194490762274938603757905292,\"Y\":79656876957602994269528255245092635964473154458596947290316223079846501380076}","merkleRoot": "d22d2423a93911e42f96370167d878f6780fea44fac6a13771c7532e1969c949","height": 492,......"txCount": 2,"merkleTree": ["4a7e42654cf79d6525f6b6d55673b57a92048ee96de950e962db99b102e048a4","24d53ea6e61ede8dc4fe65a04fd30da17c079a359e700738f8795dfddc55ffb4","d22d2423a93911e42f96370167d878f6780fea44fac6a13771c7532e1969c949"],"inTrunk": true,"nextHash": "a541ed97789537166bec5778aad7ba0f68e52a04d1073b244ee1ea6cd38d8f63","failedTxs": null,"curTerm": 0,"curBlockNum": 0,"justify": {}
}
xuperchain环境搭建及智能合约应用相关推荐
- ETH 开发环境搭建及智能合约 helloworld
ETH 开发环境搭建及智能合约 helloworld 自己的菜鸟级的起步教程,给自己长记性 准备 什么是以太坊 以太坊白皮书 以太坊白皮书_ZH 以太坊白皮书_EN 环境介绍 这里使用了,以下两个开发 ...
- 【区块链】DOCKER部署量子链私有网络环境以及部署智能合约实践
DOCKER部署量子链私有网络环境以及部署智能合约实践 安装环境 安装Docker https://store.docker.com/editions/community/docker-ce-desk ...
- 区块链100讲:EOS环境安装和智能合约部署实战
2019独角兽企业重金招聘Python工程师标准>>> 1 硬件配置 操作系统要求 1.Amazon 2017.09 and higher 2.Centos 7 3.Fedora 2 ...
- 区块链学习(8) EOS环境安装和智能合约部署实战(绝对干货!)
硬件配置 操作系统要求 1. Amazon 2017.09 and higher 2. Centos 7 3. Fedora 25 and higher (Fedora 27 recommended) ...
- 区块链技术进阶-深入详解以太坊智能合约语言 solidity(含源码)-熊丽兵-专题视频课程...
区块链技术进阶-深入详解以太坊智能合约语言 solidity(含源码)-103人已学习 课程介绍 区块链开发技术进阶-深入详解以太坊智能合约语言 solidity视频培训教程:本课程是 ...
- 代币转账_手把手教你从源代码开始搭建多节点以太坊私链(五)部署智能合约及代币发行...
一.安装以太坊合约编译环境 安装solc 智能合约代码的编译可以通过第三方平台或者软件.不过,为了安全起见,还是搭建自己的编译器比较好.(But be aware that if the compil ...
- Aelf区块链系统搭建步骤、方法及智能合约开发介绍
一.概要: 本文介绍基于Linux ubuntu 操作系统搭建AElf Boilerplate开发环境.运行智能合约DAPP的方法和步骤,重点是介绍和官方文档不一样的地方,也就是重点介绍搭建环境和运行 ...
- 以太坊C++客户端Aleth源码分析,转账交易和智能合约的入口代码
本文主要记录以太坊C++客户端Aleth的源码分析和相关实验过程和结果.本文将讲解两部分的内容,一是转账交易和智能合约的入口代码在哪里?二是通过实验验证转账交易和智能合约交易这两种不同交易所对应的不同 ...
- 区块链安全-以太坊智能合约静态分析
概述 目前,以太坊智能合约的安全事件频发,从The DAO事件到最近的Fomo3D奖池被盗,每次安全问题的破坏力都是巨大的,如何正确防范智能合约的安全漏洞成了当务之急.本文主要讲解了如何通过对智能合约 ...
最新文章
- Linux16-防火墙与firewalld
- 通常你会在什么地方遇到DBNull?
- 低成本、高性能创客开发板——PYB Nano
- Kafka是如何实现高吞吐率的
- c++switch实现猜拳_C语言实现人机猜拳游戏,非常适合C++小白练习的项目!
- python二级考试程序题批改_随机生成百以内加减乘除题目并批改
- BitmapFactory.Options详解
- 开方根运算——没有FPU的解决办法
- windows下成功安装XGBOOST
- 2022五一杯数学建模
- pr视频两边模糊_干货!Pr教程:如何在视频中添加模糊效果?
- 对话机器人(一)——对话机器人基础知识
- 历史课-以追剧的方式了解历史
- FPGA-小梅哥时序分析
- 请收藏ANSYS Fluent电子风扇效能及噪音仿真攻略
- html播放ppt插件,lightslider-支持移动触摸的轻量级jQuery幻灯片插件
- java html5转pdf文件_Java 将Html转为PDF
- Linux结构体变量报错,C语言中的结构体
- java局域网通信_java局域网通信
- Dota之后,《王者荣耀》也被AI攻陷,势把人类顶级玩家拉下马
热门文章
- EasyNVR摄像机网页无插件直播方案H5前端构建之:使用BootstrapPagination以分页形式展示数据信息
- 朋友圈文案_使用条款
- Boostrap3 datetimepicker使用中文报locale zh-cn is not loaded from moment locales!异常的解决办法
- iOS学习之如何正确配置——PCH文件
- GLSurfaceView camera 制作自定义相机
- android 视频整合,Android 视频合拍技术
- 写作——如何制作参考文献
- 务实推进中国云计算事业发展
- Bro与Snort或Suricata对比
- 门禁上的push是什么意思_门禁是什么看图就明白了