A diversifier is a set of additional attributes (next to the base identity) that is used to form a pseudonym.
Diversifiers are used in (Direct) Encrypted Pseudnonyms (see Encrypted structures) and can be present as key-headers within DRKi and Migration Keys (see DV-key format). Within the structures and key-headers, the Diversifiers are represented as a list of key-value pairs.
The following rules apply to all diversifiers:
- Diversifiers MUST be sorted by key alphabetically ascending
- Keys MUST be unique within the list
Both keys and values MUST conform to the following Syntax in ABNF ( https://tools.ietf.org/html/rfc5234) :
ABNFADDITIONAL = "!" / %x22 / "#" / "%" / "&" / "'" / "(" / ")" / "*"/ "+" / "-" / "." / ":" / ";" / "<" / ">" / "?" / "@" / "[" / "\" / "]" / "^" / "_" / "`" / "{" / "|" / "}" / "~" ALPHA = %x41-5A / %x61-7A ; A-Z / a-z DIGIT = %x30-39 ; 0-9 SP = %x20 HTAB = %x09 WSP = SP / HTAB NWSP = ALPHA/ DIGIT / ADDITIONAL ; All but whitespace DIVERSIFIER_KEY_CONTENT = ALPHA / DIGIT [*(ALPHA / DIGIT)] ; Diversifier Keys must match this format. MUST not start or end with whitespace. At least 1 ALPHA / DIGIT DIVERSIFIER_VALUE_CONTENT = NWSP [*(NWSP / WSP) NWSP] ; Diversifier Values must match this format. MUST not start or end with whitespace. At least 1 NWSP.