Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

For such low-bandwidth applications, you'll usually want to do the key exchange while you have a faster connection, as well as build a dictionary of expected recipients etc.

Once you have a pre-exchanged symmetric key pair and IVs etc., encryption can be done with zero overhead, and you can choose your own trade-off between authentication security and message size. Even 4 bytes go a long way (an attacker would need to send 2^31 messages over a very bandwidth-constrained channel to impersonate you), and 8 bytes make it safe enough for practically all applications.

That way, you can keep the authentication overhead very small (on the order of a few bytes), similar to how it's done for e.g. SRTP.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: