If you haven´t read the original paper about Chaffing and Winnowing yet, I suggest that you do it now.
In this paper, I define a package as the triple consisting of the Serial number, the Message and the MAC.
Let´s design a implementation of the Chaffing and Winnowing system. We assume to use it as a realtime communication link between two hosts over the Internet. For example, Alice wants to transmit the data from the original paper to Bob:
Hi Bob Meet me at 7PM Love-Alice
I added the last package to have more packages with the same serial number:
Package | Grain | Serial | Message | MAC |
1 | 1 | Hi Larry | 523105 | |
2 | * | 1 | Hi Bob | 465231 |
3 | * | 2 | Meet me at | 782290 |
4 | 2 | I'll call you at | 793122 | |
5 | 3 | 6PM | 891231 | |
6 | * | 3 | 7PM | 344287 |
7 | 4 | Yours-Susan | 553419 | |
8 | * | 4 | Love-Alice | 312265 |
9 | 4 | Love-Philipp | 823949 |
This would lead to the idea to implement the decoding for the receiver the following way: