Sample code for 30+ languages & platforms
Unicode C

Generate RSA Key and Export to Encrypted PEM

See more RSA Examples

_LANGUAGE_ sample showing how to generate an RSA key and export to encrypted PEM.

Chilkat Unicode C Downloads

Unicode C
#include <C_CkRsaW.h>
#include <C_CkPrivateKeyW.h>

void ChilkatSample(void)
    {
    BOOL success;
    HCkRsaW rsa;
    HCkPrivateKeyW privKey;
    const wchar_t *strEncPem;

    success = FALSE;

    // This example assumes the Chilkat API to have been previously unlocked.
    // See Global Unlock Sample for sample code.

    rsa = CkRsaW_Create();

    // Generate a 1024-bit key.  Chilkat RSA supports
    // key sizes ranging from 512 bits to 4096 bits.
    privKey = CkPrivateKeyW_Create();
    success = CkRsaW_GenKey(rsa,1024,privKey);
    if (success == FALSE) {
        wprintf(L"%s\n",CkRsaW_lastErrorText(rsa));
        CkRsaW_Dispose(rsa);
        CkPrivateKeyW_Dispose(privKey);
        return;
    }

    strEncPem = CkPrivateKeyW_getPkcs8EncryptedPem(privKey,L"myPassword");

    // You now have the private key in an encrypted format,
    // which may be (for example) saved to a database.

    wprintf(L"%s\n",strEncPem);


    CkRsaW_Dispose(rsa);
    CkPrivateKeyW_Dispose(privKey);

    }