ipfs简单实现文件共享(两台电脑之间实现)
ipfs简单实现文件共享(两台电脑之间实现)
使用两台计算机(windows系统下得cmd中运行),使用ipfs结合加密解密技术(GPG),对某个文件实现安全共享。
下载并配置GPG
两台电脑上均需要。
1、下载。https://gpg4win.org/download.html打开,下载gpg
显示需要付钱,我直接选择得0刀,依旧可以正常下载。
下载成功后可执行程序放在D盘根目录下(这个没有特别要求,根据自身需要选择磁盘)
双击进行安装,安装过程很简单,默认配置不用修改,一直“下一步”,其中得安装路径根据自身需要选择,我放在D根目录下。
安装完后在cmd下输入gpg --version 查看是否安装成功
2、生成公私钥。下面在两台计算机上打开cmd进行操作 (这里我用1,2号机区分):
1号机:
生成公私钥:gpg --gen-key
显示输入姓名(输入后回车)
显示输入邮件(输入后回车)
(邮件可以不写入,这些信息都是为了后面区分1,2号机的公私钥信息)
提示是否需要修改或者不需要修改(okay)
回车后显示生成得公私钥信息
导出1号机的公钥,之后拷贝给2号机
gpg --export --armor 邮件名 > pubkey1.asc
D盘根目录下会生成pubkey1.asc,然后使用U盘拷贝给2号机
接下来在2号机上导入1号机的公钥:
gpg --import pubkey1.asc
可使用命令检查是否导入成功gpg --list-keys
2号机:
生成公私钥的操作同上,注意使用不同的名字便于后面区分。
2号机的公钥也需要导出,并拷贝至1号机,1号机做导入操作,命令同上。
下载并搭建IPFS
1、下载。https://github.com/ipfs/go-ipfs/releases打开后下拉
下载框中的安装包,然后解压至磁盘下,我解压在D盘根目录中,
将ipfs.exe文件放置在D盘根目录下,便于后面的操作。
2、搭建ipfs。在1,2号机上分别执行下面的操作
ipfs init 初始化
ipfs daemon 启动daemon进程
准备测试文件并对其进行加密
1、文件准备。.dox .pdf .txt .xls类型的文件都可以作为选择,当中输入简单的几句话作为测试就可。比如“这是一个测试文件!”
2、加密。1号机上进行操作:
使用2号机的公钥对文件进行加密
gpg --encrypt --recipient “2号机的公钥id” 要加密的文件名称.格式
以test.txt为例
gpg --encrypt --recipient “2号机的公钥id” test.txt
成功后目录下生成test.txt.gpg已加密文件
上传加密文件至IPFS
1号机:ipfs add test.txt.gpg
会返回该文件的hash值,以Qm开头。
2号机:ipfs cat hash值 查看文件
ipfs get hash值 2号机从ipfs上下载刚才加密过并上传的文件
运行后耐心等待,时间比较长。
下载成功后,加密文件就存在于2号机了(test.txt.gpg就存在于2号机上)
解密文件
2号机:使用2号机的私钥对其进行解密
gpg --decrypt 加密文件名 > 解密后的文件名
以test.txt.gpg为例
gpg --decrypt test.txt.gpg > jiemitest.txt
弹出输入指纹密码框,输入一开始配置时设置的密码即可
解压成功后目录下产生 jiemitest.txt