FLL - Specifications - FSS-000F (Simple Packet)
Author: Kevin Day
Description: Featurless Linux Library Specifications
Keywords: Featureless, FLL, Kevin Day, Kevux, Linux, Library, Distribution, Open-Source, specification, standard, fss-0010, encrypted simple packet

# Featureless Linux Library Specification

## FSS-0010 (Encrypted Simple Packet)

The version date of this specification is `2023/07/16`.

This is an encrypted form of the network packet format of `FSS-000f (Simple Packet)`. The entire Payload Block is undefined by this standard and is instead defined by the encryption algorithm or standard in use. There is no rule, restriction, requirement, or definition on what encryption can be used. The only rule is that the Payload Block must be of a valid length as defined by the Size Block. The general rule is that it can be assumed that the encrypted data in the Payload Block would be of the `FSS-000e (Payload)` format. Being that the data is supposed to be encrypted, the actual contents of the Payload Block is left undefined. The `FSS-000f (Simple Packet)` that this standard modifies does not require the Payload Block to be in `FSS-000e (Payload)` format. This standard is even more lax than `FSS-000f (Simple Packet)` and drops replaces the words should be in from the `FSS-000f (Simple Packet)` standard and replaces them with could be in. This allows for the encrypted data to be anything the user wants, such as but not limited to Hypertext Transfer Protocol. When it comes to security, any and all data can be useful. For best encryption, one may want to consider not using this format because of the Control Block and the Size Block are not encrypted. The endianness bit should only be used to represent the Size Block to avoid any security concerns. The endianness of the encrypted needs to be determined through some other means for any kind of reasonable security. This standard uses the third bit from the left in the Control Block to designate that this is an encrypted packet. The 5 remaining control bits are left undefined. See the `fss-000f.txt` specification file for details regarding the `FSS-000f (Simple Packet)` standard. Example Packet Structure: `[ Control Block ] [ Size Block ] [ Payload Block ] [ 0b10100000 ] [ 0b00000000 0b00000000 0b00000100 0b11010010 ] [ size: 1229 (1234 - 5) ]` In the above example, take note that the third bit in the Control Block is a 1.

This is an encrypted form of the network packet format of `FSS-000f (Simple Packet)`.

The entire Payload Block is undefined by this standard and is instead defined by the encryption algorithm or standard in use. There is no rule, restriction, requirement, or definition on what encryption can be used. The only rule is that the Payload Block must be of a valid length as defined by the Size Block.

The general rule is that it can be assumed that the encrypted data in the Payload Block would be of the `FSS-000e (Payload)` format. Being that the data is supposed to be encrypted, the actual contents of the Payload Block is left undefined.

The `FSS-000f (Simple Packet)` that this standard modifies does not require the Payload Block to be in `FSS-000e (Payload)` format. This standard is even more lax than `FSS-000f (Simple Packet)` and drops replaces the words should be in from the `FSS-000f (Simple Packet)` standard and replaces them with could be in.

This allows for the encrypted data to be anything the user wants, such as but not limited to HTTP:"Hypertext Transfer Protocol".

When it comes to security, any and all data can be useful. For best encryption, one may want to consider not using this format because of the Control Block and the Size Block are not encrypted.

The endianness bit should only be used to represent the Size Block to avoid any security concerns. The endianness of the encrypted needs to be determined through some other means for any kind of reasonable security.

This standard uses the third bit from the left in the Control Block to designate that this is an encrypted packet.

The 5 remaining control bits are left undefined.

See the fss-000f (Simple Packet) specification file for details regarding the `FSS-000f (Simple Packet)` standard.

Example Packet Structure:

    [ Control Block ] [ Size Block                                  ] [ Payload Block         ]
    [ 0b10100000    ] [ 0b00000000 0b00000000 0b00000100 0b11010010 ] [ size: 1229 (1234 - 5) ]

In the above example, take note that the third bit in the Control Block is a 1.