sm2私钥:3c9xxxxbe7f24c2xxxx223466804xxxxxxad284def02eb
SM2密钥转换失败报错,通过await generator1.convertKey(null, priKeyBlob);
发现通过await generator.generateKeyPair();生成的私钥是51字节,我们的私钥是32字节,这个转换有问题,请问怎么处理,是否和SM2 userid签名有关
ConvertEcPriKey: d2i_ECPrivateKey fail
09-23 19:17:52.784 10787-10838 C02f10/[HCF] com.bwton.szfreego E HcfPrintOpensslError: [Openssl]: engine fail, error code = 109052072, error string = error:068000A8:asn1 encoding routines::wrong tag
09-23 19:17:52.784 10787-10838 C02f10/[HCF] com.bwton.szfreego E ConvertKeyAsyncWorkProcess: convert key fail.
当调用convertKey方法将外来二进制数据转换为算法库非对称密钥对象时,公钥应满足ASN.1语法、X.509规范、DER编码格式,私钥应满足ASN.1语法、PKCS#8规范、DER编码格式。 convertKey方法中,公钥和密钥二进制数据非必选项,可单独传入公钥或私钥的数据,生成对应只包含公钥或私钥的KeyPair对象。
请参考:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides...
当前系统版本的指定生成密钥的API为convertKey,其中SM2密钥生成的参数只支持封装并ASN.1序列化后的数据(公钥91字节,私钥51字节),请参考下列demo获取相应的私钥: