I’m putting up the last cryptographic algorithm I implemented in Java. It’s the winner of AES contest, providing high security and good speed.
It is called Rijndael or more commonly AES. I wont bother you with details anymore. For any references wikipedia is your friend.
Here is the wikipedia article about it, and more helpful check out the external links for a complete description of the algorithm.
Apart from the others I talked about, AES uses pretty advanced mathematical operations in the Galois Field.
Sorry for the lack of comments in the source code I’m putting below, but functions names are pretty descriptive and you should be able to pick it up if you go through it having some AES description document at hand. Call me lazy…that’s the truth
I’ve also put together an Eclipse project including all algorithms I’ve discussed, with some test cases.

wonderful!!!!
Thank You very much man!
Thanks for the AES algorithm. I need to back level some code to jdk 1.4 and it does not have the cipher which came in 1.6 (I believe). However when testing the decryption algorithm I did find a bug. It was dropping the last character of the decrypted byte array in the deletePadding() method. I corrected this by removing the -1 in the following line of code:
byte[] tmp = new byte[input.length - count - 1];
Thanks again!
No problem.
Thanks you pointed it out.
I’ll check and repair it when I’ll have time.
Excellent AES algorithm for compatibility with C code supplied by NXP for LPC1769
Really great – thank you very much!
Thanks
Helped me with a delayed-to-the-last-minute project.