![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
fabric
文章平均质量分 51
fabric相关
blockchain_yhj
1986739692@qq.com
18852897525@163.com
展开
-
区块链是怎么存储数据的?
每个块都是有大小限制的新的数据存储单元,当前数据不到上限,那么都可以添加进块。当前数据达到了上限,那么就得分表/分块,超限的那部分数据就需要等待下个区块存储原创 2024-01-12 16:07:33 · 800 阅读 · 2 评论 -
区块链浏览器搭建一--安装 node 版本管理 postgresql jq
1 fabric版本 1.4.02 blockchain-explorer 版本 1.1.73 需要的node版本 npm版本(1)通过nvm管理node版本 通过nvm ls -a查看所有node版本 通过 nvm install v12.13.1 nvm use 12.13.1 切换node版本(2)通过n管理node版本安装npm install n -g管理node版本n 显示已安装的Node版本n l转载 2021-07-14 09:37:44 · 479 阅读 · 0 评论 -
Hyperledger fabric 链码AES ECC椭圆曲线
链码实现的业务逻辑链码设计椭圆曲线加密解密、AES加密解密业务逻辑:加密部分:输入:2部分明文信息(指定唯一键值)、AES密钥输出:上链成功信息链码中写入详细注释并在链码镜像中输出具体上链数据以及加密步骤唯一键值---------第一个上链数据第一步:通过AES加密学生信息 输出信息密文 ----第二个上链数据第二步:为学生生成ECC密钥对第三步:为可视化密钥对,编码密钥对,输出编码信息第四步:通过学生ECC公钥加密AES密钥 ------------第三个上链数据第四步:编码原创 2021-08-02 16:53:20 · 805 阅读 · 1 评论 -
postman测试数据上链写-读接口 批量读取数据
查询 GEThttp://192.168.84.159:4000/channels/channelproduce/chaincodes/defendright填写Token在params添加参数:peer、fcn、args上传POSThttp://192.168.84.159:4000/channels/channelproduce/chaincodes/defendright添加Token在body部分添加参数...原创 2021-04-14 16:01:51 · 551 阅读 · 0 评论 -
通过简单界面实现接口
read<!DOCTYPE html><html><head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width"> <title>课堂练习</title> <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js原创 2021-11-22 20:47:31 · 606 阅读 · 0 评论 -
balance-transfer sdk搭建语句
1 配置 network-config.yaml 文件,证书文件路径配置2启动两个终端 terminal1 和 terminal23在terminal1中启动node 的4000端口服务器PORT=4000 node app四 进入terminal2前提准备:共5个组织 org1,org2,org3,org4,org5需要创建通道 channelmain、channelproduce、channelprocess、channellogistics通道配置文件通道配置文件以及创世区块配置原创 2020-11-08 13:44:45 · 687 阅读 · 1 评论 -
链码 安装-实例化-更新
安装peer chaincode install -n eduecc -v 1.7 -l golang -p github.com/chaincode/ecc实例化peer chaincode instantiate -o orderer.example.com:7050 --tls true --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orde原创 2021-11-22 19:10:09 · 4351 阅读 · 0 评论 -
PBFT共识及视图切换
PBFT译为实用性拜占庭容错,顾名思义此算法是拜占庭容错的,也就是说可以容忍有一定数量(算法中是(n-1)/3)的“坏人”存在。因为PBFT算法除了需要支持容错故障节点之 外,还需要支持容错作恶节点,假设集群节点数为 N,有问题的节点为f,有问题的节点中,可以既是故障节点,也可以是作恶节点,或者只是故障节点或者只是作恶节点。那么会产生以下两种极端情况:第一种情况,f个有问题节点既是故障节点,又是作恶节点,那么根据小数服从多数的 原则,集群里正常节点只需要比f个节点再多一个节点,即f+1个节点,确节点的数量转载 2021-11-12 20:58:18 · 2551 阅读 · 0 评论 -
fabric 1.4.4 搭建多链--网络环境
1 ../bin/cryptogen generate --config=./crypto-config.yaml2../bin/configtxgen -profile FiveOrgsOrdererGenesis -channelID byfn-sys-channel -outputBlock ./channel-artifacts/genesis.block3 ChannelMain../bin/configtxgen -profile MainOrgsChannel -outputCreate原创 2020-11-03 14:46:28 · 945 阅读 · 0 评论 -
fabric docker配置文件---启用ca 选择couchdb数据库
示例配置文件中 5个组织 每个组织下两个节点 共10个节点每个节点配置一个couchdb数据库 共配置10个数据库couch节点每个组织启动一个ca节点 共5个ca节点1 docker-compose-cli.yaml文件 cli启用tls服务# Copyright IBM Corp. All Rights Reserved.## SPDX-License-Identifier: Apache-2.0#version: '2'volumes: orderer.example.原创 2021-07-22 20:17:23 · 570 阅读 · 1 评论 -
fabric first-network 默认配置文件 无ca 无couchdb 启动tls
1 docker-compose-cli.yaml配置文件 无cacli节点默认开启tls服务# Copyright IBM Corp. All Rights Reserved.## SPDX-License-Identifier: Apache-2.0#version: '2'volumes: orderer.example.com: peer0.org1.example.com: peer1.org1.example.com: peer0.org2.example.c原创 2021-07-22 19:43:44 · 349 阅读 · 0 评论 -
fabric区块解析
获取通道配置区块获取最新区块获取通道信息获取指定高度的区块解析区块原创 2021-07-22 15:52:57 · 1600 阅读 · 0 评论 -
fabric solo共识下新增节点
服务器1中数据需全部迁移服务器2中服务器1具备的服务:fabric order节点、peer0.org1、peer1.org1节点、区块链浏览器现在服务器2中增加peer3.org1同步全部数据后,依次停掉peer0、peer1节点,停一个在新服务器中启动一个 最后迁移order节点新增节点peer3时,需要在就服务器中生成加密证书文件,将全部证书文件以及通道配置文件复制一份到新的数据库修改加密证书配置文件增加新节点证书将通道配置文件复制一份,放入证书文件打包全部证书文件...原创 2021-07-20 15:22:20 · 276 阅读 · 0 评论 -
fabric 新增组织
一、更新通道配置1 为Org3 CA以及与此新Org绑定的两个对等生成密钥和证书cd /opt/gopath/src/github.com/hyperledger/fabric/scripts/fabric-samples/first-network/org3-artifacts../../bin/cryptogen generate --config=./org3-crypto.yaml执行成功后会在org3-artifacts文件下生成crypto-config文件夹复制first-net原创 2020-07-15 16:52:09 · 1229 阅读 · 3 评论 -
fabric节点 主节点选举
1 节点介绍节点介绍2 主节点 选举方式cd /opt/gopath/src/github.com/hyperledger/fabric/scripts/config一个组织(其实是成员)在一个通道上可以有多个Peer节点,这时候为了提高通信效率,需要选举出来一个主节点(leader)作为代表和排序服务节点通信,负责从排序服务节点处获取最新的区块并在组织内部同步。有如下两种方式:静态选举或者动态选举静态选举在core.yaml配置文件中 useLeaderElection:true/原创 2021-07-18 20:37:29 · 525 阅读 · 1 评论 -
联盟链 fabric 数据库 数据存储
Hyperledger Fabric的区块链结构由区块头和区块体组成,并通过父区块哈希编码构成唯一链接,Hyperledger Fabric加入一层状态缓存设计,用以提高读写性能。Hyperledger Fabric本质上是一个分布式账本,在底层结构中都是通过键值对的方式来存储数据。而区块链1.0为了实现数据的时间可回溯性和数据防篡改机制,在链中并不保存数据的状态,而只保存对数据的变更。这就使得对某条数据的状态查询需要进行全链遍历,其查询性能很难满足一些企业级业务的性能需求,因此Hyperledger F原创 2021-04-17 22:36:05 · 5267 阅读 · 4 评论 -
Ubuntu修改静态ip
修改配置文件vim /etc/netplan/01-network-manager-all.yaml# Let NetworkManager manage all devices on this systemnetwork: version: 2 renderer: NetworkManager ethernets: ens33: #配置的网卡名称,使用ifconfig -a查看得到 dhcp4: false #dhcp4开启 addresses:原创 2021-04-18 16:58:01 · 170 阅读 · 0 评论 -
fabric区块高度--多通道存在多个高度为0的区块 以区块链浏览器形式展示
1 查看加入的通道peer channal list2查看安装的链码peer chaincode list --installed3查看在当前通道内实例化的链码peer chaincode list --instantiated -C channelproduce3查看当前通道信息peer channel getinfo -c mychannel4查看通道最新区块信息peer channel fetch newest -c mychannel -o orderer.exa原创 2021-04-14 16:45:16 · 877 阅读 · 0 评论 -
Ubuntu su认证 右键终端设置 git clone速度慢
输入 sudo passwd原创 2020-03-05 12:51:32 · 226 阅读 · 0 评论 -
apt-get更新速度太慢
虚拟机VMware 下的Ubuntu16.04亲测有效点击右上角的设置按钮 进入系统设置选择软件和更新 更新下载源点击下载源的下拉列表 切换下载源选择mirrors.aliyun.com镜像地址,点击选择服务器等待载入数据数据载入成功后,apt-get速度就起飞了...原创 2020-03-02 16:47:03 · 1412 阅读 · 0 评论 -
在普通用户下添加docker组、建立go、nvm的环境变量 和 is docker daemon running问题
出现问题原因:docker进程使用Unix Socket而不是TCP端口。而默认情况下,Unix socket属于root用户,需要root权限才能访问解决方法:1 在普通用户状态下添加docker用户组2 将用户名加入到docker用户组3 更新用户组4 测试是否运行成功sudo groupadd dockersudo gpasswd -a $USER dockernewgr...转载 2020-03-02 16:37:43 · 721 阅读 · 0 评论 -
apt-get update出现错误 ‘E: Problem executing scripts APT::Update::Post-Invoke-Success ‘if /usr/bin/test’
在终端执行以下代码:sudo pkill -KILL appstreamcli`wget -P /tmp https://launchpad.net/ubuntu/+archive/primary/+files/appstream_0.9.4-1ubuntu1_amd64.deb https://launchpad.net/ubuntu/+archive/primary/+files/li...转载 2020-03-02 12:19:54 · 1610 阅读 · 0 评论 -
fabric 出块机制
在 fabric 中,一个区块结构 Block 的主要数据部分是由一个或多个交易(或者配置)数据结构 Envelope 组成。出块即是将一个或多个 Envelope 打包成一个 Block,这个工作由 orderer 完成。当客户端将一个交易相关的数据组成的 Envelope 提交给 orderer 后,最终将被转给 blockcutter 按顺序缓存,满足条件后,提取出来进行区块打包。如何满足出块条件呢?这包含以下几个指标:BatchTimeout:2s这个超时指的是,超过一定时间没有出块了,.原创 2021-04-06 17:24:29 · 1054 阅读 · 0 评论 -
fabric 安装fabric-ca-server、fabric-ca-client
1 安装go2配置 gopath3 在gopath下创建bin文件夹 /opt/gopath下创建bin文件夹4执行扩展包apt -y install libtool libltdl-dev5执行以下命令在/opt/gopath/bin 下安装 fabric-ca-server、fabric-ca-client 二进制可执行文件go get -u github.com/hyperledger/fabric-ca/cmd/......原创 2020-11-11 10:17:41 · 771 阅读 · 0 评论 -
CouchDB搭建细节
删除链码1 删除镜像和容器docker ps -a 查询出后台运行容器 执行 docker rm -rf container_id2 执行 docker images 查看容器部署执行docker rmi container_id删除容器3进入部署链码的节点(peer0.org1.example.com)docker exec -it peer0.org1.example.com bash4 进入节点链码保存 地址删除链码备份cd /var/hyperledger/productio原创 2020-11-06 10:15:09 · 402 阅读 · 0 评论 -
fabric1.4.4 基础环境搭建
1 在$GOPATH/src/github.com/hyperledger下 clone fabric (gopath路径一般设置 /opt/gopath) git clone https://github.com/hyperledger/fabric.git2 进入fabric,切换分支 进入自己想要搭建环境的分支查看当前分支git branch -a在显示的分支中选择自己的分支git checkout -b remotes/origin/release-1.43 修改boots原创 2020-09-03 09:45:02 · 1411 阅读 · 3 评论 -
fabric 1.4.7 byfn.sh的手动部署过程
1 生成数字证书和密钥cd /opt/gopath/src/github.com/hyperledger/fabric/scripts/fabric-samples/first-network../bin/cryptogen generate --config=./crypto-config.yamlcrypto-config.yaml 文件定义orderer组织 和Peer节点配置 生成的oederer组织个数 组织内的节点个数2生成创世区块 ../bin/configtxgen -profi原创 2020-07-13 15:35:59 · 930 阅读 · 0 评论