79 个版本
0.29.2 | 2024年4月22日 |
---|---|
0.29.1 | 2024年1月24日 |
0.28.6 | 2023年12月19日 |
0.28.5 | 2023年10月9日 |
0.0.4 | 2015年3月8日 |
#98 in 密码学
每月下载量:7,629
用于 22 个crate(8 个直接使用)
135KB
1K SLoC
self_encryption
自加密文件(收敛加密加混淆)
包 | 文档 |
---|---|
MaidSafe 网站 | SAFE 开发论坛 | SAFE 网络论坛 |
---|
概述
这是一种收敛加密的版本,增加了一个混淆步骤。这种模式允许加密数据同时也能进行 数据去重。此库提供了一个API,接受一组字节并从中派生出一个密钥,以及一组加密块。还提供了一个逆向函数,通过将加密返回的配对(密钥和加密块)传递进去,可以返回原始字节。还可以通过调用 seek 辅助函数来在加密块的内容中查找原始字节,以产生用于定位相关块的信息,然后调用 decrypt_range api 与块、密钥和之前步骤中的 seek 信息一起使用。
需要注意的一个重要方面
此库提供了非常安全的加密,返回的加密块可以视为与使用任何其他现代加密算法加密一样安全。 但是 返回的密钥 需要像任何其他密钥一样进行安全处理。
过程视频
白皮书
自加密数据,David Irvine,首次发布于2010年9月,修订于2015年6月。
示例
使用 self_encryptor
该库将一组字节分割成加密块,并为它们生成一个密钥。这个密钥允许文件被重新组装。以下是使用 'basic_encryptor' 示例的说明:
加密文件
cargo run --example basic_encryptor -- -e <full_path_to_any_file>
现在,示例二进制文件应该在 ../self_encryption/target/debug/examples/
。给定文件及其加密块的密钥将被写入当前目录。
解密文件
cargo run --example basic_encryptor -- -d <full_path_to_secret_key> <full_destination_path_including_filename>
这将在给定的目标路径上恢复原始文件。
许可证
本软件根据通用公共许可证(GPL)第3版授权(LICENSE https://gnu.ac.cn/licenses/gpl-3.0.en.html)。
链接例外
self_encryption 根据 GPLv3 许可证授权,并包含链接例外。这意味着您可以将该库链接到任何程序(专有或开源;付费或免费)。但是,如果您修改 self_encryption,则必须根据 GPLv3 的条款分发您修改版本的源代码。
有关更多详细信息,请参阅 LICENSE 文件。
贡献
想要贡献吗?太棒了 🎉
有许多方式可以为项目做出贡献,无论是编写新代码、修复错误还是仅报告错误。所有形式的贡献都受到鼓励!
有关如何贡献的说明,请参阅我们的 贡献指南。
依赖项
~14–25MB
~521K SLoC