1 系统要求

  • 必须是linux系统
  • 必须有公网ip
  • 建议使用ubuntu 14.04 64位
  • 建议内存1G以上
  • 建议带宽2Mb以上

2 安装

2.1 下载

wget https://www.asch.so/downloads/asch-linux-0.9.5-testnet.tar.gz
tar zxvf asch-linux-0.9.5-testnet.tar.gz

2.2 初始化

这一步会自动帮您做以下几件事情

  1. 安装sqlite3等依赖软件
  2. 安装和配置ntp服务,保证您的时间与其他节点同步

这一步只需要运行一次即可

cd asch-linux-0.9.5-testnet
./aschd configure

3 运行

cd asch-linux-0.9.5-testnet

# 启动
./aschd start # 停止
./aschd stop # 查看运行状态
./aschd status # 重启
./aschd restart # 升级
./aschd upgrade # 重新同步区块
./aschd rebuild # 重建索引
./aschd reindex # 查看版本
./aschd version # 查看log
tail -f logs/debug.log

4 受托人配置

4.1 受托人密码

使用文本编辑工具打开config.json, 找到secret字段,将你的受托人密钥填进去即可,该字段为json字符串数组,一台机器可以配置多个,但不能重复

注意 不管是一台机器还是多台机器,不要配置重复的受托人密钥

4.2 公网IP

默认情况下,系统会自动检测公网ip,但在某些云主机中,公网ip无法检测到,这时需要手动在config.json修改或添加如下字段

"publicIp": "此处填写你的公网ip",

配置完之后需要重启程序

./aschd restart

5 升级

./aschd upgrade

6 命令行工具

命令行工具可以完成所有钱包的功能,包括账户登录及查询、区块链和交易查询、受托人查询,还可以创建、签署并广播任意的交易数据

6.1 安装方法

npm install -g asch-cli

6.2 使用示例

随机生成新账户

asch-cli crypto -g

使用公钥登录账户

asch-cli openaccountbypublickey 8a601534d1638884e523bc0f4fc29eaa4c0f7d2fdc8ca3a9b03d3fa8e4abd04c

使用密码登录账户

asch-cli openaccount "your secret"

转账

asch-cli sendmoney -e "your secret" -t 9519461517002147305 -a 38.38

有二级密码后的转账

asch-cli sendmoney -e "your secret" -s "your second secret" -t 9519461517002147305 -a 38.38

查看某个区块信息

asch-cli getblockbyid 16006382490436415348
asch-cli getblockbyheight 1

批量查询区块

asch-cli getblocks --offset 10 --limit 3 --sort height:asc

批量查询交易

asch-cli gettransactions --type 2 --limit 2

投票

asch-cli upvote --secret "your secret" --publicKeys 45cbab2f997766925398e1b6eb7784a0bd3fbeff9bdda74d8da9bc645f974a5e,2cd541cf50a4a8641b9e6e2613aeeaa1614dc43f6756829fb45c990e5b6ff873

# 一次投多个,公钥列表用逗号分隔

更多命令行功能请使用help选项查看

asch-cli --help

  Usage: asch-cli [options] [command]

  Commands:

    getheight                              get block height
getblockstatus get block status
openaccount [secret] open your account and get the infomation by secret
openaccountbypublickey [publickey] open your account and get the infomation by publickey
getbalance [address] get balance by address
getaccount [address] get account by address
getvoteddelegates [options] [address] get delegates voted by address
getdelegatescount get delegates count
getdelegates [options] get delegates
getvoters [publicKey] get voters of a delegate by public key
getdelegatebypublickey [publicKey] get delegate by public key
getdelegatebyusername [username] get delegate by username
getblocks [options] get blocks
getblockbyid [id] get block by id
getblockbyheight [height] get block by height
getpeers [options] get peers
getunconfirmedtransactions [options] get unconfirmed transactions
gettransactions [options] get transactions
gettransaction [id] get transactions
sendmoney [options] send money to some address
registerdelegate [options] register delegate
upvote [options] vote for delegates
downvote [options] cancel vote for delegates
setsecondsecret [options] set second secret
contract [options] contract operations
crypto [options] crypto operations
dapps [options] manage your dapps
creategenesis create genesis block Options: -h, --help output usage information
-V, --version output the version number
-H, --host <host> Specify the hostname or ip of the node, default: 127.0.0.1
-p, --port <port> Specify the port of the node, default: 4096

子命令帮助查询

asch-cli <sub-command> -h

