Use AEADs to replace stream cipher + OTA. Previous discussion: #29.
Proposed AEAD algorithms:
Update: The following shows an example of TCP stream in chacha20-ietf-poly1305 mode (original idea by @breakwa11 and @Noisyfox). Other AEAD should follow the similar format.
Cipher: chacha20-ietf-poly1305
TCP request (after encryption, *ciphertext*)
+--------+----------------+--------------+--------------+---------------+
| NONCE | PayloadLen_TAG | *PayloadLen* | Payload_TAG | *Payload* |
+--------+----------------+--------------+--------------+---------------+
| 12 | 16 | 2 | 16 | Variable |
+--------+----------------+--------------+--------------+---------------+
TCP Chunk (after encryption, *ciphertext*)
+--------------+------------+-----------+----------+
| DATA_LEN_TAG | *DATA_LEN* | DATA_TAG | *DATA* |
+--------------+------------+-----------+----------+
| 16 | 2 | 16 | Variable |
+--------------+------------+-----------+----------+
Use AEADs to replace stream cipher + OTA. Previous discussion: #29.
Proposed AEAD algorithms:
Update: The following shows an example of TCP stream in chacha20-ietf-poly1305 mode (original idea by @breakwa11 and @Noisyfox). Other AEAD should follow the similar format.