CryptoTools is the product of French Canadian software development company, Deux Sortes (which translates roughly into "two kinds" in English). This toolset is a suite of encryption components and libraries that works with multiple programming languages, including C, C++, COM, VB, .NET, and Java, among others.
In this mini-review, of course, its ability to support the .NET environment is what is of greatest import, along with delivery of the Cryptotools in DLL format, including library files, header files, and documentation. The .NET version of CryptoTools works with C#, VB.NET, ASP.NET, Managed C++, and J#. Using CryptoTools functionality in a .NET application means adding the CryptoNET.dll assembly to all project references.
CryptoTools supports the following encryption, encoding, and hashing algorithms both coming and going:
- DES and TripleDES (56-bit and 168-bit, respectively) are available to encrypt and decrypt text, files and binary data. Also included is the ability to derive an encryption key from a text password. Output from these modules is binary, but may be encoded into base64 format using a base64 encoding component in CryptoTools for output.
- Base64 encoding provides an algorithm whereby arbitrary binary data may be converted to ASCII text. This permits transmission of encoded (and also encrypted) data via text communications, such as email, text chat, and so forth. Text encoding also provides a mechanism for storing binary data inside databases in text form, or in the form of XML data.
- MD5 hashing offers one-way encryption service, where the MD5 algorithm produces a 128-bit hash value that uniquely reflects each data element it represents. MD5 hashing provides a mechanism for creating digital signatures used in concert with public and private key mechanisms.
In addition to a free, limited functionality version of the code, you can download product documentation, tutorials and detailed API programming guides from the company's Web site. A single license of CryptoTools costs $150, with substantially larger discounts available as quantities increase. Each Web site that uses CryptoTools must have its own license, but any purchase of the product entitles its buyers to unlimited developer licenses.
This is an outstanding and useful product, and well worth checking out. The free version is set up to introduce a 30-second delay before working one time out of every four times it's called between the hours of 8 a.m. and 5 p.m., but is otherwise identical to the full-blown commercial version. This means you can try as much of as its functionality as you like before spending any money. We think you'll like what you see enough to feel good about spending $150 to add this kind of capability to your Visual Studio .NET applications.
Ed Tittel is a writer and trainer whose interests include XML and development topics, along with IT Certification and information security. E-mail firstname.lastname@example.org with comments, questions, or suggested topics or tools to review. Cool tools rule!
This was first published in August 2006