[Mono-dev] CryptAPI

Sebastien Pouliot sebastien.pouliot at gmail.com
Tue May 16 20:22:51 EDT 2006

Hello Jair,

On Tue, 2006-05-16 at 18:44 -0500, Jair Cazarin wrote:
> CryptAPI is a C# library which has the purpose to provide backward
> compatibility with the unix's C crypt() function for encrypting a
> string using a salt. This salt will indicate the type of algorithm
> that will be used to encrypt such string. Since neither mono nor
> the .NET framework provide this compatibility the main purpose of
> CryptAPI is to give programmers the proper library so that, if needed,
> they can integrate it to their development. We have integrated almost
> all the algorithms used in different Linux/Unix distributions and have
> ported the following encryption algorithms based on salt:
>       * LM (No salt needed).
>       * NTLM (No salt needed).
>       * DES.
>       * Extended DES.
>       * FreeBSD's Short MD5.
>       * FreeBSD's Long MD5.
>       * Short Blowfish.
>       * Long Blowfish.
> The library itself was programmed by porting code from unmanaged code
> to managed code.

It's nice to know it's now available in managed code. IIRC someone asked
for this not too long ago (either on an email or on IRC).

> As of today, CryptAPI provides the following:
>       * Encryption of string using proper salt.
>       * Encrypted password recognition based on salt.
>       * Service provider to facilitate developer usage.
>       * Portable and modifiable managed code in C#.

Congratulations! This is a great deal of work (and testing too). Do you
have a link to your code ?

> There exists the possibility  of integrating this to the cryptography
> namespace of mono? If yes, how can be do that.

Not much. For several reasons we try(*) not to add new features not
available in the .NET framework directly into Mono (we have more than
enough to keep busy for a while ;-)

(*) unless the features are required by Mono itself

OTOH there are a lot of way and places to promote your library,
including many places inside mono-project wiki (like the security FAQ).
Sebastien Pouliot  <sebastien at ximian.com>
Blog: http://pages.infinit.net/ctech/

More information about the Mono-devel-list mailing list