Skip to content

Latest commit

 

History

History
78 lines (55 loc) · 2.8 KB

message-footer.md

File metadata and controls

78 lines (55 loc) · 2.8 KB

Footer Structure

Version

See Message Version.

Implementations

Overview

The footer is a component of the message.
When an algorithm suite includes a signature algorithm, the message MUST contain a footer.

Definitions

Conventions used in this document

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119.

Structure

The following describes the fields that form the footer.
The bytes are appended in the order shown.

Field Length (bytes) Interpreted as
Signature Length 2 Uint16
Signature Variable. Bytes

Signature Length

The length of the signature.

Signature

The signature used to authenticate the message.
This signature MUST be calculated over both the message header and the message body, in the order of serialization.
The algorithm suite specified by the Algorithm Suite ID field determines how the value of this field is calculated, and uses this value to authenticate the contents of the header and body during decryption.

Example Usage

The following section contains examples of the footer.

Example Pseudo-ASN.1 Structure

DEFINITIONS ::= BEGIN
Footer SEQUENCE (SIZE(2)) {
    SignatureLength UINT16,
    Signature OCTET STRING (SIZE(SignatureLength)),
}

Example Bytes

0067                                     Signature Length (103)
30650230 7229DDF5 B86A5B64 54E4D627      Signature
CBE194F1 1CC0F8CF D27B7F8B F50658C0
BE84B355 3CED1721 A0BE2A1B 8E3F449E
1BEB8281 023100B2 0CB323EF 58A4ACE3
1559963B 889F72C3 B15D1700 5FB26E61
331F3614 BC407CEE B86A66FA CBF74D9E
34CB7E4B 363A38