【开源自荐】ReSo Backup —— 冗余分片文件备份

ReSo Backup —— 你的文件备份,值得更安全的方式

这是一个实现 这个帖子的需求 的衍生应用

你有没有想过:你存在网盘里的备份文件,网盘服务商其实都能看到?

更糟的是,如果网盘突然关停、账号被封、或者服务商出了问题,你的备份可能一夜之间全部消失。

ReSo Backup 是一个开源的备份工具,专门解决这些问题。它用了一种叫「Reed-Solomon 纠删码」的技术——听起来很数学,但用起来很简单。


它能做什么?

简单说:把一个文件切成很多份分片,分散存放,任意丢几份都能恢复。

而且每份分片都经过加密,拿到任何一份都看不到原始内容。

举个例子

你有一份重要文件 合同.pdf,用 ReSo Backup 备份时设置:

  • 分成 5 份分片
  • 只要 3 份就能恢复

然后把分片这样分配:

存在哪 放几份
百度网盘 1 份
阿里云盘 1 份
OneDrive 1 份
自己的电脑 2 份

这样一来:

  • 任何一个网盘看不到你的文件(只有 1 份分片,还是加密的)
  • 电脑硬盘坏了也不怕(3 个网盘的分片够 3 份,能恢复)
  • 任何一个网盘出问题也不影响(本地 + 2 个网盘 = 3 份,照样能恢复)
  • 甚至两个网盘同时出问题都没事(本地 2 份 + 剩下 1 个网盘 = 3 份)

恢复有多简单?

方案一:本地文件还在

电脑没坏,只是想确认备份是否可用。从任意一个网盘下载 1 份分片,和本地的 2 份放在一起,3 份齐了,恢复完成。

方案二:本地文件丢了

电脑硬盘坏了。从三个网盘各下载 1 份分片,放同一个文件夹,3 份齐了,恢复完成。

整个过程不需要联网验证、不需要登录账号、不需要任何第三方服务。分片文件在手,随时能恢复。


安全吗?

  • 文件内容用 AES-256-GCM 加密(银行级加密标准)
  • 文件名也可以加密(别人看到的只是一串乱码)
  • 密码只在你本地使用,不会上传到任何地方
  • 没有账号体系、没有云端服务、没有后门——完全离线运行

谁适合用?

  • 有重要文件需要多地备份的人
  • 不想把鸡蛋放在一个篮子里(不想只依赖一个网盘)
  • 关心隐私,不想让网盘服务商看到文件内容
  • 想要一种简单可靠的备份方案,不需要学习复杂的工具

怎么用?

图形界面(推荐新手)

下载后双击打开,选文件、调参数、点备份,就这么简单。

命令行

# 备份:5 份分片,3 份可恢复,加密
rsbackup backup --input 合同.pdf --shares 5 --threshold 3 --encrypt --password "你的密码"

# 恢复:任意一个分片文件即可
rsbackup restore --input 合同.pdf.rs.001 --password "你的密码"

和其他方案的对比

云盘直接备份 压缩加密后备份 ReSo Backup
网盘能看到内容吗 不能 不能
单点故障风险 网盘挂了就没了 存哪哪就是单点 丢几份不怕
容灾能力 最多可丢失 N−K 份
需要联网恢复 需要同一网盘 需要同一位置 任意位置的分片都行

下载

GitHub Release:Reed-Solomon-Backup

支持 Windows、macOS、Linux。


一个文件,五份分片,三处网盘,两份本地。任何一处出问题,文件都还在。

这就是 ReSo Backup 想要给你的安全感。

2 个赞

有些困惑

  • 数据安全应该靠3-2-1-1-0准则,或者说数据灾备的原则来保证,这个方案似乎只是增加了备份的份数,并不会让数据满足3-2-1-1-0准则。甚至连弱化版本的3-2-1准则都没有符合
  • 而且,把单一的文件拆分成多份,似乎额外增加了很多成本,下载的时候,要对比网盘的数据和本地数据,然后对应下载。
  • 如果分片的目的仅仅是防止网盘服务商可以看到数据的话,那么,RAR有加密,甚至连文件名在内的加密,这个已经足够了啊

有点意思。这不就是伏地魔的备份方式吗。

把灵魂分成几个魂器,分散存储,本体挂了有魂器就还能再复活;

感觉比较适合处理占用超大的文件的备份。

那么有两个问题:

1.在给超大文件夹分片的时候时间会不会超级久?会远大于用压缩软件压缩这些文件的时间吗?

2.比如一个500G的文件夹,按你说的分成5个分片,只要够3个就能完全回复的话,那每个分片有多大?是500÷3的大小吗?(发完才看到您在github写的,是1.67x倍的膨胀吗)

间谍商业间谍、秘密交易、利益输送、隐匿合同专用……

这种冗余分片的目的,应该是旨在保证任何人无法窃取单一介质上的数据后还原出原始数据的前提下,在安全和成本间取得平衡。
不需要多个灾备(成本太高,且单一介质上数据完整),同时多处分散(即使被撞库也解不出原始数据)。就是不往车上加锁,反而是拆掉了发动机方向盘;赛博虎符是也。

  1. 可以容许单点(不超过N-K的多点)故障和防止单点泄密。
  2. 可以作为教具。

基本上能恢复源文件的分片数量的大小之和约等于源文件大小,只会略大一点点。在GUI上设置不同的参数可以实时看到预估的最终尺寸。

还可以用来立遗嘱啥的,单方查看不到内容,只有多于设定的几方都同意,才能看到原文。主要是这个Reed-Solomon的编码方法挺有意思,才会做出这个东西来。

1 个赞

Github 404 了?

链接错了,已修复。