MEX
message digest algorithm

Most important non-encryption algorithms for cryptography are message digest algorithms (MDA). MDA mathematically are hash functions. Hash function are not inverse which practically means you can easy compute F(x) but there is no F'(x) that will satisfy F'(F(x))=x. Four operations are usually used in constructing this king of functions: (bitwise) AND, OR, XOR, NOT.

Most commonly used MDA are MD5, Ripemid160, CRC and many others. Tthey all work using the same manner. They get a block from a massage and run it through a static function. The order of operation and set of arguments for each of them (operations) are fixed for all possible entries.

Mex main innovation is the capability to vary according to the processed block, to ensure complex relation between massage and digest. Mex represents something like auto-key encryption. According to the processed block MDA function changes it self. Because of that Mex has cryptographic nature - the block is the key and the paintext in the same time. Mex produce 128bit digest from random length of file. Message digest for message longer then 128 bits is easy computed like sum from digest for every 128bit block. It runs in 16 rounds but less then 4 is not recommended.

Source code of Mex Algo is publicly available, Documentation is now available only in macedonian, but I will try to translate it to English soon as it is possible.

Mex Source Code (in C)

Mex Documentation (in Macedonian)

Mex Documentation (in English)

VF Documentation (in Macedonian)

VF Documentation (in English)

Mex Dos Program