问题标签 [ecdsa]
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.
java - Javacard 中的 ECDSA 签名
我正在使用 Javacard 中的 ECDSA 实现签名代码。
我的代码在异常部分输出 0x0003(NO_SUCH_ALGORITHM),这意味着这张卡不支持该算法。我不明白,因为我的供应商告诉我它支持 ECC。我得出结论,我不知道如何与 ECDSA 签约,我想知道这一点。
这是我的完整源代码
而APDU命令如下
我的开发环境如下。
- 操作系统:Windows 7
- JCDK 版本 2.2.1
- JDK 版本 1.4.2
- 芯片:恩智浦
- 终端:ACR122 NFC 非接触式智能卡读卡器
我已更改代码以设置域参数。但是卡仍然输出相同的结果(0x0003)。这是我的完整源代码。
java - 使用 secp256r1 曲线和 SHA256 算法生成 ECDSA 签名 - BouncyCastle
我正在尝试使用 ECDSA 和 secp256r1 曲线(P256)和 SHA256 算法为消息哈希生成签名。我也在使用 Bouncy Castle 库。下面的代码,
这里的密钥对是使用 KeyPair 生成的,但是根据我的要求,我将拥有一个静态的 privateKey 和 public 密钥。此外,签名验证总是返回 false。
需要帮助,我怎样才能拥有静态私钥和验证部分。
format - 定义 ECDSA 签名数据的规范
我想知道什么规范(或标准)定义了ECDSA签名和公钥的数据格式?
我正在测试 java 卡上的 ECDSA 签名。我发现签名和公钥值中有TLV格式。
我认为数据格式是在某些规范或标准中定义的。我只想知道文档名称。
c# - 使用 X509Certificate2 签署和验证 ECDSA-SHA256 签名
我曾经OpenSSL
使用SHA256
. 现在我想使用这些证书来签署数据并验证现有的签名。
我尝试使用DSACryptoServiceProvider
,但它只支持SHA1
or MD5
。
但似乎ECDsaCng
是能够支持的ECDSA-with-SHA256
。我唯一的问题是我不知道如何将私钥和公钥从 myX509Certificate2
转换为必要的CngKey
. 我读了另一个问题,其中有人描述了如何转换公钥。但为了能够签署数据,我也需要私钥。
那么有没有办法从CngKey
私钥和公钥中取出X509Certificate2
?证书有不同的格式。我将它们作为 PFX 文件并分别作为 CER 和 PEM 文件。
我宁愿坚持使用.NET Framework 4
,但如果根本无法使用它,我也会切换到Bouncy Castle
.
ssl - 生成 ECDSA SSL 通配符证书
我正在努力生成用我自己的 CA 签名的 ECDSA SSL 通配符证书。
我正在使用这些命令:
使用此请求配置(server.conf):
当我使用生成的 server-ca.crt、server.key 和 server.crt 配置 Apache 或 nginx 时,我无法使用 HTTPS 进行连接。
这是我尝试连接时的 openssl 输出:
无论我使用哪条曲线,我总是无法连接。但是,当我使用 RSA 密钥而不是 ECDSA 时,一切正常。
这是我的 nginx 配置:
我究竟做错了什么 ?
c++ - 如何使用证书中的公钥检查 ECDSA(在 p-256 上)签名
我有证书和 ECDSA(在 p-256 上)签名。现在我想使用提供的证书验证这个签名。我使用 c++(在 Windows 上)。无法使用托管代码 (.NET)。我发现 CryptoAPI 不支持 ECDSA,所以我应该使用 CryptoAPI NG (CNG)。但是我找不到如何将公钥从证书导入到 CNG。
你能帮我解决我的问题吗?谢谢
elliptic-curve - jarsigner 支持哪些椭圆曲线?
我将使用 ECDSA 密钥对 JAR 进行签名,现在我可以选择要使用的椭圆曲线。我至少需要能够生成签名jarsigner
。我在哪里可以看到,椭圆曲线jarsigner
支持什么?
我测试了在我的 OpenSSL 安装支持的 65 条椭圆曲线中,我的 jarsigner 支持 46条。关于 jarsigner 的 Oracle 文档没有说明支持的内容。它是否记录在任何地方?
c - openssh ecdsa 签名验证但错误
我写了一些 C 代码女巫应该签署一个哈希。它似乎工作正常;签名,生成公钥并正确验证。但随后将签名结果用于另一个工作代码给我一个密钥验证错误(该签名用于比特币交易)
测试代码运行良好,它可以签名和验证,还使用了第三个库(比特币自己的实现),它再次运行良好。
所以我使用 OpenSSH 的方式有一个错误,但我找不到它。任何帮助表示赞赏,谢谢。
这里编译的符号生成器gcc -g -lssl -lcrypto
java - 错误解码签名字节:“java.security.SignatureException:错误解码签名字节”
尝试在课堂上验证 ECDSA 签名时出现此错误。错误代码是:
我在 VerificationBox.java 类中这样调用该方法:
这是 SDSGeneration.Signing 类:
我编写了一个测试类来测试 SDSGeneration.Signing 代码和一切运行良好、签名和验证数据,但是在我的项目中导入和使用它时,出现以下错误。这是测试类代码:
c++ - 在给定曲线和私有指数的情况下创建 ECDSA 私钥?
我是 cryptopp 的新手,并且一直在为 ECDSA 签名创建私钥而苦苦挣扎。
我有一个十六进制编码的私有指数E4A6CFB431471CFCAE491FD566D19C87082CF9FA7722D7FA24B2B3F5669DBEFB
。这存储为字符串。
我想用它来使用 ECDSA 签署一个文本块。我的代码看起来有点像这样
当我尝试执行 privateKey.load(...) 时,此代码会在 Visual Studio 中生成以下错误
我猜我在做一些有点愚蠢的事情......任何帮助都会很棒???
PS 我在使用 ECDH 生成 GMAC 时遇到了类似的问题,但是通过将密钥保存为 SECByteBlock 来解决这个问题,但这种“技巧”在这种情况下似乎不起作用。