将 EC 私钥从字符串转换为 ECPrivateKey
Posted
技术标签:
【中文标题】将 EC 私钥从字符串转换为 ECPrivateKey【英文标题】:Converting EC private key from string to ECPrivateKey 【发布时间】:2021-03-01 22:59:42 【问题描述】:我有 EC 私钥 ===开始EC私钥=== xxxxxxxxx ===END EC 私钥===
如何将私钥转换为合适的ECPrivateKeyParameterSpec并生成私钥?
以下代码似乎可以正常工作,但不确定验证所需私有是否正确转换为私有密钥对象的方法。
AlgorithmParameters parameters = AlgorithmParameters.getInstance("EC");
parameters.init(new ECGenParameterSpec("prime256v1"));
ECParameterSpec params = parameters.getParameterSpec(ECParameterSpec.class);
ECPrivateKeySpec ecPrivateKeySpec = new ECPrivateKeySpec(new BigInteger(<key in utf-8 bytes>), params);
KeyFactory factory = KeyFactory.getInstance("EC");
factory.generatePrivate(ecPrivateKeySpec)
尝试使用此私钥签名并使用公钥进行验证,但运气不好无法验证签名。
【问题讨论】:
尝试使用此私钥进行签名和验证 - 您无法使用私钥进行签名和验证。您使用私钥签名并使用匹配的公钥进行验证。 我尝试使用私钥签名并使用公钥验证失败。 【参考方案1】:最后我用海绵城堡的PEMParser解决了这个问题,并将其转换为海绵城堡的私钥,然后生成签名。
【讨论】:
嗨,你能发布你的解决方案吗?以上是关于将 EC 私钥从字符串转换为 ECPrivateKey的主要内容,如果未能解决你的问题,请参考以下文章
使用 Terraform 代码创建 Ec2 实例,其中私钥将存储在 AWS 参数存储中(类型-安全字符串)