- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我需要在我的 Ubuntu (14.04) 服务器上的 PHP(5.5.9) 应用程序中加密密码和一些其他数据。我阅读了 libsodium,发现它非常适合应用程序要求。我遵循了唯一的 tutorial 中给出的所有说明。可用于 libsoidum。
当我检查 phpinfo() 页面时,我可以看到 libsodium 的条目如下:
启用 libsodium 支持
libsodium编译版本1.0.6
libsodium header 版本 1.0.3
libsodium 库版本 1.0.3
但是,当我尝试运行上面教程中给出的基本示例时:
<?php var_dump([ \Sodium\library_version_major(),\\Sodium\library_version_minor(),\Sodium\version_string() ]);?>
我收到一条错误消息“调用未定义的函数 Sodium\library_version_major()”。
这真的让我感到困惑,因为扩展被 phpinfo() 页面正确识别。
任何人都可以帮助我理解我是否遗漏了什么或做错了我无法将 libsodium 与 php 一起使用。非常感谢任何帮助。
谢谢。
最佳答案
我假设您已尝试从命令行 运行基本示例。在这种情况下,不仅需要将 extension=libsodium.so
添加到位于 /etc/php5/apache2/php.ini 的 apache2 的 php.ini 中在 Ubuntu 14.04 上。
此外,还需要将此行添加到位于 /etc/php5/cli/php.ini 的 cli 环境的 php.ini 文件中。
关于php - 安装了 Libsodium 和 pecl-libsodium 但 PHP 抛出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38879086/
我通过 NuGet 安装了 Libsodium-net 并且能够在我的类中包含 Sodium,但是当我尝试运行它时,我得到了 Sodium.dll 中发生了“System.DllNotFoundExc
我需要在我的 Ubuntu (14.04) 服务器上的 PHP(5.5.9) 应用程序中加密密码和一些其他数据。我阅读了 libsodium,发现它非常适合应用程序要求。我遵循了唯一的 tutoria
我一直在努力使用 crypto_secretbox_easy() 在 libsodium 中加密/解密一些数据| .我似乎找不到关于使用的任何好的文档。 我想从用户那里获取密码,用它来以某种方式制作
功能 int crypto_sign(unsigned char *sm, unsigned long long *smlen, const unsigned char *m,
我在嵌入式设备上使用 libsodium。我想与移动设备交互以进行 key 生成/加密/解密。 是否有必要在所有参与加密通信的设备上使用 libsodium? 换句话说:libsodium 包装了 N
我正在编写一个应用程序,用户可以在其中通过端到端加密在设备之间进行通信。为此,我使用 libsodium 加密库。非对称加密函数 crypto_box(...) 需要一个随机数作为参数之一。 我对如何
我想用 libsodium 中的公私 key 方法加密一个大文件(100 MB)。对于小消息,我使用 crypto_box_easy() ,但这不适用于大文件。最好的使用方法是什么crypto_box
我一直在使用 PHP 中的 openssl 库来生成用于 RSA 加密的 key 对,并且看到在最新版本的 PHP 7.2 中,现在已经集成了 libsodium。 我想更新到较新的库,并且可以生成
RFC 7539定义其 AEAD 构造如下: chacha20_aead_encrypt(aad, key, iv, constant, plaintext): nonce = constant
我正在尝试在扩展程序中使用 libsodium.js 库,到目前为止只在 Chrome(当前版本 71)中进行了测试。 到目前为止,它在标准网页上下文中运行良好,但是当我尝试在扩展中加载它时,出现错误
在我的 C++ 项目中,我使用 libsodium 库来创建和验证消息的签名。 为了验证签名,我以这种方式使用 libsodium crypto_sign_open 函数 bool Signature
我正在尝试在 C++ 项目中使用 libsodium 库,但在将静态 Libsodium 库链接到我创建的共享对象时遇到了困难。该项目正在使用 G++ 编译,并设置为使用 C++11 标准。 在阅读了
我一直在努力使用 libsodium 中的 crypto_secretbox_easy() 来加密/解密一些数据。 .我似乎找不到任何关于用法的好文档。 我想从用户那里得到一个密码,用它来生成一个 k
我正在使用以下函数使用 libsodium 创建一个密封盒: void encrypt_message(char *msg, char *enc_msg, int db_id) { unsig
我想知道为 crypto_stream_salsa20_xor 提供与明文和密文相同的缓冲区是否安全。我试图查看源文件。 crypto_stream_salsa20_xor使用了crypto_core
这个问题在这里已经有了答案: What is an undefined reference/unresolved external symbol error and how do I fix it?
我计划将一堆记录存储在一个文件中,然后用 libsodium 对每个记录进行签名。 .但是,我希望我的程序的 future 版本能够检查当前版本所做的签名,反之亦然。 对于当前版本的钠,签名是使用 E
我正在使用 libsodium 通过 xchacha20poly1305 结构加密文件。我按照文档 (https://download.libsodium.org/doc/secret-key_cry
我正在查看 libsodium,特别是对称加密选项 XChaCha20-Poly1305 .我无法理解的是,libsodium 似乎没有提供加密库中常见的“上下文/更新/最终确定”工作方式。 从 li
我正在尝试安装 libsodium(按照本指南 https://paragonie.com/book/pecl-libsodium/read/00-intro.md#installing-libsod
我是一名优秀的程序员,十分优秀!