* Cryptography In the .NET framework cryptography can be found under a number of namespaces in several assemblies. ** Assembly: corlib *** Namespace: System.Security.Cryptography Thanks to the work of many people this namespace is almost complete. **** Status **** TODO **** Notes *** Namespace: System.Security.Cryptography.X509Certificates **** Status **** TODO **** Notes
** Assembly: System.Security *** Namespace: System.Security.Cryptography.Xml This namespace implements the XML Digital Signature specification from W3C. **** Status **** TODO
** Assembly: Mono.Security Rational: This assembly provides the missing pieces to .NET security. On Windows CryptoAPI is often used to provide much needed functionalities (like some cryptographic algorithms, code signing, X.509 certificates). Mono, for platform independance, implements these functionalities in 100% managed code. *** Namespace: Mono.Security *** Namespace: Mono.Security.Authenticode *** Namespace: Mono.Security.Cryptography *** Namespace: Mono.Security.X509 *** Namespace: Mono.Security.X509.Extensions **** Status
** Assembly: Mono.Security.Win32 Rational: This assembly goal is to provide maximum compatibility with CryptoAPI to application running with Mono's runtime on the Windows operating system. This assembly should NEVER be used directly by any application (e.g. referecing the assembly from a project). The classes should only be used by modifying the machine.config configuration file (and then only if this increased compatibility is required by an application). See the file /mcs/class/Mono.Security.Win32/README for complete instructions. *** Namespace: Mono.Security.Cryptography **** Status **** TODO **** Ideas
** Assembly: Microsoft.Web.Services Microsoft Web Service Enhancement (WSE), known as Web Service Development Kit (WSDK) in it's beta days, is an add-on the .NET framework that implements WS-Security (and other WS-* specifications). It also includes improved support for XML Signature (replacing and/or extending System.Security.Cryptography.Xml) and X.509 certificates classes. Note: WSE is distributed as an add-on because some specifications, like WS-Security, aren't yet completed by OASIS or other committees. [*] There are some licensing issues to consider before starting to implement WS-Security. All contributors must sign an agreement with Microsoft before commiting anything related to WS-Security into CVS. *** Namespace: Microsoft.Web.Services.Security [*] *** Namespace: Microsoft.Web.Services.Timestamp [*] **** Status *** Namespace: Microsoft.Web.Services.Security.X509 **** Status **** TODO *** Notes
** Tools There are many tools in the .NET framework that indirectly interacts with some cryptographic classes. Mono will eventually need these tools. Unless noted the tools should work on any CLR (tested with both Mono and Microsoft). **** Status The following tools are complete (mostly complete): Somewhat usable, somewhat incomplete: **** TODO The following tools are still missing or largely incomplete: Note that many of the tools requires the class library and/or the runtime to be ready for them. E.g. StrongName and Authenticode signatures tools are of limited use until supported by the runtime.
** Other stuff
** How to Help Contact Sebastien Pouliot (home , work) if you need additional informations about the status of the cryptographic classes.
Last reviewed: August 9, 2003 (post mono 0.25)