Tiny Encryption Algorithm is a simple, powerful & notably fast encryption algorithm. Although TEA algorithm has a few weaknesses as it suffers from equivalent keys (Which left the room for related-key attacks) – each key is equivalent to three others, which means that the effective key size is only 126.

It is Feistel type cipher, the algorithm relies on the alternate use of XOR and ADD to provide nonlinearity and A dual shift causes all bits of the key to mixed data constantly.

Below code blocks released into the public domain by David Wheeler and Roger Needham (designer of TEA), in next TEA Part II we will try to provide working C# code for encryption and decryption.

C++ Source Code for TEA

C# Code Source Code for TEA