[OpenTRV-dev] AES128-GCM on Arduino UNO

Damon Hart-Davis dhd at exnet.com
Sun Jun 14 19:07:43 BST 2015


Hi,

I have hacked  a AES128-GCM implementation on Arduino UNO (and thus also good for current OpenTRV hardware) down to 14kB; can anyone beat that and with a liberal licence (Apache/BSD/LGPL)?

I’m aiming to get to < 4kB code and < 512B RAM, which I think should be possible, and which would make this crypto palatable for small leaf nodes.

http://www.earth.org.uk/note-on-IoT-security.html#app4

Also comments on the proposed outline scheme for constructing the IV/nonce would be welcome given “... that [] the pre-shared keys for leaf nodes are likely to be very long-lived, and avoiding reuse of nonce/IV is critical to AES-GCM security, [so] these details are critical.”

I’d actually like to start winding down this early part of the security research (ie there seems to be a viable way to protect frames in flight even from Arduino-class hardware) unless anyone can point out massive holes in the scheme so far.

Rgds

Damon




More information about the OpenTRV-dev mailing list