Blog: https://blog.wu-boy.com/2023/09/secure-encryption-tool-age/
Age GitHub: https://github.com/FiloSottile/age
Go 语言内的 age 软件是一种开源的密码学工具,用于加密和解密档案。它主要用于保护
敏感档案或资料的隐私。它使用先进的加密标准,如 XChaCha20 和 Poly1305,以及
Scrypt 来加密和解密档案。它还支持多种加密标准,如 RSA 和 Ed25519,以及多种密码
学工具,它还支持多种平台,如 Linux、Windows 和 macOS。为什么我需要选择这套工具
呢?
流程图: https://blog.wu-boy.com/images/2023-09-30/flow.png
公司架构非常复杂,因为团队多样性的关系,部分资料是不能上传到公开的云端平台,因
此会把这些开发流程建置在无网络环境上,但是这样的开发流程会有一些问题,例如我们
要把档案传送给其他人,但是又不想让其他人知道档案内容,必须把档案加密,加密的档
案又不能让其他人解密。所以我们需要一套工具来加密档案,并且可以将加密的档案传送
给其他人,让其他人可以解密档案。这套工具必须要有以下特性:
* 简单容易操作
* 支援多种加密
* 支援多种平台
在上述流程图中的步骤一,就是要使用 age 工具来加密档案,由于需要全程自动化关系
,故会在此步骤进行一次性的产生加密的 Public + Private Key,确保加密的档案只有
特定的人可以解密。
## 心得感想
age 工具非常的简单,而且支援多种加密方式,如果你想要使用 SSH Keys 来加密档案,
也非常的容易,只需要使用 -R 参数即可。如果你想要多个人可以解密档案,也可以使
用 -r 参数来加入多个 Public Key。总之如果你想要加密档案,age 工具是一个不错的
选择。
另外一个选择可以用 https://github.com/getsops/sops