|
Dаvіd Вucһаnаn
@David3141593
|
27. pro |
|
I implemented AES128 in 69 bytes of x86 assembly. (from @OverTheWireCTF challenge 0). Can anyone beat that? :P pic.twitter.com/VD7FUTD8Ii
|
||
|
|
||
|
Dаvіd Вucһаnаn
@David3141593
|
27. pro |
|
(for the pedantic: yes, this assumes bit 7 of AL is 0)
|
||
|
|
||
|
Dаvіd Вucһаnаn
@David3141593
|
27. pro |
|
For anyone saying "uSinG aEs-Ni iS cHeAtInG":
a) AESKEYGENASSIST only supports round constants as immediate arguments, so every other implementation I saw unrolls the key expansion loop.
b) I tricked a lot of smart CTF players into thinking this was a non-standard AES impl :P
|
||
|
|
||
|
Dаvіd Вucһаnаn
@David3141593
|
27. pro |
|
c) Explain the round loop exit condition.
d) Make the code smaller :P (I think this is possible, the shuffling stage was kinda optimised for obscurity rather than size)
|
||
|
|
||