asn.1/pEp.asn1
changeset 633 a2a4ad55e19e
parent 631 b2be2f799950
child 647 e4cfa409ceef
     1.1 --- a/asn.1/pEp.asn1	Mon May 16 11:55:36 2016 +0200
     1.2 +++ b/asn.1/pEp.asn1	Mon May 16 15:36:26 2016 +0200
     1.3 @@ -1,26 +1,36 @@
     1.4 -PEP DEFINITIONS ::=
     1.5 +PEP
     1.6 +
     1.7 +DEFINITIONS AUTOMATIC TAGS EXTENSIBILITY IMPLIED ::=
     1.8 +
     1.9  BEGIN
    1.10  
    1.11 +EXPORTS Identity, KeyList, Header;
    1.12 +
    1.13 +major-version INTEGER ::= 1
    1.14 +minor-version INTEGER ::= 0
    1.15 +
    1.16 +ISO936-1 ::= PrintableString(FROM ("a".."z")) (SIZE(2))
    1.17 +Hex ::= PrintableString(FROM ("A".."F") | FROM ("0".."9"))
    1.18 +Hash ::= Hex(SIZE(50..128)) -- SHA1 to SHA512 in hex
    1.19 +
    1.20  Identity ::= SEQUENCE {
    1.21 -    address     UTF8String,
    1.22 -    fpr         UTF8String,
    1.23 -    user-id     UTF8String,
    1.24 -    username    UTF8String,
    1.25 -    comm-type   INTEGER (0..255),
    1.26 -    lang        PrintableString
    1.27 +    address     UTF8String  (SIZE(1..1024)) OPTIONAL,
    1.28 +    fpr         Hash,
    1.29 +    user-id     UTF8String  (SIZE(1..1024)) OPTIONAL,
    1.30 +    username    UTF8String  (SIZE(1..1024)) OPTIONAL,
    1.31 +    comm-type   INTEGER     (0..255) OPTIONAL,
    1.32 +    lang        ISO936-1    DEFAULT "en"
    1.33  }
    1.34  
    1.35 -Stringlist ::= SEQUENCE OF UTF8String
    1.36 +KeyList ::= SEQUENCE OF Hash
    1.37  
    1.38  Version ::= SEQUENCE {
    1.39 -    major       INTEGER (0..255),
    1.40 -    minor       INTEGER (0..255)
    1.41 +    major       INTEGER (0..255) DEFAULT major-version,
    1.42 +    minor       INTEGER (0..255) DEFAULT minor-version
    1.43  }
    1.44  
    1.45  Header ::= SEQUENCE {
    1.46 -    protocol    INTEGER (0..65535),
    1.47      version     Version,
    1.48 -    message     INTEGER (0..65535),
    1.49      sequence    INTEGER
    1.50  }
    1.51