購買專欄前請認真閱讀:《基于區(qū)塊鏈與IPFS的數(shù)據(jù)共享系統(tǒng)》專欄簡介
視頻演示:
https://www.bilibili.com/video/BV1y24y1v7RX
系統(tǒng)簡介:
本系統(tǒng)使用RSA算法生成密鑰對, RSA私鑰用于用戶身份認證;用戶發(fā)送的數(shù)據(jù)將存儲于IPFS, IPFS返回的CID(IPFS Hash)使用用戶的RSA公鑰加密后存儲于區(qū)塊鏈; 區(qū)塊鏈部分使用Hyperledger Fabric,并用Hyperledger Explorer追蹤交易
包含功能
- 基于Fabric v1.4.4 first-network,四個peer一個orderer節(jié)點,使用docker部署
- IPFS使用的是ipfs/kubo鏡像,負責用戶數(shù)據(jù)文件的存儲,IPFS返回的CID存儲于Fabric
- 項目包含了Hyperledger Explorer(區(qū)塊鏈瀏覽器),默認跟隨腳本啟動
- 項目包含了tape對鏈碼壓測
- 使用RSA公私鑰鑒別用戶身份(1024位)
- 鏈碼對傳輸記錄進行存儲,包含:發(fā)送者公鑰、接收者公鑰、文件在IPFS的加密CID(由發(fā)送者或接收者的公鑰加密)、文件名、時間戳、Fabric交易id
- 后端使用gin框架實現(xiàn),前端使用Vue和Element ui實現(xiàn)
使用go fabric sdk調(diào)用智能合約;使用go-ipfs-api上傳與下載用戶文件;使用uuid對用戶的文件名(下載時)進行加密
安裝步驟(默認是在本地虛擬機)
-
安裝ubuntu 20.04(或其他Linux發(fā)行版),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 為服務器公網(wǎng)IP:datashare/application/server/controller/controller.go datashare/application/web/index.html
-
啟動區(qū)塊鏈部分
cd blockchain ./start.sh
-
啟動前后端
cd application/server go run main.go
-
如果是云服務器
在防火墻放行9090和8080TCP端口 -
打開網(wǎng)頁
ip:9090/web
tape測壓命令:
在blockchain/tape中文章來源:http://www.zghlxwxcb.cn/news/detail-437787.html
./tape --config=config.yaml --number=100文章來源地址http://www.zghlxwxcb.cn/news/detail-437787.html
注意:
- 如果全部是在虛擬機內(nèi)操作,不需要修改IP
- 提示密鑰不對、服務器錯誤請檢查是否修改好hosts(步驟2)
到了這里,關于基于區(qū)塊鏈與IPFS的數(shù)據(jù)共享系統(tǒng)搭建步驟的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!