在arm上运行x86动态库_Sodium:一个提供加密、解密、签名等功能的软件库

Sodium是一个跨平台的加密软件库,提供加密、解密、签名等功能。支持在各种操作系统和编译器上运行,包括在ARM上。文章详细介绍了如何在类Unix和Windows系统上编译安装Sodium,以及提供了预构建的库和交叉编译的选项。此外,还强调了Sodium的安全性和易用性,以及如何进行完整性检查和漏洞报告。
摘要由CSDN通过智能技术生成

f45e93d255c63bd75cf8e6647e3234ff.png

Sodium一个易于使用的可为我们提供加密、解密、签名,密码哈希等功能的软件库。除了自身强大的功能外,它还为我们提供了一个兼容API和一个外部API,以进一步的帮助我们提高其可用性。Sodium的目标是提供构建更高级别加密工具所需的所有核心操作。

Sodium支持跨平台和跨语言, 你可以在各种编译器和操作系统上运行它,包括Windows(使用MinGW或Visual Studio,x86和x86_64),iOS和Android。Javascript和WebAssembly版本也可用并受到完全的支持。

值得一提的是,虽然Sodium的设计着重高安全和易用性,但其整体速度与大多数实现相比更快。

libsodium 下载

Github

Tarballs 和 预编译二进制文件

在线文档

离线文档

该文档可下载保存为ePUB文件格式(适用于iPad,iPhone,Mac),MOBI(适用于Kindle)以及PDF:https://www.gitbook.com/book/jedisct1/libsodium/details

安装

在类Unix系统上编译安装

Sodium是一个共享库具有独立于机器的标头集,因此可以轻松地被第三方项目所使用。

该库使用autotools构建,因此非常易于打包。

安装也很简单,编译和测试都可利用多个CPU内核。

首先我们下载libsodium,然后执行以下命令:

./configure
make && make check
sudo make install

由于不同的文件被编译用于不同的CPU类,并且为了防止不必要的优化,因此建议尽量避免链接时优化(LTO)。

在Linux上,如果进程在make check步骤中挂起,则系统PRG可能没有正确播种。有关解决此问题的方法,请参阅“使用”部分中的说明。

在Windows系统上编译安装

通常不需要在Windows上进行编译,因为MinGW和Visual Studio的预构建库是可用的(参见下文)。

但是,如果你想自己编译,先从Git存储库克隆稳定分支。

然后可以在builds/msvc目录中找到Visual Studio的解决方案。

要使用mingw进行编译,请在win32或x64目标上运行/dist build/msys2-win32.sh或/dist build/msys2-win64.sh脚本。

预构建库

提供了可用于Visual Studio 2010,2012,2013,2015和2017的预构建x86和x86_64库,以及MinGW32和MinGW64的预构建库。包括头文件,以及所有受支持编译器版本的静态(.LIB)和共享(.DLL)库。

Visual Studio注意事项:

静态链接Sodium的项目必须定义一个名为SODIUMSTATIC的宏,这将防止符号定义被_dllexport引用。

交叉编译

支持交叉编译。以下是使用ARM嵌入式处理器的GNU工具交叉编译到ARM的示例

export PATH=/path/to/gcc-arm-none-eabi/bin:$PATH
export LDFLAGS='--specs=nosys.specs'
export CFLAGS='-Os'
./configure --host=arm-none-eabi --prefix=/install/path
make ins
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值