14 个版本 (9 个重大更改)
0.10.2 | 2019年1月28日 |
---|---|
0.10.1 | 2018年10月24日 |
0.10.0 | 2018年8月24日 |
0.9.0 | 2018年5月7日 |
0.1.2 | 2016年9月27日 |
#14 in #cryptographic
935 每月下载量
在 15 个 包中使用 15 次(直接使用11次)
2MB
9K SLoC
rust_sodium
Rust 到 libsodium 的绑定。
该项目主要基于 sodiumoxide。一些主要区别包括
- 默认构建或下载 libsodium,偏好静态构建、固定版本的本地库
- 提供使用伪随机数生成器初始化 libsodium 的能力,允许生成可重现的数据,这在测试环境中可能很有用
- 实现一个测试,以确保 FFI 绑定与本地库的接口匹配
- 在 Windows(AppVeyor)、OS X 和 Linux(Travis)上运行 CI 测试
包 | 文档 | Linux/OS X | Windows | 问题 |
---|---|---|---|---|
![]() |
MaidSafe 网站 | SAFE 开发论坛 | SAFE 网络论坛 |
---|
关于在 Linux 上构建的说明
某些情况可能需要构建配置为 --disable-pie
的 libsodium。要启用此功能,请在构建时设置环境变量 RUST_SODIUM_DISABLE_PIE
,例如:
RUST_SODIUM_DISABLE_PIE=1 cargo build
使用自己的 libsodium 复制
如果您已经拥有 libsodium 的副本,可以选择将其链接到项目中而不是让 rust_sodium 为您下载和构建 libsodium。您应确保其版本与 [我们的 build.rs](https://github.com/maidsafe/rust_sodium/blob/master/rust_sodium-sys/build.rs) 文件中指定的版本相同。
将环境变量 RUST_SODIUM_LIB_DIR
设置为包含 libsodium 的文件夹。如果没有同时设置 RUST_SODIUM_SHARED
,将优先选择静态版本的 libsodium。
或者,如果适用,您可以使用 pkgconfig 来定位 libsodium,将 RUST_SODIUM_USE_PKG_CONFIG
设置为任何值。在这种情况下,RUST_SODIUM_SHARED
没有影响,通常将使用共享版本的 libsodium。
交叉编译
为 ARM 交叉编译
-
安装依赖项和工具链
sudo apt update sudo apt install build-essential gcc-arm-linux-gnueabihf libc6-armhf-cross libc6-dev-armhf-cross -y rustup target add armv7-unknown-linux-gnueabihf
-
将以下内容添加到 .cargo/config 文件
[target.armv7-unknown-linux-gnueabihf] linker = "arm-linux-gnueabihf-gcc"
-
通过运行以下命令进行构建:
cargo build --release --target armv7-unknown-linux-gnueabihf
为 32 位 Linux 交叉编译
-
安装依赖项和工具链
sudo apt update sudo apt install build-essential gcc-multilib -y rustup target add i686-unknown-linux-gnu
-
通过运行以下命令进行构建:
cargo build --release --target i686-unknown-linux-gnu
许可证
在以下许可证之一下发布:
- Apache许可证,版本2.0,(LICENSE-APACHE 或 https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT许可证 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
由您选择。
贡献
除非您明确声明,否则根据Apache-2.0许可证定义,您有意提交并包含在作品中的任何贡献,应如上所述双重许可,不附加任何额外条款或条件。