1 个不稳定版本
0.1.0 | 2023 年 5 月 8 日 |
---|
#12 在 #保护
7KB
60 代码行
Secret Keeper
一个简单且安全的命令行工具,通过使用强大的 AES-256 算法对文本进行加密和解密来保护您的文本。使用 Rust 和 GPT4 构建。
安装
cargo install secretkeeper
使用方法
sk encrypt <text> <password>
sk decrypt <text> <password>
请确保安全地保管密码;如果没有密码,您将无法从加密数据中恢复原始文本。
这个基于 Rust 的命令行工具提供了一种简单而安全的方法来使用 AES-256 算法(CBC 模式,PKCS7 填充)对文本进行加密和解密。通过执行操作(加密或解密)、输入文本和密码,它提供了一种有效的方法来保护敏感信息。加密过程涉及将提供的密码哈希化以创建一个 32 字节密钥,生成一个随机的初始化向量(IV),然后对输入文本进行加密。输出以十六进制字符串的形式表示,其中包含 IV 和加密文本,确保在数据存储或传输过程中的安全性。
解密过程需要与加密时相同的密码,确保只有拥有正确密码的用户才能访问原始内容。该工具首先从提供的输入数据中分离出 IV 和加密文本。然后,它使用哈希密码和 IV 创建一个密文以解密文本。如果解密成功,该工具将输出解密文本,允许用户恢复其原始信息。为了确保工具的可使用性和效率,加密和解密功能已被分离成两个独立的功能,从而提高了代码的整体结构和可维护性。
总的来说,这个加密工具为寻求使用广泛使用的加密算法保护其敏感数据的用户提供了一种简单且安全的解决方案。AES-256 在 CBC 模式下、PKCS7 填充和随机 IV 的使用提供了强大的安全性,以抵御潜在的攻击。命令行界面使工具易于使用并集成到各种工作流程中,而代码提高了未来更新或定制的可维护性。
依赖关系
约 2.5–3.5MB
~76K SLoC