问题标签 [ed25519]
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++ - OpenSSL 生成 ED25519 密钥对 C++
我想创建一个 x509 证书并使用 eddsa(ed25519) 私钥对其进行自签名!
所以我从文档中尝试了以下示例: https ://www.openssl.org/docs/man1.1.1/man7/Ed25519.html
https://www.openssl.org/docs/man1.1.1/man3/EVP_PKEY_check.html
EVP_PKEY_check()
给出返回值 0(“密钥对错误”)!
EVP_PKEY_public_check()
是相同的结果。
我认为这就是为什么我得到X509_sign()
一个返回值 0(失败):
使用生成的 RSA 密钥一切正常。
此示例也适用,但不适用于我的参数(请参见上面的代码):
使用 OpenSSL 1.1 生成 EC 密钥时仅使用 1 个 EVP_PKEY
我正在使用 OpenSSL v1.1.1i
我希望这个问题不会太愚蠢..
此致
c++ - CryptoPP::ed25519::Verifier 显示与 libsignal 不同的结果
我正在尝试使用 CryptoPP 实现curve25519 验证。我首先尝试了libsignal
图书馆,女巫显示了正确的结果。然后我用 CryptoPP 尝试了相同的数据,但显示错误的结果。
这是libsignal
用于验证签名的代码:
结果为 1,表示正确。请注意libsignal
要求pub_key
以字节 0x05(key-type)开头,CryptoPP
此处不适用。
使用的代码CryptoPP
:
它显示0,代码有什么问题?
random - 没有为 `OsRng` 实现 `rand_core::CryptoRng` 特性
我一直在尝试实现以下文档中给出的示例:https ://docs.rs/ed25519-dalek/1.0.1/ed25519_dalek/
我的代码很简单:
但是当我尝试运行时,我收到一条错误消息,指出该CryptoRng
特征未在OsRng
然而,CryptoRng
只是一个标记特征,我看到它确实有一个空的 impl for OsRng
...
那么这里的问题可能是什么?
java - JDK 15 中的 Ed25519,从字节数组中解析公钥并验证
由于 Ed25519 出现的时间不长(在 JDK 中),因此关于如何使用它的资源很少。
虽然他们的示例非常简洁和有用,但我很难理解我在密钥解析方面做错了什么。
他们的公钥是从 iDevice 发送的数据包中读取的。
(假设它是一个字节数组)
通过搜索并尽力了解密钥的编码方式,我偶然发现了这条消息。
这意味着,如果我想得到y
,isXOdd
我必须做一些工作。
(如果我理解正确)
下面是它的代码,但验证仍然失败。
我认为,我通过反转数组以将其恢复为 Big Endian 以供 BigInteger 使用,从而正确地做到了这一点。
我的问题是:
- 这是从字节数组中解析公钥的正确方法吗
- 如果是,那么它未能通过验证过程的可能原因是什么?
数据(操作前)(全部为十六进制):
以及操纵后的公钥:
非常感谢您,非常感谢您的每一点帮助。当 Ed25519 实施不会那么新鲜时,这将有助于更多的人在以后偶然发现这个问题。
python-3.x - ed25519共享密协议的python实现
让我们考虑以下示例。使用 Python 库 tinyec 我可以编写以下代码:
通过这种方式,Alice 和 Bob 能够通过 Internet 导出共享秘密。现在,我需要知道是否可以对 ed25519 曲线做同样的事情,因为我找不到任何类型的库。
因此,我有兴趣找到一种安全地进行此类操作的方法。我该怎么办?此特定操作的最佳实践是什么?
谢谢
node.js - 有没有一种简单的方法可以将 NodeJS KeyObject 转换为 Buffer?
我正在使用 NodeJS 生成 Ed25519 密钥对。我需要将公钥转换为自定义字符编码。但是,似乎没有办法将KeyObject
s 返回的 s 转换crypto.generateKeyPair()
为缓冲区。
标准库是否提供了一种直接将密钥生成为缓冲区而不是KeyObject
s 的方法?
java - Java 中 Ed25519 密钥对的 PEM 文件格式
我正在尝试在 Java 15 中编写和读取包含 aPublicKey
和PrivateKey
Ed25519 的 PEM 文件。
但是,尚不清楚 PEM 格式是否支持这一点,或者究竟如何使用标准 Java 库 (JCA) 来实现这一点。大多数示例似乎都使用 RSA。
这样做的正确方法是什么?还是有更好的方法?
mariadb - 如何以通过 ed25519 识别的用户身份使用 MYSQL Workbench 连接到 MariaDB (10.5.8)?
我可以将 MYSQL Workbench 设置为使用 SSL 连接作为通过mysql_native_password标识的用户连接到 MariaDB ,但是如果我将标识设置为ed25519它将失败。是否存在任何插件或解决方案?我应该为 MariaDB 使用另一个免费的数据库管理软件吗?
python - 使用没有 ssh-keygen -p 的 python 库解密 Ed25519 私钥
我有私钥,例如生成 RSA 密钥对:
我可以替换呼叫:
使用 python 加密模块:
但是当我使用参数 -t ed25519 生成密钥时,出现错误:
我使用 python paramiko 模块加载 Ed25519 私钥,但我无法序列化私有字节:
erlang - 带有 ED25519 证书文件的 Erlang TLS
我正在使用裸 Erlangssl:listen/2
函数创建服务器代码。我想使用 ED25519 算法使用 TLS 证书,但服务器在握手时崩溃。通过挖掘 Erlang 代码,似乎 TLS 不支持此算法(它在此功能上崩溃:https ://github.com/erlang/otp/blob/master/lib/public_key/src/pubkey_cert_records.erl# L109 )。
这是正确的还是我做错了什么?有没有办法启用对它的支持?一些解决方法?
作为参考,这是我生成证书的方式:
这是我得到的崩溃数据:
而且我的代码与 RSA 证书完美配合。
谢谢你的帮助