VirtualBox

Changeset 100528 in vbox for trunk/include


Ignore:
Timestamp:
Jul 11, 2023 10:52:34 PM (20 months ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
158333
Message:

IPRT/PKCS8: Added the ability to load PKCS\#8 EncryptedPrivateKey format. bugref:10299

Location:
trunk/include/iprt
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/iprt/crypto/pkcs8.h

    r100493 r100528  
    8181RTASN1TYPE_STANDARD_PROTOTYPES(RTCRPKCS8PRIVATEKEYINFO, RTDECL, RTCrPkcs8PrivateKeyInfo, SeqCore.Asn1Core);
    8282
    83 #if 0
    84 
    8583/**
    8684 * PKCS\#8 EncryptedPrivateKeyInfo.
     
    8886 * See RFC-5208 section 6.
    8987 */
    90 typedef struct RTCRENCRYPTEDPRIVATEKEY
     88typedef struct RTCRPKCS8ENCRYPTEDPRIVATEKEYINFO
    9189{
    9290    /** Sequence core for the structure. */
     
    9694    /** The encrypted data. */
    9795    RTASN1OCTETSTRING           EncryptedData;
    98 } RTCRENCRYPTEDPRIVATEKEY;
    99 /** Pointer to the ASN.1 IPRT representation of a PKCS8 encrypted private key. */
    100 typedef RTCRENCRYPTEDPRIVATEKEY *PRTCRENCRYPTEDPRIVATEKEY;
    101 /** Pointer to the const ASN.1 IPRT representation of a PKCS8 encrypted private key. */
    102 typedef RTCRENCRYPTEDPRIVATEKEY const *PCRTCRENCRYPTEDPRIVATEKEY;
    103 RTASN1TYPE_STANDARD_PROTOTYPES(RTCRENCRYPTEDPRIVATEKEY, RTDECL, RTCrEncryptedPrivateKey, SeqCore.Asn1Core);
    104 
    105 #endif
     96} RTCRPKCS8ENCRYPTEDPRIVATEKEYINFO;
     97/** Pointer to the ASN.1 IPRT representation of a PKCS8 encrypted private
     98 * key info. */
     99typedef RTCRPKCS8ENCRYPTEDPRIVATEKEYINFO *PRTCRPKCS8ENCRYPTEDPRIVATEKEYINFO;
     100/** Pointer to the const ASN.1 IPRT representation of a PKCS8 encrypted
     101 * private key info. */
     102typedef RTCRPKCS8ENCRYPTEDPRIVATEKEYINFO const *PCRTCRPKCS8ENCRYPTEDPRIVATEKEYINFO;
     103RTASN1TYPE_STANDARD_PROTOTYPES(RTCRPKCS8ENCRYPTEDPRIVATEKEYINFO, RTDECL, RTCrPkcs8EncryptedPrivateKeyInfo, SeqCore.Asn1Core);
    106104
    107105/** @} */
  • trunk/include/iprt/err.h

    r100447 r100528  
    21562156/** The EVP_PKEY_type API in OpenSSL failed.  */
    21572157#define VERR_CR_PKIX_OSSL_EVP_PKEY_TYPE_ERROR       (-23517)
    2158 /** OpenSSL failed to decode the public key. */
     2158/** OpenSSL failed to decode the private key. */
    21592159#define VERR_CR_PKIX_OSSL_D2I_PRIVATE_KEY_FAILED    (-23518)
    21602160/** The EVP_PKEY_CTX_set_rsa_padding API in OpenSSL failed.  */
  • trunk/include/iprt/mangling.h

    r100493 r100528  
    36993699# define RTCrPkcs8PrivateKeyInfo_Enum                   RT_MANGLER(RTCrPkcs8PrivateKeyInfo_Enum)
    37003700# define RTCrPkcs8PrivateKeyInfo_Init                   RT_MANGLER(RTCrPkcs8PrivateKeyInfo_Init)
     3701# define RTCrPkcs8EncryptedPrivateKeyInfo_CheckSanity   RT_MANGLER(RTCrPkcs8EncryptedPrivateKeyInfo_CheckSanity)
     3702# define RTCrPkcs8EncryptedPrivateKeyInfo_Clone         RT_MANGLER(RTCrPkcs8EncryptedPrivateKeyInfo_Clone)
     3703# define RTCrPkcs8EncryptedPrivateKeyInfo_Compare       RT_MANGLER(RTCrPkcs8EncryptedPrivateKeyInfo_Compare)
     3704# define RTCrPkcs8EncryptedPrivateKeyInfo_DecodeAsn1    RT_MANGLER(RTCrPkcs8EncryptedPrivateKeyInfo_DecodeAsn1)
     3705# define RTCrPkcs8EncryptedPrivateKeyInfo_Delete        RT_MANGLER(RTCrPkcs8EncryptedPrivateKeyInfo_Delete)
     3706# define RTCrPkcs8EncryptedPrivateKeyInfo_Enum          RT_MANGLER(RTCrPkcs8EncryptedPrivateKeyInfo_Enum)
     3707# define RTCrPkcs8EncryptedPrivateKeyInfo_Init          RT_MANGLER(RTCrPkcs8EncryptedPrivateKeyInfo_Init)
    37013708# define RTCrPkixSignatureCreateByObjId                 RT_MANGLER(RTCrPkixSignatureCreateByObjId)
    37023709# define RTCrPkixSignatureCreateByObjIdString           RT_MANGLER(RTCrPkixSignatureCreateByObjIdString)
     
    43224329# define g_cRTCrPkcs7Markers                            RT_MANGLER(g_cRTCrPkcs7Markers)
    43234330# define g_RTCrPkcs8PrivateKeyInfo_Vtable               RT_MANGLER(g_RTCrPkcs8PrivateKeyInfo_Vtable)
     4331# define g_RTCrPkcs8EncryptedPrivateKeyInfo_Vtable      RT_MANGLER(g_RTCrPkcs8EncryptedPrivateKeyInfo_Vtable)
    43244332# define g_aRTCrX509CertificateMarkers                  RT_MANGLER(g_aRTCrX509CertificateMarkers)
    43254333# define g_cRTCrX509CertificateMarkers                  RT_MANGLER(g_cRTCrX509CertificateMarkers)
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette