使用Horcrux安全地分散并保护你的文件

Horcrux 是一个创新的开源工具,它利用了 Shamir Secret Sharing Scheme(萨米尔秘密共享方案)来将你的文件分割成加密的部分,这样就不必记住复杂的密码。只需要一部分"碎片"就能重新组合出原始文件,为数据安全性提供了一种新的解决方案。
项目工作原理
Horcrux 提供两个命令:
split
和
bind
。
- **拆分(Splitting)**:假设你有一个名为
diary.txt的文件,只需运行horcrux split diary.txt,然后输入你想创建的碎片数量以及恢复文件所需的最小碎片数。比如,你可以创建5个碎片,只要拥有其中的3个就能够重建原文件。这些碎片将以diary_1_of_5.horcrux等形式保存。 - **合并(Binding)**:要恢复文件,只需在包含碎片的目录中运行
horcrux bind(或者指定目录),系统会自动把它们重新组合起来。
安装与使用
Horcrux 可通过多种方式安装:
- Homebrew 用户可以使用
brew install jesseduffield/horcrux/horcrux - Scoop 用户可执行
scoop bucket add extras; scoop install horcrux - 也可以直接从 GitHub releases 页面下载二进制版本。
适用场景
Horcrux 对于以下人群非常有用:
- 需要加密大文件且不希望日后依赖记忆密码的人。
- 想要通过多渠道传输文件以降低拦截风险的人。
- 或者,如果你就是汤姆·里德尔(注:《哈利波特》中的反派角色,也即伏地魔)本人。
项目特色
- 基于 Shamir Secret Sharing Scheme 实现,仅需部分碎片即可还原文件,提高了安全性。
- 不需要记忆复杂的密码,只需管理好各个碎片的位置。
- 支持设置不同阈值,允许不同的碎片组合方式来恢复文件。
FAQ
Horcrux 的工作方式可能与《哈利波特》小说中描述的不同,但其实原理很接近。它是基于一种高度可靠的秘钥分享算法实现的,并利用了 Go 语言的标准库进行随机密钥生成。
社区参与和替代方案
欢迎提交 Pull Request 来帮助改进 Horcrux。例如,你可以关注 Issue #4,探讨如何确保数据完整性。
此外,还有类似的项目可供选择:
- ssss: 用于密钥分享,但不直接支持文件。
- kndyry/horcrux:同样叫 Horcrux,但不支持设定恢复文件所需的最少碎片数。
- Haystack:另一种文件分片和重组的实现,但它要求在重组时输入密码,且不支持碎片阈值。
探索更多项目
作者还开发了其他有趣的项目:
- 非常幽默的个人博客: jesseduffield.com
- 编程语言 OK?: ok
- Lazygit: lazygit
- Lazydocker: lazydocker
立即尝试 Horcrux,让文件的安全存储和分享变得更加简单和智能!
版权归原作者 杭臣磊Sibley 所有, 如有侵权,请联系我们删除。