Re: [netconf] AD review of draft-ietf-netconf-tls-client-server-33

"Rob Wilton (rwilton)" <rwilton@cisco.com> Fri, 26 January 2024 14:54 UTC

Return-Path: <rwilton@cisco.com>
X-Original-To: netconf@ietfa.amsl.com
Delivered-To: netconf@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D304FC14F6EF; Fri, 26 Jan 2024 06:54:06 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.605
X-Spam-Level:
X-Spam-Status: No, score=-14.605 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_NONE=0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 3QQH_sT7lxjV; Fri, 26 Jan 2024 06:54:02 -0800 (PST)
Received: from rcdn-iport-2.cisco.com (rcdn-iport-2.cisco.com [173.37.86.73]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id EABFCC14F6E9; Fri, 26 Jan 2024 06:54:01 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cisco.com; i=@cisco.com; l=159092; q=dns/txt; s=iport; t=1706280842; x=1707490442; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=O2ZH/xWrqs9JM4BnLFtkDZv8tW9f21vyDpYEwVtzvl4=; b=HNMLeNJvIEYsCCOiyLB/P0NnznojVVKXZwN3LUKLSaDSwSPjtgUxa9Ov hfsllBgupBhsyKmVEVCLpj4X1p8kvNjlrIycHN4kmNgHvvRaq8EYIz+OW vwugkbTfowju2AmVQAf3p1A4EKicunAW+iHZaR5nCIfyh//hoxiMTU/PG Q=;
X-CSE-ConnectionGUID: CmV7b3A3QaShfJj1mBOFcA==
X-CSE-MsgGUID: uypqR9MaTE+bATk2io8RtQ==
X-IPAS-Result: A0ABAAAexrNlmJhdJa1QAQkZAQEBAQEBAQEBAQEBAQEBAQEBEgEBAQEBAQEBAQEBAUAlgRYEAQEBAQELAYE1MSooegJuFxJIiB4DhE5fiGcDgROQLYxFFIFqDwEBAQ0BAUQEAQGFBgKHSQImNAkOAQIEAQEBAQMCAwEBAQEBAQEBBgEBBQEBAQIBBwUUAQEBAQEBAQEeGQUOECeFeYZFAQEBAQMSCAFQDhACAQgRAwECIQENMR0IAQEEAQ0FCBqCXgGCF0gDAalUAYFAAoooeIE0gQGCFgWyfoFIAYghAYFOhzWBHwgfG4FJRIEVQoFmSjg+gmEEgTEBEgIaHoN0gi8EgRcpVoJmNCmDATFiRnWDO2MliHVUeSMDfQgEXA8bEB43ERATDQMIbh0CMTwDBQMEMgoSDAshBRNCA0AGSQsDAhoFAwMEgTAFDRoCEBoGDCYDAxJJAhAUAzgDAwYDCjEwVUEMUANoHzIJPA8MGgIbGw0nIwIsQAMREAIWAyIWBDQRCQsmAyoGNwISDAYGBl0mFgkEJQMIBANUAyF0EQMECgMUBwsHeIIMgT4EE0cQgTpgA0QdQAMLbT0UIRQbBQSBNgWWPIJFARAdDTECBBcLEAwNDwoEDRUFHA8FEwkCDVEFQBUEBwUBEgEVGQ8CCwIEGhKhUI5Jk0uBMAqEEaFPF4QFjHeRcIZKZINShy6NVCCCMaApKgcBGAGFAAIEAgQFAg4BAQaBYzqBW3AVO4JnUhkPjisBDQmBDAECBgGSO3YCOQIHCwEBAwmKZwEB
IronPort-PHdr: A9a23:ENWzSx+wts/m9P9uWOroyV9kXcBvk7zwOghQ7YIolPcSNK+i5J/le kfY4KYlgFzIWNDD4ulfw6rNsq/mUHAd+5vJrn0YcZJNWhNEwcUblgAtGoiEXGXwLeXhaGoxG 8ERHER98SSDOFNOUN37e0WUp3Sz6TAIHRCqLxV0IvjyHKbZjt+80Ka5/JiAKwlNjSC2NKt7N w7+7R2ErMQUjIB+Yqow0U7PpX1FOqxakGhpPlmU2R3746+N
IronPort-Data: A9a23:WJUEGKD+5ZkU9BVW/wLjw5YqxClBgxIJ4kV8jS/XYbTApDki1zAPx jQdWGmOPPuDZTH3c9pwb9+1904GsZeBnIU1OVdlrnsFo1CmBibm6XV1Cm+qYkt+++WaFBoPA /02M4SGdIZsCCaE+n9BC5C5xVFkz6aEW7HgP+DNPyF1VGdMRTwo4f5Zs7ZRbrVA357hXmthh fuo+5eDYAb/h2YtWo4pw/vrRC1H7ayaVAww5jTSVdgT1HfCmn8cCo4oJK3ZBxMUlaENQ4ZW7 86apF2I1juxEyUFU7tJoZ6nGqE+eYM+CCDV4pZgtwdOtTAZzsA6+v5T2PPx8i67gR3R9zx64 I0lWZBd1W7FM4WU8NnxXSW0HAlVOJMZ8uTuekG2isyd7U+fdlHL7f5HWRRe0Y0woo6bAElU/ vAebTsKdB3G3qS9wamwTa9ngcFLwMvDZdxE/Co/i2CCS697G/gvQI2SjTNc9C0vh8RSGvD2b MsCYj0pZxPFC/FKEg5IWMpuxbzy1xETdRVFuUqMn/sS6lT+jwZY7Lu3Md2FQMCzEJA9ckGw/ T+eoD+jXXn2Lue3zzeZ+XWqiMfOkD/1HoUIG9WQ+uRjjkHWx2EPBlgQWEewpv+3z1K6QJdUL 00Z/DZrtqUo6kGxCND5WzW5rWKK+BkGVLJt//YS8gqBzO/f5ByUQzFCRT9aY9tgv8gzLdA36 rOXt/jsO2Nl65TOcHum9rm2r2q3Ew87JkZXMEfoUjA5y9XkpYgyiDfGQdBiDLO5g7XJ9dfYn mDiQM8W2uV7sCIb65hX62wrlN5Fm3QkZhQ+6gOSVWW/40YgIoWkfIevr1Pc6J6szbp1rHHf4 RDoeODHsIji6K1hcgTRGI3h+5nyuJ643MX02wIHInXY323FF4SfVY5R+ipiA0xiL9wJfzTkC GeK5lsPvscMYCvxMv4qC25UNyjM5fWxfTgCfq2FBueinrAvHON61Hg3Oh7OhTyFfLYEyPlgY P93jvpA/V5BVPw4l2DpLwvs+bQq3Ss5jXjCXoz2yg/v0LyVIhaopUQtbjOzghQCxPrc+m39q o8HX+PTkkk3eLOlOEH/r9VMRW3m2FBmX/gaXeQNKL7aSuencUl8Y8LsLUQJJ9Q4wPsMzLaXo RlQmCZwkTLCuJEOEi3TAlhLY7L0VpE5pnU+VRHA937xs5T/Se5DNJsiSqY=
IronPort-HdrOrdr: A9a23:YToxh636tQyTVmIKozpDhwqjBftxeYIsimQD101hICG9Lfbo9P xGzc566farslcssSkb6K690cm7LU819fZOkO8s1MSZLXjbUQqTXc1fBOTZskfd8kHFh4pgPO JbAtdD4b7LfBdHZKTBkXSF+r8bqbHtntHL9ILjJjVWPH1Xgspbnn5E43OgYzZLrX59dOIE/f Snl616jgvlU046Ku68AX4IVfXCodrkqLLKCCRtOzcXrCO1oXeN8rDVLzi0ty1yb9pI+9gf2F mAtza8yrSosvm9xBOZ/XTU9Y5qlNzozcYGLNCQi+AOQw+cyzqAVcBEYfmvrTo1qOag5BIBi9 /XuSotOMx19jf4Yny1mx3wwAPtuQxeq0MKiGXowkcLk/aJAQ7SOPAxwb6xtSGprHbIiesMkp 6jGVjp8aa/QymwxRgVrOK4Jy2C3nDE0kbK19RjwUC2leAlGeRsRUt1xjIMLL4QWC3984wpC+ 9oEYXV4+tXa0qTazTDsnBo28HEZAV5Iv6qeDlKhiWu6UkfoFlpi08DgMAPlHYJ85wwD5FC+u TfK6xt0LVDVNUfY65xDPoIBZLfMB2BfTvcdGaJZVj3HqAOPHzA75bx/bUu/emvPJgF1oE7lp jNWE5R8WQyZ0XtA8uT24AjyGGGfEytGTD2js1O7ZlwvbPxALLtLC2YUVgr19Ctpv0Oa/erLc pb+KgmdMMLAVGebbqhhTeOKaW6AUNuJfEohg==
X-Talos-CUID: 9a23:MB8PsmHLG1eETOP+qmJM8XBLEJsMKUTU93feAU3hDExOZra8HAo=
X-Talos-MUID: 9a23:gyHrwwv5HmxeVO4AlM2nmSB6Lf05xq2SJQMHuKkF4ciDZRZsAmLI
X-IronPort-Anti-Spam-Filtered: true
Received: from rcdn-core-1.cisco.com ([173.37.93.152]) by rcdn-iport-2.cisco.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 26 Jan 2024 14:54:00 +0000
Received: from alln-opgw-4.cisco.com (alln-opgw-4.cisco.com [173.37.147.252]) by rcdn-core-1.cisco.com (8.15.2/8.15.2) with ESMTPS id 40QErxSs020025 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 26 Jan 2024 14:54:00 GMT
X-CSE-ConnectionGUID: RZ2/XkrKTL6WucSa3jFf1g==
X-CSE-MsgGUID: BPWTplniR4ukofcvz6irVw==
Authentication-Results: alln-opgw-4.cisco.com; dkim=pass (signature verified) header.i=@cisco.com; spf=Pass smtp.mailfrom=rwilton@cisco.com; dmarc=pass (p=reject dis=none) d=cisco.com
X-IronPort-AV: E=Sophos;i="6.05,216,1701129600"; d="scan'208,217";a="21522113"
Received: from mail-bn8nam11lp2168.outbound.protection.outlook.com (HELO NAM11-BN8-obe.outbound.protection.outlook.com) ([104.47.58.168]) by alln-opgw-4.cisco.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 26 Jan 2024 14:53:59 +0000
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JSj+BUZaFmLAORQKzI6mr5CRylVuiQiSf42776BM/jpqd9q81GyBScReP39uCXa4EikWIIveC9Mo15BfiwGFbsVPPXMl9jopmuzCY4b5rhpdXJXONY5qvCzDEaabRkS6ZaMUGgcgGxCUrYeZKaWXU9IMB8wALIWfBiDF0JD7AxvnRUL9dpfRTsgpeUL28uVGmhiD4TDGmGC4ZNsV1PkawoP/69DBV/GCiZerK+YiBi/UwnYiSTTCDLfTjhAJxQwuvr+ugd5v5bplc8PURiKZTZWRoh391FKjH3OZXiG+Q7Gflw5qXVgf/HjJ8bq2CiHPgkbCsFY0BQFyDEfBhDAlnw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=O2ZH/xWrqs9JM4BnLFtkDZv8tW9f21vyDpYEwVtzvl4=; b=dnUoe6IrNM/p75ZY1YaGlIXIlipw79ecEWLB5o4MHSndO53d26ORaKgXRbEn8Be+bFwYSYlijS8oknDUSlF4DJgbCxUETj+MAuTccUsXd4yHVMuUWde497OJeZc077puxh8E+fEO9QGW7GQl1RYftQPJfc9aZBJ89LCBfUGRIKKR9tMsqfvHBgasjuvTmMxZwS6lezyqBRAzg2x/3AqG88BRKcH3dSAKNq4obN2w7eb2zf3JjkYNJ/oT0C4j7oGjuzdv4y9FnrAyu3OyGiNs3ub9FhGEe5mZLRrXggCulz4VKwUWZjbACl/qMvT4B64/kJXelVxxqU4aPO8hAm/uRA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=cisco.com; dmarc=pass action=none header.from=cisco.com; dkim=pass header.d=cisco.com; arc=none
Received: from LV8PR11MB8536.namprd11.prod.outlook.com (2603:10b6:408:1ec::19) by CH0PR11MB5425.namprd11.prod.outlook.com (2603:10b6:610:d0::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7228.27; Fri, 26 Jan 2024 14:53:55 +0000
Received: from LV8PR11MB8536.namprd11.prod.outlook.com ([fe80::f662:b8bc:6176:256d]) by LV8PR11MB8536.namprd11.prod.outlook.com ([fe80::f662:b8bc:6176:256d%2]) with mapi id 15.20.7228.026; Fri, 26 Jan 2024 14:53:55 +0000
From: "Rob Wilton (rwilton)" <rwilton@cisco.com>
To: Kent Watsen <kent+ietf@watsen.net>, "Rob Wilton (rwilton)" <rwilton=40cisco.com@dmarc.ietf.org>
CC: "draft-ietf-netconf-tls-client-server.all@ietf.org" <draft-ietf-netconf-tls-client-server.all@ietf.org>, "netconf@ietf.org" <netconf@ietf.org>
Thread-Topic: [netconf] AD review of draft-ietf-netconf-tls-client-server-33
Thread-Index: AdmpvbsqumJkACWjQNi9mFQ8M2h4mSISdLeAB5bdf54=
Date: Fri, 26 Jan 2024 14:53:55 +0000
Message-ID: <LV8PR11MB8536590D4BF46493C5CBAE52B5792@LV8PR11MB8536.namprd11.prod.outlook.com>
References: <BY5PR11MB4196C94A3F111E771CA8B3E9B524A@BY5PR11MB4196.namprd11.prod.outlook.com> <0100018c7f33075d-6c0682a3-f6e1-4878-b188-782b364eb446-000000@email.amazonses.com>
In-Reply-To: <0100018c7f33075d-6c0682a3-f6e1-4878-b188-782b364eb446-000000@email.amazonses.com>
Accept-Language: en-US
Content-Language: en-GB
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: LV8PR11MB8536:EE_|CH0PR11MB5425:EE_
x-ms-office365-filtering-correlation-id: d5b47b48-8055-41f8-1a3c-08dc1e7e9e57
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: iaDtbeblqYzuaXvxJUfBeWCX6TIJPXtPsDtFctNeawpU0DSb6SUoJ7jZbJZt+2f9jCKoTQvPlGamGi6456BmN+Ty2fOSRP760axAxHsLC8VC8bYpaOKWhajxfGMkFIGECVb71qfqle5nDi5e/sJCOyIl1U97Z+YeP0OeIKYuMO9cJ2n5E6Xom70Fzhyb9dwWLIrw4dDKsa6lyA02lQiaior+JH1oEEM4p4NkJcEEr8oq68K1+/I2QZHzp5/8cOVgTjY9SBmfVROPxVz+tFzDOvgMJM3L61wZqXnubv7Z0BHClM+MtxSMsTp9Sh99Pl3IOKbWMVBhKU1XLN5aaNG2VFhBHh5a1hc8L8/QcAoT9Mqwb2CXq9Vn/6+uKQDra/QgCOnaIjmc3BI9UgrKNnLlXOrHEcTCERBeBpIrY/WlGVlOjArKFl7+W3P4G+t7ihjsRsPafZwv0LOEmBvaOKkWjtCsc3WXUX8O9s47Zk0/fp7L7Asibyq7yaztuc9qCM9SZPY+m1fLvbS/K7ndtrLg+owAzZ5bNxzSQtFjUNr8Fa5UuEbSJTr2ig8aqhHH1jiCHJRN1ifkpBXl1aCr8H+Vd7a7LTidqUe1+6T4X36G1QimBXN78FczUKlNuVnPdR0ReeFy0fmSHJOfTqQSicp3QJLUqcuwE3erMXpPaLUe/8w=
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:LV8PR11MB8536.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230031)(346002)(39860400002)(376002)(366004)(136003)(396003)(230922051799003)(230273577357003)(230173577357003)(451199024)(186009)(64100799003)(1800799012)(41300700001)(55016003)(38070700009)(54906003)(316002)(64756008)(66446008)(66476007)(9686003)(478600001)(53546011)(6506007)(7696005)(83380400001)(71200400001)(66946007)(122000001)(66556008)(38100700002)(5660300002)(33656002)(30864003)(2906002)(76116006)(91956017)(86362001)(110136005)(52536014)(8936002)(9326002)(4326008)(8676002)(559001)(579004); DIR:OUT; SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: M9orCU6KidFOQZTRCh2LiXq8hXz2t2KmY58ffcIbEzLXAV9jqH1GROeUzcxfplpldT2jWybqjgRov+UvXJwPVnB3mEFzSyNZgg2nxd8vOtsKzbaUr/738DfKF1XeDrWKA+VnKhLImMk+rahzvPn4/mXWKwlyaC5/bdf3B45MrqByC2Nt6bg9HjsyCPiv7hdoR/ZVfApPgFSzkwNsNvd3Go6Y7fNLei86P5zUS/7EVJWigai75BxrjBcK64YWAWTGVN0jBmfehcSdPQWskdw4G4UYUaEmi6HiRuplzEHl97gVjDLUDSJsLUdKgO4qmRQgacs9zUt/V/LlrKaWV5KuCGqdWZN4nkRTYT3O0lDuKAVobKsMDiWnaH7Er541DFvl6ts0ratSXc6KBw7ptFfze9Md2b2HT6cg8NFVcKZHB769VscGjRPzQenirAV+Ou4g9Lrou4rP6MS4qSdA98+k6aeKKX3+avIwut6wNCPWdAKQFu1duM2ajpadsCtaIr3HH7M1cOJ8Wb7rFoaepfP+nHLTV91oSdGWrlT9xgi5mt6t/ccww+e3UzTjgx9lmSiAf2XfFnZ5yyTwyxv7Q6vo06sZcemKnnHPR3VS+kCiyrPMhCnPrKglQkvwNZb9HSv4JfvxGR5p9JHvSw4GbDJHZT7wyS7wNQcFmLoNi0qhnKVcTOsovXu4f1LTV3Cwiha7+8AFKRpi7Wdyh6+FximPpheGJm+Irf60Gbk0B8anKKdNZHe/nzVWY15VgrvMAZcSLggnMoj8wcUmQwCgMC20zEbuw2QEZ4wJP+rasUBALWrNh9XLSAV338hLdDLconqN5m0kdab9LvsoUVrFh6ptNKUOR/25WUtkZ1BPfmdq1IU/gMcqQouPZe/Akz6HGAByzLGN2aVkTTuhbQNq4n/63ejEkvATY7tjXoL5Axd4uSAt3oYToPcdcMjCQ5sPGWfxoAU59MN7inAXHSwnwKKOKJA8Wq27WJMIQCtk4q50GDu1BRV4qzghDjWms2BrpRnQeVfAGxe2GX0pDh9WvKuLg7At23ZcNvm2MDDWdiX5F2m+nFz7kFeVhEfl5dpIsBdgsNgrqwdr4U0rD+Beb47B6bq+fE/lyMxedBbWDiEjfqaFWGYYQRs6hr31Y81VnfLHrH3nDXKXFrW2lc23mx2bEnyTdDp68VZjSBRkaixY5u6ui5NSEueCHhVyQT7LuoB6Ge7Bd+zFanl8Rz8Iv5YSDiwyfUZDZu0SvtvBhTDYlezM9E5Wpt47X9zaZsHh69Y+zBb64L4A0qTfuGAiWVJTktodF9ArenyryRSb7q9cfDuPusiWidXagdHkVYPa6naYqboueoNAHBYBe4O4m0FV4j9KTXIeZR/o52Ptw3pPYBo65wN56oT2WW4lD1SwJ0au3PaurQHi0fU4QmZvb2LO/kO1L6+jgs1LRrJrs7y/BNpnFOcusyQ7kr+A6OrX2C9prZINSDjxuRWCeO0cz4Is2MmdVMNFbq2TIF92X5g1shNolOUKfGWxRlOgUWY6bh8DQ6uLrDLaMpa6rGevhs+QdIeb+z0fFvG/FprE3Z3Qs3tZ+U3H2Y0HovHOWqM+K53vmoRFploTJBll6DjqPjDBspiUsaNIrkzimOhOlrL7hr7ukdYxRKrNbTSmG7kI1f3Ig34/UsnXm6NHqdtHbtD6Ag==
Content-Type: multipart/alternative; boundary="_000_LV8PR11MB8536590D4BF46493C5CBAE52B5792LV8PR11MB8536namp_"
MIME-Version: 1.0
X-OriginatorOrg: cisco.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: LV8PR11MB8536.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: d5b47b48-8055-41f8-1a3c-08dc1e7e9e57
X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Jan 2024 14:53:55.0865 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 5ae1af62-9505-4097-a69a-c1553ef7840e
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: JAkdFGI9x0/ezPO1x1xXOcGT6cW4NxUXoGM/Jn6JASaTZxMgAPcAy9fP9UMhtxMyM3QhtlcQBsedBoVyWksVCA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR11MB5425
X-Outbound-SMTP-Client: 173.37.147.252, alln-opgw-4.cisco.com
X-Outbound-Node: rcdn-core-1.cisco.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/gVKyIgn2sAlt3DxiqEJvrE8MU3w>
Subject: Re: [netconf] AD review of draft-ietf-netconf-tls-client-server-33
X-BeenThere: netconf@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: NETCONF WG list <netconf.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/netconf>, <mailto:netconf-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/netconf/>
List-Post: <mailto:netconf@ietf.org>
List-Help: <mailto:netconf-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/netconf>, <mailto:netconf-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 26 Jan 2024 14:54:06 -0000

Hi Kent,

Please see inline …

I think that there are just some small changes (perhaps mainly deleting support for TLS1.0/TLS1.1) and then we should be good to go.

From: Kent Watsen <kent+ietf@watsen.net>
Date: Monday, 18 December 2023 at 23:11
To: Rob Wilton (rwilton) <rwilton=40cisco.com@dmarc.ietf.org>
Cc: draft-ietf-netconf-tls-client-server.all@ietf.org <draft-ietf-netconf-tls-client-server.all@ietf.org>, netconf@ietf.org <netconf@ietf.org>
Subject: Re: [netconf] AD review of draft-ietf-netconf-tls-client-server-33
Hi Rob,

Thank you for your review.
Please see below for responses to your comments.

Kent // author



On Jun 28, 2023, at 9:09 AM, Rob Wilton (rwilton) <rwilton=40cisco.com@dmarc.ietf.org> wrote:

Hi Kent,

Here is my AD review of draft-ietf-netconf-tls-client-server-33

This is another well written document, thank you.  The comments from my review are:

Moderate level comments:

(1) p 3, sec 1.  Introduction

  Any version of TLS may be configured.  TLS 1.0 [RFC2246] and TLS 1.1
  [RFC4346] are historic and hence the YANG "feature" statements
  enabling them are marked "status obsolete".  TLS 1.2 [RFC5246] is
  obsoleted by TLS 1.3 [RFC8446] but still in common use, and hence its
  "feature" statement is marked "status deprecated".  All the feature
  statements for 1.0, 1.1, and 1.3 have "description" statements
  stating that it is NOT RECOMMENDED to enable obsolete protocol
  versions.

s/and 1.3/and 1.2/?

Good catch!
Fixed in my local copy.



In the context of this paragraph, it is worth noting that draft-ietf-netmod-yang-module-versioning refines the meaning of deprecated and obsolete (depending on whether that document progresses).  I.e., from that document the expectation is that implementations would implement deprecated nodes or explicitly deviate not-support them, and must not implement obsolete nodes.  One of the reasons for this approach is to ensure that the client can understand always build the exact schema used by the server without ambiguity over deprecated/obsolete nodes.

ACK.  And I do mean these values per that understanding.



Hence, I think that there is perhaps a general question as to whether we should be supporting TLS 1.0 or TLS 1.1 at all in this model?  I did briefly ask the SEC ADs yesterday.  Only one responded indicating that they would prefer if it wasn't present (but also said that he probably wouldn't DISCUSS on this if they were included).  Do we know if there are likely use cases that still need TLS 1.0 or TLS 1.1 to justify keeping them in?

