Casey Chesnut had implemented the functionality that is present in the desktop .NET System.Security.Cryptography namespace in the .NET compact framework as part of his http://www.brains-N-brawn.com/spCrypt article. What he did was wrap the unmanaged CryptoApi in managed code and then made sure that there was cross platform compatibility between his implementation and the full framework on the desktop.
Very Cool!
Now his code has been incorporated into the NETCF Smart Device Framework v1.1, which is a third party framework that " ..enriches and extends the .NET Compact Framework by providing a rich set of classes and controls not available in the .NET Compact Framework."
His code can be found under the OpenNETCF.Security.Cryptography Namespace. Check out the functionality provided @ http://www.opennetcf.org/library/