在openssl库中,我可以看到两种将公钥写入文件的方法:
int PEM_write_RSAPublicKey(FILE *fp, RSA *x);
int PEM_write_RSA_PUBKEY(FILE *fp, RSA *x);
在文件中我可以看到:
RSAPublicKey函数使用RSA结构处理RSA公钥。公钥使用PKCS#1 RSAPublicKey结构进行编码。 RSA_PUBKEY函数还使用RSA结构处理RSA公钥。但是,公钥是使用SubjectPublicKeyInfo结构编码的,如果公钥不是RSA,则会发生错误。
但我不明白什么是
SubjectPublicKeyInfo
这两种方法的基本区别是什么?
发布于 2013-09-21 00:13:26
SubjectPublicKeyInfo - ASN1公钥结构,在rfc 3280(InternetX.509公钥基础设施)中描述。这种格式实际上包含公钥算法的id和公钥本身。在这种情况下,这个公钥是按照pkcs1标准格式化的。因此X.509格式是更高级的格式,它不仅描述RSA公钥,而且描述一般的公钥。
https://stackoverflow.com/questions/13818567
复制相似问题