如何使用aes密钥创建.pem文件

时间:2016-02-28 11:08:32

标签: c encryption openssl aes pem

我必须创建一个aes-256密钥并将其存储在.pem文件中。我正在使用RAND_bytes()来创建一个256位的随机密钥。在此之后如何将其保存到pem文件中。 我查看了Reading and writing rsa keys to a pem file in Copenssl pem。但我不使用RSA密钥。

我怀疑我的任务比create pem from base64简单得多,但帮助不大。

PS:此密钥将用于加密自签名数字证书。

编辑:环顾四周我发现我可以使用bio来隐藏pem,类似PEM_write_bio_PrivateKey,但它需要EVP_PKEY格式作为参数。那么如何将char buf转换为EVP_PKEY。我找到了d2i_PublicKey,但它涉及到RSA,我不确定RSA如何适应这里的情况。

2 个答案:

答案 0 :(得分:0)

AES密钥只是一个随机字节数组。您可以简单地将字节存储在没有任何结构的文件中。

答案 1 :(得分:0)

您可以使用PEMWriter类的bouncyCastle库将aes密钥转换为.pem。

http://www.bouncycastle.org/documentation.html