问题描述
我尝试使用 C 语言中的 PKCS#11 库开发一些 ECC 功能。 我通过 openssl 生成了一些 ECC 密钥 DER 和 PEM 文件。 例如下面是ASN.1 JavaScript解码器解码后的DER文件之一。
EC_PRIVATEKEY ::= SEQUENCE {
INTEGER 1
OCTET STRING 61300E611C121ECBE7C2D49DA8FCD99571DF00296F51C3A9EC02DFF3063DBD3E
[0]
OBJECT IDENTIFIER 1.2.840.10045.3.1.7
[1]
BIT STRING 0004E924EC46F36A675528E2CA977A7D51C3E510993E092466F1A632419CC4A085F494F1B9D20E4B281484CB971B9AF99F088F11AB17A74928595075877D0047A4CC
}
如何从文件中获取字符数组或字节数组中的“OCTET STRING”值?
输出可能如下所示:
//if the return is char array
privatekey = "61300E611C121ECBE7C2D49DA8FCD99571DF00296F51C3A9EC02DFF3063DBD3E";
或
//if the return is byte array
privatekey = {0x61,0x30,0x0E,0x61,0x1C,0x12,0x1E,0xCB,0xE7,0xC2,0xD4,0x9D,0xA8,0xFC,0xD9,0x95,0x71,0xDF,0x00,0x29,0x6F,0x51,0xC3,0xA9,0xEC,0x02,0xF3,0x06,0x3D,0xBD,0x3E};
我尝试了一些来自 openssl 的函数,例如 PEM_read_ECPrivateKey,但我不知道返回数据格式和结构。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)