pub struct RegisteredHeader {
    pub algorithm: SignatureAlgorithm,
    pub media_type: Option<String>,
    pub content_type: Option<String>,
    pub web_key_url: Option<String>,
    pub web_key: Option<String>,
    pub key_id: Option<String>,
    pub x509_url: Option<String>,
    pub x509_chain: Option<Vec<String>>,
    pub x509_fingerprint: Option<String>,
    pub critical: Option<Vec<String>>,
}
Expand description

Registered JWS header fields. The alg defaults to HS256 and typ is automatically set to JWT. All the other fields are optional. The fields are defined by RFC7519#5 and additionally in RFC7515#4.1.

Fields

algorithm: SignatureAlgorithm

Algorithms, as defined in RFC 7518, used to sign or encrypt the JWT Serialized to alg. Defined in RFC7515#4.1.1.

media_type: Option<String>

Media type of the complete JWS. Serialized to typ. Defined in RFC7519#5.1 and additionally RFC7515#4.1.9. The “typ” value “JOSE” can be used by applications to indicate that this object is a JWS or JWE using the JWS Compact Serialization or the JWE Compact Serialization. The “typ” value “JOSE+JSON” can be used by applications to indicate that this object is a JWS or JWE using the JWS JSON Serialization or the JWE JSON Serialization. Other type values can also be used by applications.

content_type: Option<String>

Content Type of the secured payload. Typically used to indicate the presence of a nested JOSE object which is signed or encrypted. Serialized to cty. Defined in RFC7519#5.2 and additionally RFC7515#4.1.10.

web_key_url: Option<String>

The JSON Web Key Set URL. This is currently not implemented (correctly). Serialized to jku. Defined in RFC7515#4.1.2.

web_key: Option<String>

The JSON Web Key. This is currently not implemented (correctly). Serialized to jwk. Defined in RFC7515#4.1.3.

key_id: Option<String>

The Key ID. This is currently not implemented (correctly). Serialized to kid. Defined in RFC7515#4.1.3.

x509_url: Option<String>

X.509 Public key cerfificate URL. This is currently not implemented (correctly). Serialized to x5u. Defined in RFC7515#4.1.5.

x509_chain: Option<Vec<String>>

X.509 public key certificate chain. This is currently not implemented (correctly). Serialized to x5c. Defined in RFC7515#4.1.6.

x509_fingerprint: Option<String>

X.509 Certificate thumbprint. This is currently not implemented (correctly). Also not implemented, is the SHA-256 thumbprint variant of this header. Serialized to x5t. Defined in RFC7515#4.1.7.

critical: Option<Vec<String>>

List of critical extended headers. This is currently not implemented (correctly). Serialized to crit. Defined in RFC7515#4.1.11.

Trait Implementations

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Returns the “default value” for a type. Read more
Deserialize this value from the given Serde deserializer. Read more
Converts to this type from the input type.
This method tests for self and other values to be equal, and is used by ==. Read more
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more
Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more
Compare self to key and return true if they are equal.

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.