No valid use-cases that I’m aware of.   Invalid use cases include 1.0/1.1 are still is use, but that doesn’t mean our YANG has to carry that debt forward.   The tls10/tls11 feature/identity statements are not used by any other YANG (unlike the tls12/tls13 statements).

I recommend removing the  tls10/tls11 feature/identity statements from the YANG, and remove the text above about them being NOT RECOMMENDED.

I think that you should just remove them from the model/draft, and only support TLS 1.2 onwards.


(2) p 17, sec 2.3.  YANG Module

        leaf bits {
          type uint16;
          description
            "Specifies the number of bits in the key to create.
             For RSA keys, the minimum size is 1024 bits and
             the default is 3072 bits. Generally, 3072 bits is
             considered sufficient. DSA keys must be exactly 1024
             bits as specified by FIPS 186-2.  For elliptical
             keys, the 'bits' value determines the key length
             of the curve (e.g., 256, 384 or 521), where valid
             values supported by the server are conveyed via an
             unspecified mechanism.  For some public algorithms,
             the keys have a fixed length and the 'bits' value,
             if specified, will be ignored.";
        }

Wouldn't it be safer to fail the RPC request rather than ignore an incorrect bits value?

Indeed.

I had made this change already when responding to your same comment for the SSH draft.

Thanks.