区块链侧链应用开发平台Asch节点安装及区块生产教程的更多相关文章

  1. [区块链\理解BTCD源码]GO语言实现一个区块链原型

    摘要 本文构建了一个使用工作量证明机制(POW)的类BTC的区块链.将区块链持久化到一个Bolt数据库中,然后会提供一个简单的命令行接口,用来完成一些与区块链的交互操作.这篇文章目的是希望帮助大家理解 ...

  2. 在区块链侧链上进行Dapp技术开发

    我在白皮书里提到过,asch使用的是不同于以太坊和比特币的侧链架构,dapp是运行在侧链上的,每套侧链对应一个dapp. 侧链的独立性 侧链架构的好处是代码和数据独立,不增加主链的负担,避免数据过度膨 ...

  3. BlockChain:Py实现区块链简单场景应用:程序猿记录在区块里的收入记录图——Jason niu

    # -*- coding: utf-8 -*- ''' Created on 2018年3月11日 @author: Jason niu ''' import hashlib #该模块实现了诸多安全哈 ...

  4. 区块链从零开始做开发(0):hyperledger Fabric2.3安装

    一.前言 各位看官好,这是本人第一篇技术博客. 写博客的契机是因为原来配的环境在虚拟机扩容后莫名奇妙崩了(具体情况我以后会写),为了以后的自己特此从头开始记录.以前都是作为一个读者,这次终于有机会能够 ...

  5. go-admin在线开发平台学习-1[安装、配置、启动]

    项目介绍 go-admin 是一个中后台管理系统,基于(gin, gorm, Casbin, Vue, Element UI)实现.主要目的是为了让开发者更专注业务,减少重复代码的编写,节省时间,提升 ...

  6. HyperLedger Fabric 1.4 区块链开发平台(4.1)

    目前区块链开发平台分“公有链平台”和“联盟链系统”两类,“公有链平台”主要以以太坊为主的平台,可以在该类平台上进行代币的发行和根据各种模块搭建应用:“联盟链系统”主要以超级账本为主的开源系统,该类开源 ...

  7. 以太坊开发DApp入门教程——区块链投票系统(一)

    概述 对初学者,首先要了解以太坊开发相关的基本概念.   学习以太坊开发的一般前序知识要求,最好对以下技术已经有一些基本了解: 一种面向对象的开发语言,例如:Python,Ruby,Java... 前 ...

  8. 智能合约开发solidity编程语言开发一个以太坊应用区块链投票实例

    智能合约开发用solidity编程语言部署在以太坊这个区块链平台,本文提供一个官方实战示例快速入门,用例子深入浅出智能合约开发,体会以太坊构建去中心化可信交易技术魅力.智能合约其实是"执行合 ...

  9. Go语言开发区块链只需180行代码

    区块链开发用什么语言?通过本文你将使用Go语言开发自己的区块链(或者说用go语言搭建区块链).理解哈希函数是如何保持区块链的完整性.掌握如何用Go语言编程创造并添加新的块.实现多个节点通过竞争生成块. ...

随机推荐

  1. Educational Codeforces Round 52 (Rated for Div. 2)

    题目链接 A. Vasya and Chocolate 题意 已知钱,价格,赠送规则求最多获得巧克力数 思路常规算即可 代码 #include <bits/stdc++.h> #defin ...

  2. vue安装scss,并且全局引入

    在写vue的css样式时,觉得需要css预处理器让自己的css更加简洁.适应性更强.可读性更佳,更易于代码的维护,于是在vue-cli脚手架采用scss.写过的人都知道,每写一个.vue文件都要在st ...

  3. python Flask web框架

    目录: --> Flask --> 配置文件 --> 配置文件解析 --> 配置文件导入 --> 路由 --> 路由参数 --> 常用路由匹配 --> ...

  4. 设计模式六: 模板方法(Template Method)

    简介 模板方法属于行为型模式的一种. 实现层面上, 在抽象类中定义了算法或流程的骨架, 将其中易变的部分延迟到子类实现, 也就是允许它的子类实现其中的某些步骤. 模板方法适用于算法不变, 但算法中某些 ...

  5. SecureCRT的安装与破解(过程很详细!!!)

    SecureCRT的安装与破解(过程很详细!!!) 使用SecureCRT可以方便用户在windows环境下对linux主机进行管理,这里为大家讲一下SecureCRT的破解方法,仅供大家参考学习: ...

  6. poj 2155 matrix 二维线段树 线段树套线段树

    题意 一个$n*n$矩阵,初始全为0,每次翻转一个子矩阵,然后单点查找 题解 任意一种能维护二维平面的数据结构都可以 我这里写的是二维线段树,因为四分树的写法复杂度可能会退化,因此考虑用树套树实现二维 ...

  7. ES6-Promise.all()使用

    Promise.add 方法:将多个 promise 实例,包装成一个新的 promise 实例. const p = Promise.all([p1, p2, p3]); 接受一个数组作为参数,p1 ...

  8. XAMPP环境下配置Phalcon框架

    目前环境:win7  xampp 从phalcon 官网下载如下包:https://phalconphp.com/en/download/windows phalcon_x86_vc11_php5.6 ...

  9. Hibernate查询返回自定义VO的两种方式

    说明:createQuery用的hql语句进行查询,createSQLQuery用sql语句查询: 前者以hibernate生成的Bean为对象装入list返回:后者则是以对象数组进行存储: 一.通过 ...

  10. 小程序 模态对话框自定义组件(modal)

    1. 概述 1.1 说明 小程序中使用wx.showModal(Object object)打开一个模态对话框,但是目前小程序所提供的modal中的内容显示比较死板,不能够完全满足工作中所遇到的功能信 ...