6302442b89bb6594d7666a3d5d127cbab5babbe7
[netconf.git] / transport / transport-ssh / src / main / yang / iana-ssh-mac-algs@2022-06-16.yang
1 module iana-ssh-mac-algs {
2   yang-version 1.1;
3   namespace "urn:ietf:params:xml:ns:yang:iana-ssh-mac-algs";
4   prefix sshma;
5
6   organization
7     "Internet Assigned Numbers Authority (IANA)";
8
9   contact
10     "Postal: ICANN
11              12025 Waterfront Drive, Suite 300
12              Los Angeles, CA  90094-2536
13              United States of America
14      Tel:    +1 310 301 5800
15      Email:  iana@iana.org";
16
17   description
18     "This module defines identities for the MAC algorithms
19      defined in the 'MAC Algorithm Names' sub-registry of the
20      'Secure Shell (SSH) Protocol Parameters' registry maintained
21      by IANA.
22
23      Copyright (c) 2022 IETF Trust and the persons identified as
24      authors of the code. All rights reserved.
25
26      Redistribution and use in source and binary forms, with
27      or without modification, is permitted pursuant to, and
28      subject to the license terms contained in, the Revised
29      BSD License set forth in Section 4.c of the IETF Trust's
30      Legal Provisions Relating to IETF Documents
31      (https://trustee.ietf.org/license-info).
32
33      The initial version of this YANG module is part of RFC EEEE
34      (https://www.rfc-editor.org/info/rfcEEEE); see the RFC
35      itself for full legal notices.";
36
37   revision 2022-06-16 {
38     description
39       "Reflects contents of the MAC algorithms registry on
40        June 16, 2022.";
41     reference
42       "RFC EEEE: YANG Groupings for SSH Clients and SSH Servers";
43   }
44
45   // Typedefs
46
47   typedef mac-algorithm-ref {
48     type identityref {
49       base "mac-alg-base";
50     }
51     description
52       "A reference to a SSH mac algorithm identifier.";
53   }
54
55
56   // Identities
57
58   identity mac-alg-base {
59     description
60       "Base identity used to identify message authentication
61        code (MAC) algorithms.";
62   }
63
64   identity hmac-sha1 {
65     base mac-alg-base;
66     description
67       "HMAC-SHA1";
68     reference
69       "RFC 4253:
70          The Secure Shell (SSH) Transport Layer Protocol";
71   }
72
73   identity hmac-sha1-96 {
74     base mac-alg-base;
75     description
76       "HMAC-SHA1-96";
77     reference
78       "RFC 4253:
79          The Secure Shell (SSH) Transport Layer Protocol";
80   }
81
82   identity hmac-md5 {
83     base mac-alg-base;
84     description
85       "HMAC-MD5";
86     reference
87       "RFC 4253:
88          The Secure Shell (SSH) Transport Layer Protocol";
89   }
90
91   identity hmac-md5-96 {
92     base mac-alg-base;
93     description
94       "HMAC-MD5-96";
95     reference
96       "RFC 4253:
97          The Secure Shell (SSH) Transport Layer Protocol";
98   }
99
100   identity none {
101     base mac-alg-base;
102     description
103       "NONE";
104     reference
105       "RFC 4253:
106          The Secure Shell (SSH) Transport Layer Protocol";
107   }
108
109   identity aead-aes-128-gcm {
110     base mac-alg-base;
111     description
112       "AEAD_AES_128_GCM";
113     reference
114       "RFC 5647:
115          AES Galois Counter Mode for the
116          Secure Shell Transport Layer Protocol";
117   }
118
119   identity aead-aes-256-gcm {
120     base mac-alg-base;
121     description
122       "AEAD_AES_256_GCM";
123     reference
124       "RFC 5647:
125          AES Galois Counter Mode for the
126          Secure Shell Transport Layer Protocol";
127   }
128
129   identity hmac-sha2-256 {
130     base mac-alg-base;
131     description
132       "HMAC-SHA2-256";
133     reference
134       "RFC 6668:
135          SHA-2 Data Integrity Verification for the
136          Secure Shell (SSH) Transport Layer Protocol";
137   }
138
139   identity hmac-sha2-512 {
140     base mac-alg-base;
141     description
142       "HMAC-SHA2-512";
143     reference
144       "RFC 6668:
145          SHA-2 Data Integrity Verification for the
146          Secure Shell (SSH) Transport Layer Protocol";
147   }
148
149   // Protocol-accessible Nodes
150
151   container supported-algorithms {
152     config false;
153     description
154       "A container for a list of MAC algorithms
155        supported by the server.";
156     leaf-list supported-algorithm {
157       type mac-algorithm-ref;
158       description
159         "A MAC algorithm supported by the server.";
160     }
161   }
162
163 }