(3) p 17, sec 2.3.  YANG Module

        choice private-key-encoding {
          default cleartext;
          description
            "A choice amongst optional private key handling.";
          case cleartext {
            if-feature "ct:cleartext-private-keys";
            leaf cleartext {
              type empty;
              description
                "Indicates that the private key is to be returned
                 as a cleartext value.";
            }
          }

I was wondering whether it makes sense to have a default value referencing a case that is conditional on if-feature?  From a quick look at RFC 7950, the behaviour seems to be unspecified in the case that the feature is not supported.

I also note that the 'private-key-encoding' doesn't turn up in the instance data (because it is a choice), so reading the XML doesn't make it obvious that it is the private key that is encoded.  Hence, might it be helpful to include a private-key-encoding container?

To your first point, good catch!   By way of explanation, the “cleartext-private-key” feature was a recent addition, so the default was valid before.  Nonetheless, I’ve removed the default and made the choice “mandatory true”.  Interestingly this was already the case in the SSH draft, which surprised me as I do try to keep them consistent.

To your second point, I had made this change already when responding to your same comment for the SSH draft.


Thanks.


(4) p 33, sec 3.3.  YANG Module

              leaf target-protocol {
                type uint16;
                description
                  "As per Section 3.1 of I-D.
                   ietf-tls-external-psk-guidance:
                   The protocol for which a PSK is imported for use.";
                reference
                  "I-D.ietf-tls-external-psk-importer:
                             Importing External PSKs for TLS";
              }

It wasn't clear to me exactly what the target-protocol value looks like here, i.e., where to find the list of allowed values.

Firstly, note that different drafts are listed in the “description” and the “reference” sections.  The correct draft is the one listed in the “reference” section, now RFC 9258.  I fixed this oversight after confirming with Jeff, my co-author, who wrote this section.

Next, for what it should look like, note that both examples in Section 4.2 (in the tls-client-server draft) include the line: `            <target-protocol>8443</target-protocol>`.   Jeff tells me that, though they look like port numbers, these a valid values...

Okay.

(5) p 67, sec Appendix A.  YANG Modules for IANA

  Following are the complete contents to the initial IANA-maintained
  YANG module.  Please note that the date "2022-06-16" reflects the day
  on which the extraction occurred.

As per my comments on the SSH draft, I wonder whether including this copy in this document is actually helpful, or just means that it is more likely that someone could end up using an outdated version rather than getting the latest version from IANA.  I.e., perhaps include is for now, but ask the RFC editor to remove it at publication (at which point IANA should generate a current version).

It also means that this document ends up with a lot of normative references, which although not necessarily a problem, I wonder how useful/meaningful they really are.

I’m sympathetic to the concern of including initial versions of the to-be IANA-maintained modules, as they will quickly be out of date.  I’m happy to remove them, from this draft as well as from the ssh-client-server draft, but I’m unwilling to include the scripts used to generate these YANG modules, or even share them with IANA, unless they have a bash-developer on staff.

That being said, what to do?   Can we just have a note to the RFC Editor to remove these YANG modules?

My suggestion is that we keep them in for now, and perhaps flag an IANA/RFC editor comment to see if they have a preference on what to do (and include a note that if they do remove them then the list of normative references could probably be shortened significantly).

In the generated module, some of the initial cipher entries are obsolete.  Would it be better for those to always be excluded from the initial list of identities?  Many cipher entries are also deprecated.  Will the YANG status deprecated be sufficient to warn users that these are deprecated?  E.g., the description could also flag that they are deprecated and SHOULD NOT be used (if that is appropriate)?

IDK what’s best, but will say that the underlying IANA registry continues to list the entries marked “obsolete” in the YANG module.


IIRC, there is a difference as to what deprecated means in YANG vs what it means for security ciphers.  I think that I will need to flag this up with the SEC ADs during the IESG review.  I suspect that probably marking deprecated cipher entries in YANG as deprecated, and also as “SHOULD NOT” use in the description is probably the right thing to do.




Note, I have not checked the generated list of identities in detail (but can review the generating script if that is helpful).

I’ve attached the latest version of the script used to create the IANA module.

Okay, thanks.  I took a quick look, but it looks like it has data paste into the script rather than always pulling it from IANA or the Datatracker.  Hence, I can understand why this script was useful for you initially generating it, but probably isn’t useful to IANA going forward.  I think that IANA having a script here would be most useful for ensuring that the generated file is right though …. Not a problem that you need to solve here and now though.



Minor level comments:

(6) p 4, sec 1.  Introduction

Please also mention the YANG modules defined from IANA registries that this document creates.

Done!




(7) p 16, sec 2.3.  YANG Module

    grouping hello-params-grouping {
      description
        "A reusable grouping for TLS hello message parameters.";
      reference
        "RFC 5246: The Transport Layer Security (TLS) Protocol
                   Version 1.2
         RFC 8446: The Transport Layer Security (TLS) Protocol
                   Version 1.3";
      container tls-versions {
        description
          "Parameters regarding TLS versions.";
        leaf-list tls-version {
          type identityref {
            base tls-version-base;
          }
          description
            "Acceptable TLS protocol versions.

Presumably this does not need to be ordered-by user because the later versions are always preferable over older versions?

Good catch, RFC 8446 says that they’re in “preference order”.
Added an "ordered-by user” statement here.



(8) p 19, sec 3.1.2.1.  The "tls-client-grouping" Grouping

  The following tree diagram [RFC8340] illustrates the "tls-client-
  grouping" grouping:

I note that for the common module grouping you provide both unexpanded and expanded tree diagrams for the groupings, but for the client and server modules you only provide the unexpanded grouping.  Is this just because of the length of the expanded grouping tree-diagrams?  If they are too long, then would it be helpful to perhaps included them in an appendix?

I have removed the “expanded” tree diagrams, for the “common” modules, in both this and the SSH draft.

Yes, the tree diagrams are huge.  With all of the line-wrapping, they are not useful to include in the Appendix.

Ack.  I also think that folks working with YANG will effectively need to know how to generate them anyway.




(9) p 20, sec 3.1.2.1.  The "tls-client-grouping" Grouping

      |  +-- ca-certs! {server-auth-x509-cert}?
      |  |  +---u ts:inline-or-truststore-certs-grouping
      |  +-- ee-certs! {server-auth-x509-cert}?
      |  |  +---u ts:inline-or-truststore-certs-grouping

Not a crypto expert, so this may be a daft question, but I noted that both ca-certs and ee-certs use the same if-feature statement (also in the server model).  Is it always expected to be the case that if an implementation supports ca-certs then it would also support ee-certs?

Certainly possible.  It's not difficult to implement support for both if doing one of them already.  Of course, a consuming module can always augment in another if-feature statement to disable one, in case both aren’t supported.

Ack, okay.


(10) p 21, sec 3.1.2.1.  The "tls-client-grouping" Grouping

  *  The "server-authentication" node configures trust anchors for
     authenticating the TLS server, with each option enabled by a
     "feature" statement.

As per my previous comment, I just wanted to highlight that two of the options are enabled by the same feature statement, which might be okay.

Ack.  See above.



(11) p 21, sec 3.1.3.  Protocol-accessible Nodes

  The "ietf-tls-client" module defines only "grouping" statements that
  are used by other modules to instantiate protocol-accessible nodes.

Flagging as per previous comments on the other drafts, is this section needed/helpful, or should it be elided?

I’m sure that you have noticed these drafts have a similar structure.  So much so that I once mentioned to Juergen that it would be a cool student project to write an “YANG-to-RFC” generator to do the heavy lifting.  Part of this structure is that there exists a section called “Protocol-accessible Nodes”.  In my view, the section should always exist because it makes it explicit (not a “gap” that has to be discovered).

However, I agree that the quoted text doesn’t seem to convey the right sentiment.  Fortunately, I found in the TCP draft an additional sentence being used that resolves the issue for me.  The additional sentence is:

"Thus this module, when implemented, does not itself define any protocol-accessible nodes.”

I’ve updated all the drafts to include this second sentence.

Okay,  thanks.

(12) p 32, sec 3.3.  YANG Module

              leaf hash {
                type tlscmn:epsk-supported-hash;
                 mandatory true;
                description
                  "As per Section 4.2.11 of RFC 8446, for externally
                   established PSKs, the Hash algorithm MUST be set
                   when the PSK is established or default to SHA-256
                   if no such algorithm is defined.  The server MUST
                   ensure that it selects a compatible PSK (if any)
                   and cipher suite.  Each PSK MUST only be used with
                   a single hash function.";
                reference
                  "RFC 8446: The Transport Layer Security (TLS)
                             Protocol Version 1.3";

I note that the description indicates that it should default to SHA-256, but this leaf is marked as mandatory with no default set instead?

Jeff Hartley wrote this section, but I agree with your analysis.
I’ve replaced the "mandatory true” with a “default sha-256"

Thanks.


(13) p 33, sec 3.3.  YANG Module

              leaf target-kdf {
                type uint16;
                description
                  "As per Section 3.1 of I-D.
                   ietf-tls-external-psk-guidance:
                   The specific Key Derivation Function (KDF) for which
                   a PSK is imported for use.";
                reference
                  "I-D.ietf-tls-external-psk-importer:
                             Importing External PSKs for TLS";
              }

For these two, draft ietf-tls-external-psk-guidance has no section 3.1, were these two descriptions (for target-protocol and target-kdf) meant to be referring to section 3.1 of ietf-tls-external-psk-importer instead?

Fixed via another one of your comments.
The “description” was supposed to say “ietf-tls-external-psk-importer” (now RFC 9258).

Thanks.


(14) p 46, sec 4.3.  YANG Module

    feature server-ident-tls12-psk {
      description
        "Indicates that the server supports identifying itself
         using TLS-1.2 PSKs (pre-shared or pairwise-symmetric keys).";
      reference
        "RFC 4279:
           Pre-Shared Key Ciphersuites for Transport Layer Security
           (TLS)";
    }

Would it make sense for this feature to be conditional on the tls12 feature in the common module?

Done.

(15) p 46, sec 4.3.  YANG Module

    feature server-ident-tls13-epsk {
      description
        "Indicates that the server supports identifying itself
         using TLS-1.3 External PSKs (pre-shared keys).";
      reference
        "RFC 8446:
           The Transport Layer Security (TLS) Protocol Version 1.3";
    }

Would it make sense for this feature to be conditional on the tls13 feature in the common module?

Done.



(16) p 47, sec 4.3.  YANG Module

    feature client-auth-tls12-psk {
      description
        "Indicates that the server supports authenticating clients
         using PSKs (pre-shared or pairwise-symmetric keys).";
      reference
        "RFC 4279:
           Pre-Shared Key Ciphersuites for Transport Layer Security
           (TLS)";
    }

Would it make sense for this feature to be conditional on the tls12 feature in the common module?

Done.



(17) p 47, sec 4.3.  YANG Module

    feature client-auth-tls13-epsk {
      description
        "Indicates that the server supports authenticating clients
         using TLS-1.3 External PSKs (pre-shared keys).";
      reference
        "RFC 8446:
           The Transport Layer Security (TLS) Protocol Version 1.3";
    }

Would it make sense for this feature to be conditional on the tls13 feature in the common module?

Done.



(18) p 49, sec 4.3.  YANG Module

              leaf id_hint {
                type string;
                description
                  "The key 'psk_identity_hint' value used in the TLS
                   'ServerKeyExchange' message.";
                reference
                  "RFC 4279: Pre-Shared Key Ciphersuites for
                             Transport Layer Security (TLS)";
              }

Would id-hint be better that id_hint for consistency with how we generally see YANG identifiers?

Indeed.   (This stanza was from Jeff)


Thanks.


(19) p 51, sec 4.3.  YANG Module

              leaf target-protocol {
                type uint16;
                description
                  "As per Section 3.1 of I-D.
                   ietf-tls-external-psk-guidance: The protocol
                   for which a PSK is imported for use.";
                reference
                  "I-D.ietf-tls-external-psk-importer:
                             Importing External PSKs for TLS";
              }
              leaf target-kdf {
                type uint16;
                description
                  "As per Section 3.1 of I-D.
                   ietf-tls-external-psk-guidance: The specific Key
                   Derivation Function (KDF) for which a PSK is
                   imported for use.";
                reference
                  "I-D.ietf-tls-external-psk-importer:
                             Importing External PSKs for TLS";
              }

Same question as previously asked about whether section 3.1 and ietf-tls-external-psk-guidance is the correct reference here.

Same answer, the draft in the “description” statement was wrong (fixed now).



(20) p 55, sec 5.1.  The "iana-tls-cipher-suite-algs" Module

  YANG identities are not security-sensitive, as they are statically
  defined in the publicly-accessible YANG module.

Is it worth adding any text to highlight that these identities represent algorithms that may be deprecated or obsoleted for security reasons?  I.e., these identities feel a bit different than the usual kind.

Added the sentence:

  "IANA MAY deprecate and/or obsolete identities over time as needed to address security issues found in the algorithms."

To both this and the SSH draft.

Thanks.


(21) p 59, sec 6.3.  The "iana-tls-cipher-suite-algs" Module

  *  Please note that this module was created on June 16th, 2022, and
     that additional entries may have been added in the interim before
     this document's publication.  If this is that case, IANA may
     either publish just an updated module containing the new entries,
     or publish the initial module as is immediately followed by a
     "revision" containing the additional algorithm names.

As per comments below, I propose that IANA just publishes the initial version at the point that this document becomes an RFC.

What is your desired text-update?

My proposal is to mark these sections to be removed by the RFC Editor…

Highlighting them to IANA and RFC editor is fine for now.  We will then figure out if they need to stay in the RFC or can be elided at publication time.


(22) p 65, sec Appendix A.  YANG Modules for IANA

  The module contained in this section was generated by scripts using
  the contents of the associated sub-registry as they existed on June
  16th, 2022.

I presume that these scripts will be available and owned by IANA?

No, they’re useless to non-programmers.  See previous comment.


Agreed.


Nit level comments:

(23) p 9, sec 2.1.4.  Protocol-accessible Nodes

         |     |     +---w (encrypted-by-choice)
         |     |        +--:(symmetric-key-ref)
         |     |        |        {central-keystore-supported,symmetric\
  -keys}?
         |     |        |  +---w symmetric-key-ref?
         |     |        |          ks:symmetric-key-ref
         |     |        +--:(asymmetric-key-ref)
         |     |                 {central-keystore-supported,asymmetri\
  c-keys}?
         |     |           +---w asymmetric-key-ref?

For readability, perhaps worth asking the RFC editor to manually fold the symmetric-keys and asymmetric-keys features onto a new line rather than relying on RFC 8792?

I added the following text to each draft’s “Note to RFC Editor” section:


Tree-diagrams in this draft may use the '/' line-folding mode defined in RFC 8792.

However, nicer-to-the-eye is when the '//' line-folding mode is used.  The AD suggested

suggested putting a request here for the RFC Editor to help convert "ugly" '/' folded

examples to use the '//' folding mode.  "Help convert" may be interpreted as, identify

what looks ugly and ask the authors to make the adjustment.

Good?


I think that I’ve answered this a couple of weeks ago, that I wasn’t really suggesting the // mode as much as just manually changing the indentation of the tree diagrams to make them more readable.  I.e., I don’t think that tree diagrams in RFCs need to be machine readable code.


(24) p 13, sec 2.3.  YANG Module

    feature tls12 {
      status "deprecated";
      description
        "TLS Protocol Version 1.2 is supported  TLS 1.2 is obsolete
         and thus it is NOT RECOMMENDED to enable this feature.";
      reference
        "RFC 5246: The Transport Layer Security (TLS) Protocol
                   Version 1.2";
    }

s/supported  TLS/supported.  TLS/

Fixed - thx!



(25) p 15, sec 2.3.  YANG Module

    identity tls13 {
      if-feature "tls13";
      base tls-version-base;
      description
        "TLS Protocol Version 1.3.";
      reference
        "RFC 8446: The Transport Layer Security (TLS)
                   Protocol Version 1.3";
    }

Do you want a "     // Typedefs" since this isn't an identity?

Indeed yes - added!



(26) p 29, sec 3.3.  YANG Module

      container client-identity {
        nacm:default-deny-write;
        presence
          "Indicates that a TLS-level client identity has been
           configured.  This statement is present so the mandatory
           descendant do not imply that this node must be configured.";
        description
          "Identity credentials the TLS client MAY present when
           establishing a connection to a TLS server.  If not
           configured, then client authentication is presumed to
           occur a protocol layer above TLS.  When configured,
           and requested by the TLS server when establishing a

s/occur a protocol layer/occur in a protocol layer/

Fixed - thx!



(27) p 35, sec 3.3.  YANG Module

          description
            "Indicates that the TLS client can authenticate TLS servers
             using configure PSKs (pre-shared or pairwise-symmetric
             keys).

s/configure/configured/?

Yes indeed - fixed!



(28) p 39, sec 4.1.2.1.  The "tls-server-grouping" Grouping

  *  The "keepalives" node, which must be enabled by a feature,
     configures a flag enabling the TLS client to test the aliveness of
     the TLS server, as well as a "presence" container for testing the
     aliveness of the TLSi client.  The aliveness-tests occurs at the
     TLS protocol layer.

s/TLSi/TLS/?

Fixed!  Thank you!



Regards,
Rob

PS: “fixed” in this message means “fixed in my local copy”.  I will
publish all of the drafts to Datatracker together once I've responded
to your comments to the last three drafts (http, netconf, and restconf).

Thanks for all the updates,
Rob

Cheers,
Kent  // author