MPcrypt.dll Encryption/Decryption Algorithms

The MPcrypt.dll is a unique resource, specifically, a set of easy to use APIs for encryption.  This dll was compiled using VB 6.0 and utilizes windows API. Calls.   This product is provided on payment of a nominal fee ($39) to cover our costs.  VB 6.0/VB.net/C++ source code can also be supplied upon request.  Pricing depends on source code requested.

APIs included in this dll:

Blowfish Encryption Algorithm

Blowfish is now standard in OpenBSD.   Block cipher: 64-bit block

Variable key length: 32 bits to 448 bits.  Much faster than DES and IDEA

Blowfish is a symmetric block cipher that can be used as a drop-in replacement for DES or IDEA. It takes a variable-length key, from 32 bits to 448 bits, making it ideal for both domestic and exportable use. Blowfish was designed in 1993 by Bruce Schneier as a fast, free alternative to existing encryption algorithms. Since then it has been analyzed considerably, and it is slowly gaining acceptance as a strong encryption algorithm.

Twofish Encryption Algorithm

It was one of the five Advanced Encryption Standard (AES) finalists.

Twofish is license-free. 

128-bit block

128-, 192-, or 256-bit key

Efficient key setup on large microprocessors

Efficient on smart cards

Efficient in hardware

Extensively crypt analyzed

CryptAPI Encryption/Decryption Class Supplied by MS Windows

Information concerning the CryptAPI 'encryption/decryption can probably

be found somewhere on MS homepage ( http://www.microsoft.com).  This dll uses MS cryptAPI dll calls.

DES Encryption Algorithm

Information concerning this algorithm can be found on  fips46-3.pdf

TDES  (Triple DES) is now recommended for new systems.

RC4 Encryption Algorithm

RC4 is a stream cipher designed by Rivest for RSA Data Security (now RSA Security). It is a variable key-size stream cipher with byte-oriented operations. The algorithm is based on the use of a random permutation. Analysis shows that the period of the cipher is overwhelmingly likely to be greater than 10100. Eight to sixteen machine operations are required per output byte, and the cipher can be expected to run very quickly in software. Independent analysts have scrutinized the algorithm and it is considered secure.

GOST Encryption Algorithm

The Government Standard of the U.S.S.R. 28147-89, Cryptographic protection for Data Protection Systems, appears to have played a role in the Soviet Union similar to that played by the U.S. Data Encryption Standard (FIPS 46). When issued, it bore the minimal classification 'For Official Use', but is now said to be widely available in software both in the Former Soviet Union and elsewhere. In apparent contrast to DES's explicit limitation to unclassified information, the introduction to GOST 28147-89 contains the intriguing remark that the cryptographic transformation algorithm "does not place any limitations on the secrecy level of the protected information."

The algorithms are similar in that both operate on 64-bit blocks by successively modifying half of the bits with a function of the other half. Beyond that, the similarity declines and several differences are visible.

The Soviet System has 32 rounds than the 16 of DES.

Each round is somewhat simpler than a round of DES. In the 'f' function, 32 bits of text are added modulo 32 to 32 bits of key, transformed by a block of eight, 4-bit to 4-bit S-boxes and rotated 11 bits to the left.

In contrast to DES's meager 56 bits of key, GOST 28147-89 has 256 bits of primary key and 512 bits of secondary key. The secondary key is the block of eight S-boxes, which are specific to individual networks and are not included in the standard (*).

In place of complex key schedule of DES, the primary key is divided into eight 32-bit words. For the first twenty-four rounds, these are used cyclically in ascended order. For the last eight, they are used in descending order.

Rijndael Encryption Algorithm

Rijndael is a block cipher, designed by Joan Daemen and Vincent Rijmen as a candidate algorithm for the AES . The cipher has a variable block length and key length. We currently specified how to use keys with a length of 128, 192, or 256 bits to encrypt blocks with al length of 128, 192 or 256 bits (all nine combinations of key length and block length are possible). Both block length and key length can be extended very easily to multiples of 32 bits.

Serpent Encryption Algorithm

256-bit Serpent Implementation.   This is a slow implementation of the 256-bit Serpent algorithm. Serpent was a finalist for AES and appears to be a very secure powerful algorithm.  Recommend implementation for academic purposes and not in commercial schemes due to its speed. Its inherent security is a definite plus in any high-risk situations.

XOR Encryption Algorithm

XOR data encryption with an infinite length key is a simple, efficient method of data encryption. One of the most common methods, for some time now, has been the use of the exclusive-OR (XOR) operator on files, with some small repeating byte stream known as the key.  Because the key is repeated many times throughout the encryption process, it may be possible to crack the code within a reasonable amount of time, and thus XOR encryption with small keys is not used in high security situations. However, if the key length is sufficiently great, to the point where it is the equal of the data being encrypted, then XOR encryption remains uncrackable, and is thus an easily implemented encryption method.  Use this method on small files/strings only.

TEA Encryption Algorithm

TEA, a Tiny Encryption Algorithm.

Original authors: David Wheeler, Roger Needham

Computer Laboratory, Cambridge University England

A short program and encipher safely. It uses a large number of iterations rather than a complicated program. It uses little set up time and does a weak non-linear iteration enough rounds to make it secure. There are no preset tables or long set up times. It assumes 32 bit words.  It is a Feistel type routine although addition and subtraction are used as the reversible operators rather than XOR. The routine relies on the alternate use of XOR and ADD to provide no linearity. A dual shift causes all bits of the key and data to be mixed repeatedly.

The key is set at 128 bits.  It can be up to three times as fast as a good software implementation of DES which has 16 rounds.

Skipjack  Encryption Algorithm

Information concerning this algorithm can probably

be found on   skipjack.pdf

MD5 Digest Algorithm

Standard MD5 implementation.  Conforms to all standards and can be used in digital signature or password.

Random

Used to generate random keys by seeding it with a particular number, which users can specify. Rather than storing the key, we only need pass on the seed value, rather than a huge code-key. Provided the same random number generator is used (usually programming language specific and platform specific).


 

Intro to Cryptography

Public Key Cryptography: fips196.pdf

Data Encryption Standards: fips46-3.pdf

Advanced Encryption Standards: fips-197.pdf

 

   
VeryCrypt.Com  
17 Memorial Road, Marlboro, NJ 07746
Tel:(732)972-4290 Fax: (732) 972-4291

Email:
sales@VeryCrypt.com