An optimized software implementation in C (ISO C90) of the IDEA NXT encryption algorithm. This implementation includes the 64-bit and the 128-bit block encryption with up to 255 rounds. The key length can be from 0 up to 256 bits with a multiple of 8 bits.