3 个不稳定版本
0.2.1 | 2019年2月27日 |
---|---|
0.2.0 | 2019年2月27日 |
0.1.0 | 2019年1月22日 |
在 #验证 中排名 #25
15KB
262 代码行
Downify
Downify 是一个用于下载、签名和验证文件的 Rust 库。它旨在作为应用程序更新机制的一部分使用。
该库使用 reqwest 从 URL 下载文件并使用 blake2-rfc 对其进行哈希处理。然后使用 sodiumoxide 验证文件的签名哈希,在返回 VerifiedFile
处理之前。
Sodiumoxide 的密钥和签名使用 base64 的 URL_SAFE_NO_PAD 进行编码以进行存储/传输。
- 公钥前缀为 "DYP1"
- 私钥前缀为 "DYS1"
- 签名前缀为 "DYG1"
包括一个基于 OpenBSD's Signify 的库命令行界面,具有相应的选项。
示例
extern crate downify;
// Generate a keypair
let (public_key, secret_key) = downify::gen_keypair();
// Sign a file
let signature = downify::sign("/source/path", &secret_key);
// Verify a local file
let file_handle = downify::verify_open("/source/path", &signature, &public_key).unwrap();
// Verify a remote file
let file_handle = verify_get("https://www.example.com/", "/destination/path", &signature, &public_key).unwrap();
依赖项
~38MB
~514K SLoC