简介
horcrux 是一款文件加密工具,它提供 split 和 bind 两个命令。split 能将文件分割成多个加密的片段,bind 用于复原文件,这个过程您不需要记忆任何密码。
它的工作原理是 Secret sharing(密码共享) ,像是哈利波特宇宙中的魂器,通过“打碎”文件的方式来保护文件内容,在需要的时候再凑够文件碎片来“复活”文件。
首次用户
-
使用
x env use horcrux即可自动下载并使用 -
x-cmd 提供1分钟教程,其中包含了 horcrux 命令常用功能的 demo 示例,可以帮你快速上手 horcrux 。
-
使用案例:
# 安装 horcrux
x env use horcrux
# 将指定文件加密分割成 5 块并设定至少需要 3 块才能复原文件
horcrux -t 3 -n 5 split diary.txt
# 将文件片段放同一目录下,通过文件片段复原文件
horcrux bind .
功能特点
- 不需要记住文件加密密码: 适合加密像日记这样的大型敏感文件并且不希望在几年后记住任何密码的人(前提是要记住隐藏文件片段的位置)。
- 可以让文件通过多个渠道传输:在将文件分割后,您可以通过多个渠道传输文件以大幅降低攻击者拦截能力。
- 支持自定义 horcruxes 的阈值:可以选择不需要凑够全部文件碎片来复原文件。
竞品和相关作品
- ssss: ssss 是 Shamir's Secret Sharing Scheme 的简称,它是 Secret sharing 方案的实现,但该项目仅用于密钥生成,并不适用文件。
- kndyry/horcrux: Shell 版的 horcrux,但不支持自定义 horcruxes 的阈值。
- Haystack: 用于将敏感文件分解为用户确定数量的难以区分的片段,是受 ssss 启发的另一种文件分片和重组算法,需要密码才能重组,并且不支持自定义 horcruxes 的阈值。
进一步阅读
- horcrux 源代码 - horcrux 项目的源代码托管在 GitHub,你可以在这里找到最新版本的 horcrux 和参与社区贡献。