1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- =pod
- =head1 NAME
- d2i_PKCS8PrivateKey_bio, d2i_PKCS8PrivateKey_fp,
- i2d_PKCS8PrivateKey_bio, i2d_PKCS8PrivateKey_fp,
- i2d_PKCS8PrivateKey_nid_bio, i2d_PKCS8PrivateKey_nid_fp - PKCS#8 format private key functions
- =head1 SYNOPSIS
- #include <openssl/evp.h>
- EVP_PKEY *d2i_PKCS8PrivateKey_bio(BIO *bp, EVP_PKEY **x, pem_password_cb *cb, void *u);
- EVP_PKEY *d2i_PKCS8PrivateKey_fp(FILE *fp, EVP_PKEY **x, pem_password_cb *cb, void *u);
- int i2d_PKCS8PrivateKey_bio(BIO *bp, EVP_PKEY *x, const EVP_CIPHER *enc,
- char *kstr, int klen,
- pem_password_cb *cb, void *u);
- int i2d_PKCS8PrivateKey_fp(FILE *fp, EVP_PKEY *x, const EVP_CIPHER *enc,
- char *kstr, int klen,
- pem_password_cb *cb, void *u);
- int i2d_PKCS8PrivateKey_nid_bio(BIO *bp, EVP_PKEY *x, int nid,
- char *kstr, int klen,
- pem_password_cb *cb, void *u);
- int i2d_PKCS8PrivateKey_nid_fp(FILE *fp, EVP_PKEY *x, int nid,
- char *kstr, int klen,
- pem_password_cb *cb, void *u);
- =head1 DESCRIPTION
- The PKCS#8 functions encode and decode private keys in PKCS#8 format using both
- PKCS#5 v1.5 and PKCS#5 v2.0 password based encryption algorithms.
- Other than the use of DER as opposed to PEM these functions are identical to the
- corresponding B<PEM> function as described in the L<pem(3)|pem(3)> manual page.
- =head1 NOTES
- Before using these functions L<OpenSSL_add_all_algorithms(3)|OpenSSL_add_all_algorithms(3)>
- should be called to initialize the internal algorithm lookup tables otherwise errors about
- unknown algorithms will occur if an attempt is made to decrypt a private key.
- These functions are currently the only way to store encrypted private keys using DER format.
- Currently all the functions use BIOs or FILE pointers, there are no functions which
- work directly on memory: this can be readily worked around by converting the buffers
- to memory BIOs, see L<BIO_s_mem(3)|BIO_s_mem(3)> for details.
- =head1 SEE ALSO
- L<pem(3)|pem(3)>
- =cut
|