Not sure about Java, but in .NET you can leverage the CryptoAPI to create a
key pair and store the public key and private key part in separate XML
blobs.  I then took it a step further and write them out to files.  

I am not sure how standard the XML structure is or if there is a java
equivalent to the MS Crypto API.

Here is the C# code that I use to generate RSA key pairs:

using System;
using System.IO;
using System.Security.Cryptography;
using System.Text;

public class KeyGen 
{

 public static void Main(String[] args) 
 {
  int numKeySize = 2048;
  
  try
  {
   if (args.Length == 1)   
    numKeySize =
System.Convert.ToInt32(args[0].ToString(),10);
   
   RSACryptoServiceProvider rsa =new
RSACryptoServiceProvider(numKeySize);
  
   // Save the public key info out to pubkey
   FileStream fs = new
FileStream("pubkey.key",FileMode.Create);
   StreamWriter sw = new StreamWriter(fs);
   sw.Write(rsa.ToXmlString(false));
   sw.Close();
  
   // Save the priate key info out to privkey
   fs = new FileStream("privkey.key",FileMode.Create);
   sw = new StreamWriter(fs);
   sw.Write(rsa.ToXmlString(true));
   sw.Close();
  }

  catch (System.Exception e)
  {
   Console.Write ("Error: " + e.ToString());
  }

 }
}

-----Original Message-----
From: john bart [mailto:[EMAIL PROTECTED] 
Sent: Thursday, March 31, 2005 1:12 AM
To: [EMAIL PROTECTED]; secprog@securityfocus.com;
[EMAIL PROTECTED]; SC-L@securecoding.org;
[EMAIL PROTECTED]
Subject: RE: Java -> .NET RSA Encryption

What are the main steps to generate a key pair, put the private in the .NET
environment and the public in java keystore?

>A tip regarding the exchange of keys:
>Traditional Java keystores does not allow you to import or export a 
>private key. Only to generate it >in the keystore.
>However, you can load a PKCS12 (pfx) file as a keystore instead.
>So by generating the keys using OpenSSL and packaging them as a 
>PKCS12-package you can >make them available for both platforms without 
>installing additional providers.
>
>Regards
>Fredr!k

_________________________________________________________________
Express yourself instantly with MSN Messenger! Download today it's FREE! 
http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/


Reply via email to