Sample code for 30+ languages & platforms
C#

Generate an RSA Key and Save to Encrypted PEM

See more RSA Examples

Demonstrates how to generate an RSA key and save to an encrypted PEM file.

Chilkat C# Downloads

C#
bool success = false;

Chilkat.Rsa rsa = new Chilkat.Rsa();

//  Generate a 2048-bit key.
Chilkat.PrivateKey privKey = new Chilkat.PrivateKey();
success = rsa.GenKey(2048,privKey);
if (success == false) {
    Debug.WriteLine(rsa.LastErrorText);
    return;
}

string password = "secret";
//  Saving to a relative path (from the current working directory of the process).
string path = "rsaKeys/myTestRsaPrivate.pem";
//  Encrypt the PEM using 256-bit AES encryption.
privKey.Pkcs8EncryptAlg = "aes256";
success = privKey.SavePkcs8EncryptedPemFile(password,path);
if (success == false) {
    Debug.WriteLine(privKey.LastErrorText);
    return;
}

//  image

//  We can also save the public key.
//  There is no need to encrypt public keys.
Chilkat.PublicKey pubKey = new Chilkat.PublicKey();
privKey.ToPublicKey(pubKey);

path = "rsaKeys/myTestRsaPublic.pem";
//  Choose PKCS1 or PKCS8
//  We'll choose PKCS8.
bool preferPkcs1 = false;
success = pubKey.SavePemFile(preferPkcs1,path);
if (success == false) {
    Debug.WriteLine(pubKey.LastErrorText);
    return;
}

//  image

Debug.WriteLine("Success.");