I was wondering what mechanisms exists that could be used to prevent error propagation in wireless networks and especially with respect to the avalanche effect.

I know ARQ and FEC can be used, but these affect the QoS when used. Are there any mechanisms that work better than these two?


Wireless protocols, or even wired protocols, are based on packets, often called frames. A typical frame will have a checksum, that is used to detect whether the frame was damaged or not. If the frame is detected as damaged, it is dropped altogether; it is up to the upper layers to provision for acknowledge and reemission of missing frames (that's what TCP does). Then still upper layers (SSL/TLS) employ cryptography to detect remaining alterations, that can be assumed to be malicious.

When encryption is applied at the frame level (at "layer 2" in the (in)famous OSI model), each frame is encrypted and decrypted independently of the others; thus, no decryption error "propagates" to other frames. The so-called "avalanche effect", a concept in cryptographic algorithm designs, does not imply that subsequent frames will be garbled; in fact, in most cases, that effect is limited to one or two block. This can be viewed in the CBC mode of encryption: if you modify one encrypted block, then the modification alters only two blocks after decryption.

There are some protocols that do not drop modified frames; typically, GSM (for voice calls) will try to recover from transmission errors. GSM uses the A5/1 stream cipher, so that encryption is XORing with a key-dependent stream. If a bit is flipped in the encrypted frame, then the corresponding bit will be flipped in the decrypted data, but other bits will be unaffected. Since this is voice, slight alterations don't make the words unintelligible, so GSM chooses to keep such partial frames. In fact the receiver will not even know that the data was altered in transit.

Note that this does not mean that A5/1 has no avalanche effect. In fact it still has a lot; if you change a single bit in the key, then the whole internal state of A5/1 (and the subsequently produced stream) is completely modified. A5/1 has other shortcomings (that all boil down to a way too small internal state), but not a lack of avalanche effect.

(Basically, "avalanche effect" does not mean "change 1 bit of encrypted text and the whole plaintext is turned into junk". That expression is a concept which makes sense only within a specific context of internal cryptographic primitive design.)

| improve this answer | |

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