问题标签 [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.
cryptography - 使用 ECDSA 代替 RSA 加密和解密整数
我想使用 ECDSA 而不是 RSA 来加密和解密整数。通常 ECDSA 用于数字签名。但是可以转换数字签名的算法:使用签名生成进行解密,使用签名验证进行加密。我对这样的转换算法有疑问。
我想知道,加密功能和解密功能应该做什么。
PS:请不要建议我使用 ECDH 和 ECIES。这不是我需要的。我需要 ECDSA 像 RSA 一样工作:获取整数,将其加密为另一个整数并解密该整数。
python - 使用 python 创建密钥并在 .net 中使用它
我尝试使用 python 包ecdsa创建密钥,将其导出到 der 并在 .Net 下与 BouncyCastle 一起使用它们(反之亦然)。
这是我在 Python 中的代码:
我得到两个要在 .Net 中导入的字符串:
但我得到一个例外:
知道我在这里做错了什么吗?
java - Java SSL/TLS 与基于 ECC 的证书的连接
我正在尝试构建一个使用基于 ECC 的证书的服务器。到目前为止,我已经采取了以下步骤:
1) 使用 openssl 创建签名的服务器证书:
ca.sert.pem 是用于签署服务器证书的自签名 CA 证书。它同样生成:
2)设置服务器
备注:我只成功使用 BouncyCastle 将服务器证书加载到密钥库中。否则我会得到“仅支持命名的 ECParameters”错误。
3) 设置客户端 客户端设置类似,只是将服务器证书导入到信任库中。
现在,当客户端连接到服务器时,我得到以下错误堆栈:
我猜,客户端无法验证服务器证书(与我不使用 BouncyCastle 导入证书相同的错误)。
我已经打印了命名的 EC 曲线
它清楚地输出了其中的名称“secp256k1”。那么我在这里错过了什么?或者我怎样才能让 SSLContext 使用 CertificateX509Key 的另一个实现?
客户端的调试输出为:
该曲线也在曲线名称中列出。我现在尝试了很多东西,我有点卡住了。非常感谢任何帮助。
smartcard - 获取 JavaCard 中出现 CryptoException 的原因
我正在尝试在 JavaCard(Eclipse 4.4.2、JC 2.2.1)中实现 ECDSA。我的卡是金雅拓 IDCore 3010,或者至少应该是(在检查 ATR 代码后,它看起来是 WM GX4 72 DHS TSA ......)。
无论如何,如果我不使用 try and catch 包围objECDSAKeyPair = new KeyPair(KeyPair.ALG_EC_FP, KeyBuilder.LENGTH_EC_FP_192)行,我会收到一个未知错误(send_APDU() 返回 0x80206F00 (Unknown ISO7816 error: 0x6F00)),但是当我环绕它,它不会返回错误(send_APDU() 返回 0x80209000 (9000: Success. No error.))。但是它必须转到 catch 块,因为 try 块中的其他三行没有被执行。
如何可视化错误消息?如果我使用ISOException.throwIt(reason),我会收到智能卡的通信错误。请再试一次。多次。
在这个线程中,它建议使用字节原因 = c.getReason()代码,但它不起作用,即使我将右侧转换为字节也是如此。
谢谢!
这是我的代码的相关部分。
ssh - 如何检查服务器是否在 SSH 中使用 ECDSA 指纹,否则会退出?
如何让我的期望脚本检查服务器是否正在使用 ECDSA 密钥,以及它是否继续使用该脚本,否则如果它类似于 RSA 立即退出?
java - 如何使用海绵城堡为比特币曲线(secp256k1)创建 ECDSA 密钥对(256 位)?
目前,我正在使用这种方法创建 keyPair
KeyPairGenerator
还有另一种方法,我可以在其中指定 keySize 但我不确定如何传递 keySpecs?
java - 如何使用椭圆曲线私钥和 ECDSA 算法签署证书?
我可以使用带有 RSA 私钥和“SHA256withRSA”算法的充气城堡签署证书。我使用下面的链接作为参考来实现这一点。 使用 Bouncy Castle 签署 CSR
现在,我的 CA 带有用 ECDSA 签名的椭圆曲线密钥。因此,我想通过这些 CA 使用 EC 密钥和“SHA256withECDSA”算法签署证书。但是我被困在下面特定于 RSA 密钥的片段中,我想使用 EC 密钥。
请帮助我如何使用 ECDSA 和 EC 密钥实现证书签名
bitcoin - 使用 bitcoinjs 创建一个已知的 64 个字符的私钥/公钥
所以我正在尝试从我已经知道的 64 个字符创建一个私钥/公钥,使用下面的代码使用 bitcoinjs:
如果我尝试将“key”设置为我的 64 个字符而不是“Bitcoin.ECKey.makeRandom();” 它失败。是否有我忽略的方法或库允许我使用已知的 64 个字符来生成 wif 格式的私钥和公共地址?提前感谢任何可以提供帮助的人。
c# - 如何使用使用 sha1ecdsa 的公钥验证数据是否符合签名?
对密码学知之甚少,我对看似简单的任务有很大的问题。
我有 .pem 证书、数据字节和该数据的签名。我想通过将数据与签名进行匹配来检查是否有人更改了数据。
我的尝试:
但这给了我一个错误
'不支持证书密钥算法' (System.NotSupportedException)。
查看加载的证书,它说签名算法是“sha1ecdsa”。
我只是想根据签名验证数据。我在这里想念什么?我想在没有任何外部解决方案的情况下做到这一点,因为这似乎是一项微不足道的任务。
更新:我正在尝试实现与以下 Java 代码相同的功能:
c - 如何将 ECDSA SIG 签名转换为 C 中的字符数组
我是密码学(openssl 库)的初学者,我需要有关如何通过 C 套接字通信发送 ECDSA 签名的帮助。我的计划是:
- 建立套接字连接
- 将 ECDSA SIG 对象转换为字符串
- 以字符串形式发送签名
- 在目的地,将字符串转换回 SIG 对象并验证签名
这是代码。