Officially introducing Mono.Security
I've been talking a lot about Mono.Security but until today I didn't realize that it was never officially introduced - at least in my blog.
The only existing introduction is the Mono's Crypto status page - which BTW is a great place to learn what's in and/or out Mono's cryptography.
<lazy-geek:copy-n-paste>
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 independence, implements these functionalities in 100% managed code.
</ lazy-geek:copy-n-paste>
The most important piece of information is 100% managed code. This means that Mono.Security isn't tied to the Mono runtime and/or specific class library - you're free (really it's MIT X11 licensed) to use it on any runtime you choose.
Structures
- ASN1 decoding, encoding and type conversions;
-
PKCS #7 structures - used for Authenticode and SPC support and currently being updated for implementing
System.Security.Cryptography.Pkcs in .NET 1.2;
Many security file formats including little known / undocumented formats
- PVK - Private Key files. Files that contains the private part of a public key. The format is mostly used by makecert.exe. Keys can be encrypted with RC4tm using a user supplied password. Not very secure;
- SPC - Software Publisher Certificates. Files that contains a collection of X.509 certificates and/or CRLs. This is the format required by signcode.exe to append an Authenticode