问题标签 [nettle]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - 荨麻双鱼CBC
我在标准 ecb 模式下使用荨麻的 twofish 没有问题,但是我不确定这种 cbc 模式有什么问题?解密的消息将与原始消息不匹配。(使用一些硬编码的值,如 iv 仅用于测试目的)。
c - 为什么我的 MD5 Hash 在整个过程中都是静态的?
我正在使用荨麻进行 MD5 散列(我也尝试过 SHA1 处理同样的问题)。每当我散列任何东西时,散列总是相同的,即使对于完全不同的长度和数据也是如此。
我已经验证它们是不同的值,valgrind 报告没有无效的读取/写入等。当我重新启动进程时,哈希会发生变化,但在此过程中永远不会不同。
gcc - 如何修复对“nettle_sha256_digest”的未定义引用?
TL;博士
我正在尝试构建一个使用此依赖项的 go 项目:https://github.com/mqu/openldap,它又从外部链接 lldap 和 llber 库,后者又使用 lgnutls,它使用 lnettle,这是我卡住了。
go build
生成一长串未定义的引用并且构建失败。这是一个示例:
我的go build
命令:
我尝试通过安装libnettle4
, nettle-dev
, libghc-nettle-dev
,来解决这个问题nettle-bin
。我已确保包含-lnettle
在 ldflags 中。没运气。
更多上下文
openldap 库正在链接代码中的ldap
和lber
库:
这要求我安装并在 ldflags 中包含您在我的构建命令中看到的所有库。
简而言之,依赖链是这样的:
lldap -> lgnutls -> lnettle。
我添加了 lgnutls 并解决了我的 gnutls 依赖问题,但我无法解决我的荨麻依赖问题。
我的问题
我在尝试解决这些荨麻依赖性问题时做错了什么?
奖金问题
是否有解决这些 ld 链接器依赖项的最佳实践?现在我的流程是这样的:
- 运行构建
- 注意“未定义的引用”错误
- 通过谷歌搜索错误或查看引用的名称(例如
nettle_sha1_digest
=荨麻包)找出缺少哪个包 - 安装那个包
- 重复
我想我想知道是否有一个神奇的子弹可以为我安装所有依赖项?:)
linux - Nettle 3.4 使用 make 命令返回错误
我一直在尝试在 Ubuntu 18.04 上运行 MARSS 模拟器。所以它抛出了一个错误,说找不到 gnuTLS 库。当我继续安装该库时,它抛出了一个错误,提示找不到 libnette 3.1,所以我继续尝试安装 nettle 3.4。这是我在安装荨麻时遇到的错误。任何帮助表示赞赏。
configure - 未找到 GnuTLS Libnettle 3.4
当我尝试配置 GnuTLS 时,我收到了找不到 Libnettle 3.4 的错误。我已经安装了 nettle 3.4.1-1,并且库文件存在于 /usr/lib 中。即使我NETTLE_LIBS
直接指定环境变量(export NETTLE_LIBS="-L/usr/lib -R/usr/lib -lnettle"
),它总是会抛出该消息。
在 config.log 中是以下更具体的消息:
我在这里缺少什么?
c - 在 gnutls 中检查荨麻的解密部分的代码
解密时需要类似下面的代码加密。
下面的代码是测试加密,同样我可以得到代码只用于测试荨麻的解密部分。
aes-gcm - 如何使用荨麻库,GCM模式
我正在使用荨麻密码库。我无法正确执行 GCM 模式。这是我的做法。我究竟做错了什么?
输出是
31323334353637383930313233343536373839303132333435363738393031320 80435d9ceda763309ec12a876556f72c14641344ef19fbc5c9ca2f51ebeef f064f9e8db7ae3466979c7b79de95ba6c50714023758ad9abd6eac24d6f565
第一行是源代码,最后一行是解码的。它们不匹配..因为我正在尝试制作 GCM 的模板包装类,所以我不能使用 gcm-aes 函数..
gmp - 荨麻曲线 25519 基点结果 * 1
我正在使用GNU 荨麻库。我有以下代码:
在代码中,我将基点乘以 1。基点的 x 坐标是 9,所以我希望结果是 9。
但相反,它给了我这个数字:
0xfd3384e132ad02a56c78f45547ee40038dc79002b90d29ed90e08eee762ae715
.
为什么这段代码不生成 9?
configure - configure GnuTLS - libnettle 3.4.1 was not found - OS X Lion
I'm trying to build GnuTLS-3.x
on my OS X Lion and here is my configure command:
It ends up
though libnettle-3.4.1 is installed under /usr/local/libnettle-3.4.1
and its pkg-config
file libnettle.pc
is defined under /usr/local/lib/pkgconfig
(I've built nettle-4.3.1
from source successfully)
I've read the stackoverflow post GnuTLS Libnettle 3.4 was not found but it didn't help a bit. All other posts on the Internet didn't help either.
I'm stuck on this error. Any help is appreciated. Thanks.
linux - 系统升级(Open SUSE Tumbleweed)后,我得到与 /usr/lib64/libgnutls.so.30 相关的一致符号查找错误
更新我的 Open SUSE Tumbleweed 系统后,我收到与 GNU TLS 库相关的一致错误。它阻止我使用某些程序,而其他程序则启动,但产生错误
例如,勇敢的回报:
/opt/brave.com/brave/brave: symbol lookup error: /usr/lib64/libgnutls.so.30: undefined symbol: nettle_streebog256_digest, version NETTLE_8
不和谐又回来了
/home/jonah/.Discord/Discord: symbol lookup error: /usr/lib64/libgnutls.so.30: undefined symbol: nettle_streebog256_digest, version NETTLE_8
他们都在谈论符号查找错误,我在网上没有找到任何与之相关的东西,所以我认为这是新版本库的一个新问题,因为它只发生在我更新之后。
希望有一个简单的解决方法...
谢谢!