Uploaded March 2017 | Updated September 2026, 2 weeks ago
In this video we'll start our adventure into the Java programming language. Java is the most popular app programming language in the world. It is the main language for for developing Android apps and games, and we can develop desktop apps and games too.
I will be using the Eclipse IDE in this series, there's plenty of other Java IDE's available, Eclipse is just one.
Eclipse:
eclipse.org/downloads
FaceBook:
facebook.com/whatsacreel
Become a Patron:
patreon.com/whatsacreel
Music Channel:
youtube.com/channel/UC2nWRGqPL6O-Lm8mexWhISQ
In this video we'll start our adventure into the Java programming language. Java is the most popular app programming language in the world. It is the main language for for developing Android apps and games, and we can develop desktop apps and games too.
I will be using the Eclipse IDE in this series, there's plenty of other Java IDE's available, Eclipse is just one.
Eclipse:
eclipse.org/downloads
FaceBook:
facebook.com/whatsacreel
Become a Patron:
patreon.com/whatsacreel
Music Channel:
youtube.com/channel/UC2nWRGqPL6O-Lm8mexWhISQ










![AES Encryption 4: Matrix Multiplication
This is a short vid which shows the code for the matrix multiplication for the MixColumns step. I initially intended to make this vid and the previous AES one around the same length, but we actually covered almost everything in the previous vid!
Mix Columns Wikipedia Page:
https://en.wikipedia.org/wiki/Rijndael_mix_columns
Code for dot products:
tmp[0] = (unsigned char)(mul2[state[0]] ^ mul3[state[1]] ^ state[2] ^ state[3]);
tmp[1] = (unsigned char)(state[0] ^ mul2[state[1]] ^ mul3[state[2]] ^ state[3]);
tmp[2] = (unsigned char)(state[0] ^ state[1] ^ mul2[state[2]] ^ mul3[state[3]]);
tmp[3] = (unsigned char)(mul3[state[0]] ^ state[1] ^ state[2] ^ mul2[state[3]]);
tmp[4] = (unsigned char)(mul2[state[4]] ^ mul3[state[5]] ^ state[6] ^ state[7]);
tmp[5] = (unsigned char)(state[4] ^ mul2[state[5]] ^ mul3[state[6]] ^ state[7]);
tmp[6] = (unsigned char)(state[4] ^ state[5] ^ mul2[state[6]] ^ mul3[state[7]]);
tmp[7] = (unsigned char)(mul3[state[4]] ^ state[5] ^ state[6] ^ mul2[state[7]]);
tmp[8] = (unsigned char)(mul2[state[8]] ^ mul3[state[9]] ^ state[10] ^ state[11]);
tmp[9] = (unsigned char)(state[8] ^ mul2[state[9]] ^ mul3[state[10]] ^ state[11]);
tmp[10] = (unsigned char)(state[8] ^ state[9] ^ mul2[state[10]] ^ mul3[state[11]]);
tmp[11] = (unsigned char)(mul3[state[8]] ^ state[9] ^ state[10] ^ mul2[state[11]]);
tmp[12] = (unsigned char)(mul2[state[12]] ^ mul3[state[13]] ^ state[14] ^ state[15]);
tmp[13] = (unsigned char)(state[12] ^ mul2[state[13]] ^ mul3[state[14]] ^ state[15]);
tmp[14] = (unsigned char)(state[12] ^ state[13] ^ mul2[state[14]] ^ mul3[state[15]]);
tmp[15] = (unsigned char)(mul3[state[12]] ^ state[13] ^ state[14] ^ mul2[state[15]]);
Music Channel:
Sober:
https://youtu.be/Y2LCg3cGu7U
Gold Digger:
https://youtu.be/wAoXB8tg0co
Become a patron and support Whats a Creel programming vids on Patreon:
www.patreon.com/whatsacreel
FaceBook:
www.facebook.com/pages/WhatsaCreel/167732956665435 AES Encryption 4: Matrix Multiplication](https://i.ytimg.com/vi/bERjYzLqAfw/mqdefault.jpg)