I'm in the process of writing the System.Security.Cryptography API's for Portable.NET, and something is very confusing. I'm hoping someone here can explain what is going on, or redirect me to someone else who can.
The DSACryptoServiceProvider and RSACryptoServiceProvider classes manipulate public key encryption systems, which is straight-forward enough. But the documentation is very unclear as to how objects are initialized. There seems to be four ways to set up an object: supply a key name to be looked up in the user's key chain, generate a new key to be stored in the key chain, generate a new key for use elsewhere, and supply explicit parameters using "ImportParameters". The problem is the constructor: I can't figure out from the documentation what combination of constructor parameters activates each of the four modes. Cheers, Rhys Weatherley Author of Portable.NET http://www.southern-storm.com.au/portable_net.html