这里下载站-源码下载

RepChain许可链基础组件 v1.1.0

大小:1.83MB语言:简体中文 类别:国产软件系统:Scala
简介|教程|评论(0)
软件授权:开源软件时间:2021-04-18

标签:

软件介绍
RepChain许可链基础组件

RepChain(Reactive Permissioned Chain)是第一款采用响应式编程实现的自主可控的许可链基础组件,面向企业应用,强调交易的实时性和分布式环境下的柔韧性,且易于根据不同应用场景进行模块定制和弹性部署。其合约设计、可视化设计、接口设计对工程实施提供友好支持。RepChain由区块链技术与应用联合实验室、北京连琪科技有限公司和软件所互联网金融技术研究中心共同研发,RepChain1.0已通过“2019可信区块链”功能测试和性能测试,在典型场景获得成功应用,其中“区块链数字不动产证应用”被评选为 “2019可信区块链优秀案例”。

 

分层架构:

1、数据层:负责数据格式定义,数据结构采用Protocol Buffers定义文件,并以此为基础实现数据的交换、验证、存储、读取及检索

2、网络层:采用JDK内置的TLS实现,支持入网许可验证,在此基础上进行去中心化的gossip组网,网络传播支持P2P和Pub/Sub两种方式

3、共识层:完成区块的输入共识和输出共识。采用兼顾实时性和安全性的CFRD算法,既照顾到交易的实时性要求,又能在一定程度防止节点串通作弊;输入共识对入块的交易顺序达成一致,输出共识对交易顺序执行的结果达成一致

4、合约层:为合约执行提供上下文环境,支持合约的动态部署、运行时加载和编译执行

5、API层:提供外部接口,允许第三方应用以Restful的形式与系统交互,并允许开发者通过Swagger UI进行在线测试。API层提供交易签名提交、区块和交易检索等基本功能

6、监控层:在区块链网络中收集事件/日志,并将其以Protocol Buffers的格式推送至Web端,以H5图形技术进行实时状态的可视化展示和日志回放

 

安装:

install jdk8+

install Python

install Scala

install SBT

install Scala IDE

install keystore-explorer ——用于生成密钥对的工具,非必须

install protobuf editor——编辑protobuf定义工具,非必须

 

运行:

git clone https://gitee.com/BTAJL/repchain.git 下载项目到本地

sbt 在项目的根目录下下载项目依赖项,可以配置仓库或者使用阿里镜像

compile 编译成Protocol Buffer Scala类

eclipse 生成eclipse工程文件

打开 Scala IDE, File->Import->Existing Projects,导入项目

右键单击 rep.app.Repchain.scala,Run As->Scala Application(单机组网4个节点)

运行配置VM参数 -Dlogback.configurationFile=conf/logback.xml (使logback配置生效)

查看实时图 http://localhost:8081/web/g1.html

 

RepChain 更新日志:

v1.1.0_RC

1、支持OpenJDK(使用13)

推荐使用zulu社区版

2、依赖组件升级

3、组网成员在线增加/删除(节点离网入网时,系统能很快更新节点视图,保证出块不受影响)

节点由于网络故障离线,剩余节点出块不受影响,在网络恢复情况下,节点不需经过人工干预重启即可重新加入到网中,节点恢复加入后,可以继续工作。

节点由于崩溃性故障,需要人工干预重启,节点重启恢复加入后,可以继续工作。

4、共识层抽象和更多的共识算法实现

CFRD

PBFT

RAFT

5、数据前向兼容

假设系统更新时,Block数据结构追加了新的字段,新的系统代码处理和Block相关的逻辑时,可根据version来做分别的处理,以保证系统对上一个版本的数据可读可处理。

6、存储层抽象

针对不同的共识协议,进行抽象

RepChain许可链基础组件v1.1.0

加载全部内容

热门推荐
推荐教程
猜你喜欢
相关合集
用户评论
暂停评论
本类排行