Wednesday, October 8, 2014

A big step for Contiki: built-in encryption

Contiki finally got built-in encryption support.

Contiki is a great platform for wireless products, but has been lacking in one respect: there was no built-in encryption. This has forced a lot of people, including us at Thingsquare, to develop their own encryption layers on top of Contiki.

Encryption is essential for wireless systems. Because wireless communication is so easy to eaves drop – all you need is a nearby antenna – every byte sent over a wireless channel must be encrypted. Adding encryption is one of the goals for the upcoming Contiki 3.x release.

For months, Contiki contributor kkrentz and a group of others have been working on a contribution that adds link-layer encryption for IEEE 802.15.4 radios. The code follows the IEEE 802.15.4 radio standard for encryption and supports the mandatory AES128 Counter with CBC-MAC (CCM) mode.

Yesterday, the pull request that contained this contributions was accepted into the mainline Contiki code. Now everyone using Contiki can simply switch on encryption and protect themselves and their users from prying antennas.