基于IPFS写的一款去中心化聊天客户端GUI

IPFS具有一个pubsub模式,可以提供对等体的消息传输功能,基于此功能,我用java Swing编写了一个客户端。

客户端具有以下功能

  1. 上传文件到IPFS网络
  2. 和IPFS网络上其他客户端聊天
  3. 查看IPFS网络上的文件,并通过浏览器打开(MP3,MP4,图片等等)

用到IPFS的API

  1. ipfs add - 添加文件或目录 :将的内容添加到ipfs中。使用-r来添加目录。目录内容的添加 是递归进行的,以便生成ipfs的默克尔DAG图。返回hash同时通过聊天发送到群聊天室。

  2. ipfs get 将指定路径的IPFS/IPNS对象的数据下载到磁盘

  3. ipfs block stat用来提取IPFS裸块的信息,它在标准输出设备stdout 上输出

  4. ipfs config 用来操控配置变量。它非常类似于git config。配置值 保存在IPFS本地仓库中的配置文件。客户端头像,昵称等。

  5. ipfs pubsub 用来发送和接收消息

  6. ipfs bitswap wantlist 用来遍历统计get数据块数量

客户端技术

java swing +spring +mybatis+sqlite3

客户端截图

https://download.csdn.net/download/lanbery/10671156(客户端下载)

基于IPFS写的一款去中心化聊天客户端GUI_第1张图片

基于IPFS写的一款去中心化聊天客户端GUI_第2张图片

基于IPFS写的一款去中心化聊天客户端GUI_第3张图片

ipfs 启动

ipfs daemon --enable-pubsub-experiment 

端口用默认:5001,8080,4001 

你可能感兴趣的:(GO,IPFS)