Solved

# Programming AES Encryption - Mix Columns Part

Posted on 2011-05-09
2,101 Views
I'm not understanding at all how I can program this... I'm quite confused at the moment..

I'm hoping someone here can break it down into layman's terms for me...

best way probably for me to understand is maybe by picking a couple numbers and showing me in a psuedo code type of way, how I could come up with the correct answer

at the moment i have:

d4  e0  48  28
bf  b4  41  27
5d  52  11  98
30  ae  f1  e5

I guess i'm supposed to break it down into binary and multiply it by

2  3  1  1
1  2  3  1
1  1  2  3
3  1  1  2

end result after mix columns:
04  e0  48  28
66  cb  f8  06
81  19  d3  26
e5  9a  7a  4c
0
Question by:nocturn4l

LVL 47

Expert Comment

I guess, here is the description:
http://www.angelfire.com/biz7/atleast/mix_columns.pdf

One of the ways is to read the fisrt matrix as strings and then tokenize
into individual numbers use this method Integer.parseInt(String, 16)
and get [4][4] array of integers

Then you read matrix of decimal  integers.

Then you multiply matrices and
transform each one with Integer.toHexString
and you should get another matrix.

I don't understand, though, it should be not just simple multipilication
as all numbers should be no bigger than ff after multiplication -and I'm not
sure I understood from the above metntioned text

0

LVL 47

Expert Comment

Yes these multiplications and additions are not multiplications and additions, they are fairly  fairly complex - see here:
http://en.wikipedia.org/wiki/Rijndael_mix_columns

0

LVL 47

Accepted Solution

0

Author Comment

jus go to the computer, will see if your links help, i'll be back to give points or ask more questions - thanks
0

Author Comment

got to*
0

LVL 92

Assisted Solution

this walks you through the maths required
http://stackoverflow.com/questions/4964515/aes-limitations-and-mixcolumns
should be straight forward to implement it based on that
we are not permitted to code it for you but if you have any problems let me know and I'll help you through it
0

LVL 92

Expert Comment

also a java implementation here that you can probably extract from to meet your needs
http://www.cs.utsa.edu/~wagner/laws/AESEncryptJava.html
0

Author Closing Comment

thanks guys, the links were of good help, think i understand it now
0

## Featured Post

### Suggested Solutions

matchUp  challenge 9 47
Encrypted Laptop running Linux 3 60
IT Company 5 52
object oriented javascript web form 8 48
Cybersecurity has become the buzzword of recent years and years to come. The inventions of cloud infrastructure and the Internet of Things has made us question our online safety. Let us explore how cloud- enabled cybersecurity can help us with our b…
When the confidentiality and security of your data is a must, trust the highly encrypted cloud fax portfolio used by 12 million businesses worldwide, including nearly half of the Fortune 500.
The viewer will learn how to implement Singleton Design Pattern in Java.
The viewer will learn how to pass data into a function in C++. This is one step further in using functions. Instead of only printing text onto the console, the function will be able to perform calculations with argumentents given by the user.