MD5
Cryptographic Library for Lua

## Overview

MD5 offers checksum facilities for Lua 5.X: a hash (digest) function, a pair crypt/decrypt based on MD5 and CFB, and a pair crypt/decrypt based on DES with 56-bit keys.

Note that although MD5 was designed to be used as a cryptographic hash function, it was found that key collisions could be calculated in a few seconds, thus it should not be used where a cryptographic hash is required.

MD5 is free software and uses the same license as Lua (MIT).

## Status

MD5 version 1.3 is now available for download.

## Download

MD5 can be downloaded in source code from its GitHub page.

You can also install MD5 using LuaRocks:

    luarocks install md5

## History

Version 1.3 [16/Apr/2019]
  - Code updated to compile for Lua 5.X. Tested with Lua 5.1, 5.2, 5.3 and 5.4-work2.
Version 1.2 [06/Sep/2013]
  - Code adapted to compile for Lua 5.0, 5.1 and 5.2
Version 1.1.2 [12/May/2008]
  - Fixed bug in 64-bit systems
  - Fixed the Windows makefile to accept longer directory names (patch by Alessandro Hecht and Ignacio Burgueño).
Version 1.1.1 [28/Nov/2007]
  - Added DES56 tests (by Mauricio Bomfim)
  - Updated DES56 source to the latest release from Stuart Levy
Version 1.1.0 [30/Oct/2007]
  Added DES56 crypt/decrypt functions.
Version 1.0.2 [08/May/2007]
  - Added a nmake version for Lua 5.1
  - Windows binaries for Lua 5.1.2
Version 1.0.1 [21/Aug/2006]
  - Adapted to work with both Lua 5.0 and Lua 5.1
  - Windows binaries for Lua 5.0.3
Version 1.0.0
  - First public version

## Credits

This Lua version of MD5 was designed and implemented by Roberto Ierusalimschy and Marcela Ozório Suarez (based on the original MD5 by Ron Rivest). The DES 56 C library was implemented by Stuart Levy and uses a MIT license too. The current distribution was packed by Tomás Guisasola and Fábio Mascarenhas as part of the Kepler Project.

Valid XHTML 1.0!