14个版本
0.6.8 | 2024年7月31日 |
---|---|
0.6.7 | 2024年6月26日 |
0.6.2 | 2024年5月23日 |
0.5.0 | 2024年3月5日 |
0.4.3 | 2024年1月22日 |
#1245 in 加密学
134 每月下载量
在 2 crates 中使用
84KB
1K SLoC
nuts:一个安全存储工具集。
简介
nuts库实现了一个安全存储库,数据存储在容器中。容器被分成加密块。因此,nuts容器看起来像一个块设备。所有打开它所需的东西(例如密钥)都存储在容器本身中。该库具有丰富的API,因此可以轻松集成到您的应用程序中。
容器本身不管理加密数据。它被传输到一个只负责块持久存储的后端。这样,数据可以轻松地存储在不同的媒体或不同的格式中。密钥保留在容器中,不会存储在后端。
nuts-archive是一个基于nuts容器的应用程序。受tar
工具的启发,您可以将文件、目录和符号链接存储在nuts容器中。
nuts
命令行实用程序用于维护nuts容器及其应用程序。
入门
安装
尝试nuts
工具的最简单方法是使用Docker容器
docker pull dorobin/nuts
然后在容器中打开一个shell
docker run -it dorobin/nuts bash
root@92cdafaf933b:/# # you are inside the container
root@92cdafaf933b:/# # the nuts tool is installed as /usr/local/bin/nuts
root@92cdafaf933b:/# ls /usr/local/bin/nuts
/usr/local/bin/nuts
或者,可以使用cargo install
安装nuts
工具及其后端
安装nuts工具
cargo install nuts-tool
将nuts-directory后端作为插件安装
cargo install nuts-directory --features=plugin
配置插件
插件必须为nuts工具配置
nuts plugin add directory --path nuts-directory
directory
是插件名称。您可以使用此标识符来识别插件。nuts-directory
是插件可执行文件的路径。
注意:如果您正在使用Docker镜像,此步骤不是必需的。插件已在镜像中配置。
创建容器
以下命令创建一个名为sample
的容器,它使用directory
插件
nuts container create sample --plugin=directory
从容器检索一些基本信息
NUTS_CONTAINER=sample nuts container info
工具 nuts
评估环境变量 NUTS_CONTAINER
以确定使用哪个容器。或者,可以使用命令行选项 --container
。
在容器上创建存档
NUTS_CONTAINER=sample nuts archive create
将本地文件放入存档
echo "hello world" > f1.txt
NUTS_CONTAINER=sample nuts archive add f1.txt
列出存档的内容
NUTS_CONTAINER=sample nuts archive list
从存档中检索文件
NUTS_CONTAINER=sample nuts archive get f1.txt
lib.rs
:
一个示例 nuts_backend::Backend
实现,该实现在内存中存储数据。
此实现主要用于演示、测试和文档。
依赖项
~285–750KB
~18K SLoC