首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >加载ECIES公钥

加载ECIES公钥
EN

Stack Overflow用户
提问于 2021-05-30 19:45:54
回答 1查看 159关注 0票数 2

[生成的公钥如下(https://jameshfisher.com/2017/04/14/openssl-ecc/)

Alice生成她的私钥:

代码语言:javascript
复制
openssl ecparam -name secp256k1 -genkey -noout -out alice_priv_key.pem

Alice从她的私钥中提取她的公钥:

代码语言:javascript
复制
openssl ec -in alice_priv_key.pem -pubout -out alice_pub_key.pem

当我需要使用公钥发送加密数据时,我用C语言编写了一个应用程序。我正在尝试从公共(alice_pub_key.pem)文件加载数据。

我把PEM文件从(https://holtstrom.com/michael/tools/hextopem.php)转换成十六进制数据。

因此,我似乎没有以正确的格式提供数据。有没有人能告诉我哪里出了问题?

代码语言:javascript
复制
key = EC_KEY_new_by_curve_name(NID_secp256k1)
group = EC_KEY_get0_group(key)
pub_key = EC_POINT_new(group)
EC_POINT * point = EC_POINT_hex2point(group, ptr, pub_key, NULL)

这一点返回null

EN

回答 1

Stack Overflow用户

发布于 2021-06-04 18:46:35

您可以尝试使用PEM_read_EC_PUBKEY来读取公钥。这避免了必须对公钥本身进行解析或重新编码。

请注意,您可能需要最新的OpenSSL;很难从文档中找到何时引入此函数的信息。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67760776

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档