Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /********************************************************************************
- * Install and reference the following libraries:
- * ----------------------------------------------
- * BouncyCastle (NuGet)
- * HtmlAgilityPack (NuGet)
- * System.Globalization (.NET Framework)
- * System.IO (.NET Framework)
- ********************************************************************************/
- public static void Main(string[] args)
- {
- // Generate the RSA key pair, public and private
- var keys = GenerateKeys(2048);
- // Write the public RSA key
- using(var textWriter = new StreamWriter("c:\\folder-name\\public.key"))
- {
- var writer = new Org.BouncyCastle.OpenSsl.PemWriter(textWriter);
- writer.WriteObject(keys.Public);
- writer.Writer.Flush();
- }
- // Write the private RSA key
- using(var textWriter = new StreamWriter("c:\\folder-name\\private.key"))
- {
- var writer = new Org.BouncyCastle.OpenSsl.PemWriter(textWriter);
- writer.WriteObject(keys.Private);
- writer.Writer.Flush();
- }
- }
- // Generates a cryptographcally strong RSA key pair.
- public static AsymmetricCipherKeyPair GenerateKeys(int keySizeInBits)
- {
- var r = new RsaKeyPairGenerator();
- r.Init(new KeyGenerationParameters(new SecureRandom(), keySizeInBits));
- var keys = r.GenerateKeyPair();
- return keys;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement