Variable-length frames (untested).

This commit is contained in:
akwizgran
2015-01-05 17:35:29 +00:00
parent d3bf2d59a1
commit 1f69f0d2f6
16 changed files with 147 additions and 368 deletions

View File

@@ -1,5 +1,6 @@
package org.briarproject.api.transport;
public interface TransportConstants {
/** The length of the pseudo-random tag in bytes. */
@@ -8,18 +9,18 @@ public interface TransportConstants {
/** The maximum length of a frame in bytes, including the header and MAC. */
int MAX_FRAME_LENGTH = 1024;
/** The length of the initalisation vector (IV) in bytes. */
int IV_LENGTH = 12;
/** The length of the additional authenticated data (AAD) in bytes. */
int AAD_LENGTH = 6;
/** The length of the frame header in bytes. */
int HEADER_LENGTH = 2;
/** The length of the message authentication code (MAC) in bytes. */
int MAC_LENGTH = 16;
/** The length of the frame header in bytes. */
int HEADER_LENGTH = 4 + MAC_LENGTH;
/** The maximum total length of the frame payload and padding in bytes. */
int MAX_PAYLOAD_LENGTH = MAX_FRAME_LENGTH - HEADER_LENGTH - MAC_LENGTH;
/** The length of the initalisation vector (IV) in bytes. */
int IV_LENGTH = 12;
/**
* The minimum stream length in bytes that all transport plugins must
* support. Streams may be shorter than this length, but all transport