区块链系列教程
引言:哈希科技作为一家区块链技术服务商,有责任也有义务为推广区块链贡献一份力量。因此将连续推出区块链教程,欢迎大家交流。本文是该系列文章的第一篇。
哈希科技拥有全面的区块链能力,支持Hyperledger Fabric、Ethereum、FISCO BCOS及腾讯Trust SQL等主流框架。本系列教程将先对FISCO BCOS平台的搭建与部署进行讲解。
FISCO BCOS平台是微众银行、腾讯等企业在BCOS开源平台基础上进行模块升级与功能重塑,深度定制的安全可控、适用于金融行业且完全开源的区块链底层平台。哈希科技与微众区块链团队进行过深度对接合作,也得到了微众团队童鞋们的鼎力支持和帮助,在此一并感谢!
本教程的作者为哈希科技CTO林滨,这是一位才华在线颜值担当的90后有为青年,推荐大家关注。
第一章 联盟链FISCO BCOS 底层搭建
准备工作
参考文档
FISCO BCOS 基础安装教程
[1]
官方文档
[2]
环境准备
腾讯云服务器 ubuntu 18.4
根据官方基础教程,按照标准版本,如果国密版本另外处理。
单群组FISCO BCOS联盟链的搭建
(适用于开发模式、单个服务器搭建,生产环境使用企业级分布式部署)
本节以搭建单群组FISCO BCOS链为例操作。使用build_chain.sh脚本在本地搭建一条4节点的FISCO BCOS链,以Ubuntu 16.04系统为例操作。
注解
•
搭建多群组的链操作类似,感兴趣可以
参考这里
[3]
。
•
本节使用预编译的静态
fisco-bcos
二进制文件,在CentOS 7和Ubuntu 16.04上经过测试。
准备环境
•
安装依赖
build_chain.sh脚本依赖于openssl, curl,使用下面的指令安装。CentOS将下面命令中的apt替换为yum执行即可。macOS执行brew install openssl curl即可。
sudo apt install -y openssl curl
•
创建操作目录
cd ~ && mkdir -p fisco && cd fisco
•
下载build_chain.sh脚本
curl -LO https://github.com/FISCO-BCOS/FISCO-BCOS/releases/download/`curl -s https://api.github.com/repos/FISCO-BCOS/FISCO-BCOS/releases | grep "\"v2\." | sort -u | tail -n 1 | cut -d \" -f 4`/build_chain.sh && chmod u+x build_chain.sh
搭建单群组4节点联盟链
在fisco目录下执行下面的指令,生成一条单群组4节点的FISCO链。需要保证机器的30300-30303,20200-20203,8545-8548端口没有被占用。
bash build_chain.sh -l "127.0.0.1:4" -p 30300,20200,8545
注解
•
其中-p选项指定起始端口,分别是p2p_port,channel_port,jsonrpc_port,出于安全考虑jsonrpc/channel默认监听127.0.0.1,需要外网访问请添加-i参数。
1.
进入路径
cd/home/useradmin/fisco 可以通过pwd 命令查询
2 2.
启动区块链
bash nodes/127.0.0.1/start_all.sh
3.
在控制台配置要的情况下,启动控制台
cd ~/fisco/console
./start.sh
4 4.
查看智能合约的位置
pwd 命令,得到地址
/home/useradmin/fisco/console/solidity/contracts
5 5.
调用合约
将合约放到合约目录下,进入控制台模式,这样就可以在控制台调用智能合约,执行命令如下:
deploy 合约名称
call 合约名称 合约地址 方法 参数
6 6.
合约编写说明
(1)新建表方法,只有名称,没有数据类型
(2)调用表方法,这里面关联我们自己创建的表
(3)复杂的业务流程验证,交易校验,交易操作(比如需要修改权限需要控制好,在合约里面尽量不要开放修改权限)
7 7.