11
$\begingroup$

It is possible to implement AES on 4-bit microcontroller? As far as I know, AES on 8-bit microcontroller are common especially for light weight application such as the RFID.

I have yet to come across AES been employed on 4-bit microcontroller, therefore I have been wondering whether such implementation is feasible.

$\endgroup$
  • 2
    $\begingroup$ Using two 4 bit data structures you can construct an 8 bit data structure. So in that manner it is definitely possible to put AES on a 4-bit microcontroller. $\endgroup$ – mikeazo Feb 3 '12 at 15:53
  • $\begingroup$ can you elaborate more? $\endgroup$ – cLaRe Feb 3 '12 at 15:58
  • 1
    $\begingroup$ it would be similar to multiple precision integer arithmetic (see cacr.math.uwaterloo.ca/hac/about/chap14.pdf for details). $\endgroup$ – mikeazo Feb 3 '12 at 21:26
12
$\begingroup$

Yes, AES could be implemented on a 4-bit micro-controller such as this EM6626, and that would not be rocket science or stupidly slow. This application note illustrates that all kind of 8-bit operations are simple, and table lookups are possible.

In fact, tables are not even indispensable if performance is non-critical; see this minimalist AES source code in C which has a compilation option to avoid any table.

The most serious issue is the amount of RAM required: current 128-bit subkey and 128-bit data will eat half of the total 512-bit RAM of the above device.

Also worrying is the security: I know no 4-bit micro-controller with any kind of security evaluation. Thus I would trust such an implementation only if it is operated in a secure environment, and with a key that vanishes from the device after use. That's an appropriate security model for an enciphering machine, but not a copy-protection dongle.

$\endgroup$
  • $\begingroup$ thanks for the information. by any chance that AES in the field of GF((2^4)^2) would be efficient for 4-bit MCU in comparison to the AES in the field of GF((2^2)^4) and GF(((2^2)^2)^2)? $\endgroup$ – cLaRe Feb 6 '12 at 13:21
12
$\begingroup$

The paper Enabling Standardized Cryptography on Ultra-Constrained 4-bit Microcontrollers (page 255) describes such an implementation.

$\endgroup$
  • $\begingroup$ That's a good reading there... With a practical approach.. $\endgroup$ – uygar.raf Feb 17 '12 at 21:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.