购买专栏前请认真阅读:《基于区块链与IPFS的视频版权存证系统》专栏简介
系统简介:
本系统使用RSA算法生成密钥对, RSA私钥用于用户身份认证,这里的用户包括普通用户(创作者)与机构;用户发送的数据将存储于IPFS, IPFS返回的CID(IPFS Hash)以及详细的版权信息存储于区块链,拓展了区块链的存储空间; 区块链部分使用Hyperledger Fabric,并用Hyperledger Explorer追踪交易
包含功能
- 基于Fabric v1.4.4 first-network,四个peer一个orderer节点,使用docker部署
- IPFS使用的是ipfs/kubo镜像,负责用户数据文件的存储,IPFS返回的CID存储于Fabric
- 项目包含了Hyperledger Explorer(区块链浏览器),默认跟随脚本启动
- 项目包含了tape对链码压测
- 使用RSA公私钥鉴别用户身份(1024位)
- 链码对传输记录进行存储,包含:用户公钥、机构公钥、文件的IPFS CID、文件名、时间戳、Fabric交易id
- 后端使用gin框架实现,前端使用Vue和Element ui实现
使用go fabric sdk调用智能合约;使用go-ipfs-api上传与下载用户文件
安装步骤(默认是在本地虚拟机)
-
安装ubuntu 20.04(或其他Linux发行版),docker,docker-compose,go1.19
docker,docker-compose,go1.19安装方法请参考此文章:https://blog.csdn.net/qq_41575489/article/details/129129086 -
向/etc/hosts 写入:
127.0.0.1 orderer.example.com 127.0.0.1 peer0.org1.example.com 127.0.0.1 peer1.org1.example.com 127.0.0.1 peer0.org2.example.com 127.0.0.1 peer1.org2.example.com
-
项目在服务器上运行需要操作,如果是虚拟机则省略这步。
修改以下两个文件中127.0.0.1 为服务器公网IP:datashare/application/server/controller/controller.go datashare/application/web/index.html
-
启动区块链部分
cd blockchain ./start.sh
-
启动前后端
cd application/server go run main.go
-
如果是云服务器
在防火墙放行9090和8080TCP端口 -
打开网页
ip:9090/web
tape测压命令:
在blockchain/tape中
./tape --config=config.yaml --number=100
扫描二维码关注公众号,回复:
15604922 查看本文章
注意:
如果全部是在虚拟机内操作,不需要修改IP