SecureX was developed in Visual C++ 6.0 but with the source code at hand it ports seamlessly to .NET. What you will find in the download is SecureX.h, the API header file. You can open this file and peruse its functions, which cover all of the bases of digital security:
1. Private Key Crypto-systems:
(a) Single, Double and Triple length DES;
(b) Single length generate and verify MAC (Message Authentication Code);
(c) Single, Double and Triple length One Way Function (OWF);
(d) DES key check and correct key parity;
(e) DES check for weak key.
(a) Encrypt in ECB (Electronic Code Book) and CBC (Cipher Block Chaining) modes;
(b) Decrypt in ECB and CBC modes;
(c) Encrypt and Decrypt with counter and ICV.
2. Public Key Crypto-system:
(a) Static RSA key length of 1.25 Kbits (current recommendation is for 1.0 Kbits minimum);
(b) RSA public/secret key generation using fast prime number analysis and (as it can be time consuming) state feedback via callback function (refer SecureX.h for more);
(c) RSA Sign/Unsign of 1.25 Kbits;
(d) Verify integrity of RSA key.
(a) 384 and 512 bit hash support;
(b) Calculate SHA4 over a file;
4. Miscellaneous Cryptographic Support Functions:
4.1 MSec timer support (set, get, get_clock).
4.2Get password strength as a percentile (see SecureX.h).
4.3 Classify password (very weak, weak, good, etc. again refer SecureX.h).
4.4 Convert binary to ASCII hexadecimal string and reverse.
4.5 Calculate LRC 8-bit.
4.5 Fill an array with Fibonacci numbers (useful for data padding).
4.6 Destroy sensitive matter in memory with quadruple overwrite including bit-flip.
4.7 Strong data scrambling functions which use a 64-bit key. Can be used in place of sending your padding and other static data in the clear.
Note that this is a source code/optional DLL package. It does not as such have an executable file that can be run.