I have a pair of AVR's that communicate over the 2.4GHz link using NRF24l01+. The payload sent is 5 bytes long.

Right now the payload sent is in clear format so that anyone with enough knowledge and skill could theoretically build a device to intercept the data stream.

Can you please provide me with some recommendations on ways to encrypt this data stream considering it would be implemented on a 8 bit AVR (small code size) and would be done real time (so should be fast).



1 Answer 1


XXTEA, Keeloq, TEA are suitable encryption algorithms for microcontrollers with small amount of RAM.

If the data are usually constant you will have to use a rolling code method to prevent replay attack.

  • \$\begingroup\$ Decided to go with XTEA with 1 byte random data inserted to randomize the encrypted output when using the same input data \$\endgroup\$
    – Ankit
    Commented Mar 2, 2015 at 20:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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