asn.1/pEp.asn1
author Volker Birk <vb@pep.foundation>
Sun, 31 Jul 2016 19:38:23 +0200
branchkeysync
changeset 951 dec407deb10e
parent 940 5f0a9d0f0ecd
child 1063 8f9c94812786
permissions -rw-r--r--
...
     1 PEP
     2     { iso(1) org(3) dod(6) internet(1) private(4) enterprise(1) pEp(47878) basic(0) }
     3 
     4 DEFINITIONS AUTOMATIC TAGS EXTENSIBILITY IMPLIED ::=
     5 
     6 BEGIN
     7 
     8 EXPORTS Identity, IdentityList, Header;
     9 
    10 major-version INTEGER ::= 1
    11 minor-version INTEGER ::= 0
    12 
    13 ISO639-1 ::= PrintableString(FROM ("a".."z")) (SIZE(2))
    14 Hex ::= PrintableString(FROM ("A".."F") | FROM ("0".."9"))
    15 Hash ::= Hex(SIZE(1..128)) -- SHA1 to SHA512 in hex
    16 
    17 Identity ::= SEQUENCE {
    18     address     UTF8String  (SIZE(1..1024)) OPTIONAL,
    19     fpr         Hash,
    20     user-id     UTF8String  (SIZE(1..1024)) OPTIONAL,
    21     username    UTF8String  (SIZE(1..1024)) OPTIONAL,
    22     comm-type   INTEGER     (0..255) OPTIONAL,
    23     lang        ISO639-1    DEFAULT "en"
    24 }
    25 
    26 IdentityList ::= SEQUENCE OF Identity
    27 
    28 Version ::= SEQUENCE {
    29     major       INTEGER (0..255) DEFAULT major-version,
    30     minor       INTEGER (0..255) DEFAULT minor-version
    31 }
    32 
    33 Header ::= SEQUENCE {
    34     version     Version,
    35     sequence    INTEGER,  /* always increases */
    36     me          Identity, /* identity of the sender */
    37     state       INTEGER,  /* state the sender is in */
    38     devicegroup BOOLEAN DEFAULT FALSE
    39         /* signals if this message is coming from a device group member */
    40 }
    41 
    42 END
    43