idnits 2.17.1 draft-moskowitz-drip-secure-nrid-c2-04.txt: -(8): Line appears to be too long, but this could be caused by non-ascii characters in UTF-8 encoding Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- == There are 3 instances of lines with non-ascii characters in the document. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (21 October 2021) is 915 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) No issues found here. Summary: 0 errors (**), 0 flaws (~~), 2 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 DRIP R. Moskowitz 3 Internet-Draft HTT Consulting 4 Intended status: Standards Track S. Card 5 Expires: 24 April 2022 A. Wiethuechter 6 AX Enterprize 7 A. Gurtov 8 Linköping University 9 21 October 2021 11 Secure UAS Network RID and C2 Transport 12 draft-moskowitz-drip-secure-nrid-c2-04 14 Abstract 16 This document provides the mechanisms for secure transport of 17 Unmanned Aircraft System (UAS) Network Remote ID (N-RID) and Command- 18 and-Control (C2) messaging. Both HIP and DTLS based methods are 19 described. 21 Status of This Memo 23 This Internet-Draft is submitted in full conformance with the 24 provisions of BCP 78 and BCP 79. 26 Internet-Drafts are working documents of the Internet Engineering 27 Task Force (IETF). Note that other groups may also distribute 28 working documents as Internet-Drafts. The list of current Internet- 29 Drafts is at https://datatracker.ietf.org/drafts/current/. 31 Internet-Drafts are draft documents valid for a maximum of six months 32 and may be updated, replaced, or obsoleted by other documents at any 33 time. It is inappropriate to use Internet-Drafts as reference 34 material or to cite them other than as "work in progress." 36 This Internet-Draft will expire on 24 April 2022. 38 Copyright Notice 40 Copyright (c) 2021 IETF Trust and the persons identified as the 41 document authors. All rights reserved. 43 This document is subject to BCP 78 and the IETF Trust's Legal 44 Provisions Relating to IETF Documents (https://trustee.ietf.org/ 45 license-info) in effect on the date of publication of this document. 46 Please review these documents carefully, as they describe your rights 47 and restrictions with respect to this document. Code Components 48 extracted from this document must include Simplified BSD License text 49 as described in Section 4.e of the Trust Legal Provisions and are 50 provided without warranty as described in the Simplified BSD License. 52 Table of Contents 54 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 55 2. Terms and Definitions . . . . . . . . . . . . . . . . . . . . 3 56 2.1. Requirements Terminology . . . . . . . . . . . . . . . . 3 57 2.2. Definitions . . . . . . . . . . . . . . . . . . . . . . . 3 58 3. Network Remote ID . . . . . . . . . . . . . . . . . . . . . . 3 59 3.1. Network RID endpoints . . . . . . . . . . . . . . . . . . 4 60 3.1.1. N-RID from the UA . . . . . . . . . . . . . . . . . . 4 61 3.1.2. N-RID from the GCS . . . . . . . . . . . . . . . . . 5 62 3.1.3. N-RID from the Operator . . . . . . . . . . . . . . . 5 63 3.2. UAS Identity . . . . . . . . . . . . . . . . . . . . . . 5 64 4. Command and Control . . . . . . . . . . . . . . . . . . . . . 5 65 4.1. Securing MAVLink . . . . . . . . . . . . . . . . . . . . 6 66 5. Secure Transports . . . . . . . . . . . . . . . . . . . . . . 6 67 5.1. HIPv2 for Secure Transport . . . . . . . . . . . . . . . 6 68 5.2. DTLS for Secure Transport . . . . . . . . . . . . . . . . 7 69 5.3. Ciphers for Secure Transport . . . . . . . . . . . . . . 7 70 5.4. HIP and DTLS contrasted and compared . . . . . . . . . . 7 71 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8 72 7. Security Considerations . . . . . . . . . . . . . . . . . . . 8 73 8. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 9 74 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 9 75 9.1. Normative References . . . . . . . . . . . . . . . . . . 9 76 9.2. Informative References . . . . . . . . . . . . . . . . . 9 77 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 11 79 1. Introduction 81 This document defines mechanisms to provide secure transport for 82 Unmanned Aircraft System (UAS) ASTM Network Remote ID [F3411-19] 83 (N-RID) and Command and Control (C2) messaging. 85 A secure end-to-end transport for C2 is critical for UAS especially 86 for Beyond Line of Sight (BLOS) operations. It needs to provide data 87 confidentiality, integrity, and authenticity (CIA). Depending on the 88 underlying network technology, this secure transport may need to 89 manage IP address changes (IP mobility) for both the UA and GCS. 91 A secure end-to-end transport for N-RID (UAS to Network RID Service 92 Provider (Net-RID SP)) also should provide full CIA. It may seem 93 that confidentiality is optional, as most of the information in N-RID 94 is sent in the clear in Broadcast Remote ID (B-RID), but this is a 95 potentially flawed analysis. N-RID has evesdropping risks not in 96 B-RID and may contain more sensitive information than B-RID. The 97 secure transport for N-RID should only need to manage IP address 98 changes (IP mobility) for the UAS. 100 Two options for secure transport are provided: HIPv2 [RFC7401] and 101 DTLS 1.3 [DTLS-1.3-draft]. These options are generally defined and 102 their applicability is compared and contrasted. It is up to N-RID 103 and C2 to select which is preferred for their situation. 105 2. Terms and Definitions 107 2.1. Requirements Terminology 109 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 110 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 111 "OPTIONAL" in this document are to be interpreted as described in BCP 112 14 [RFC2119] [RFC8174] when, and only when, they appear in all 113 capitals, as shown here. 115 2.2. Definitions 117 This document uses the terms defined in [drip-requirements]. The 118 following new terms are used in the document: 120 B-RID 121 Broadcast Remote ID. A method of sending RID messages as 1-way 122 transmissions from the UA to any Observers within radio range. 124 N-RID 125 Network Remote ID. A method of sending RID messages via the 126 Internet connection of the UAS directly to the UTM. 128 RID 129 Remote ID. A unique identifier found on all UA to be used in 130 communication and in regulation of UA operation. 132 3. Network Remote ID 134 The purpose/goal of Network Remote ID (N-RID) is to provide the UAS 135 Traffic Management (UTM) UA situational awareness. The data needed 136 for this is already defined in [F3411-19], but a standard message 137 format, protocol, and secure communications methodology are missing. 138 This document will provide such an open standard. 140 The Broadcast Remote ID (B-RID) messages in [F3411-19] are sufficient 141 to meet the needs of N-RID. In particular, the Message Pack (Msg 142 Type 0xF) is well suited, as this single message can send all the 143 needed information. Further, a UAS supporting B-RID will have 144 minimal development to add N-RID support. 146 This approach has the added advantage of being very compact, 147 minimizing the N-RID communications cost. 149 3.1. Network RID endpoints 151 The FAA defines the Network Remote ID endpoints as a USS Network 152 Service Provider (Net-RID SP) and the UAS. Both of these are rather 153 nebulous items and what they actually are will impact how 154 communications flow between them. 156 The Net-RID SP may be provided by the same entity serving as the UAS 157 Service Provider (USS). This simplifies a number of aspects of the 158 N-RID communication flow. An Operator is expected to register an 159 operation with the USS. If this is done via the GCS and the GCS is 160 the source (directly acting as a gateway), this could set up the 161 secure connection for N-RID. The Net-RID SP is likely to be stable 162 in the network, that is its IP address will not change during a 163 mission. This simplifies maintaining the N-RID communications. 165 The UAS component in N-RID may be either the UA, GCS, or the 166 Operator's Internet connected device (e.g. smartphone or tablet). In 167 all cases, mobility MUST be assumed. That is the IP address of this 168 end of the N-RID communication will change during an operation. The 169 N-RID mechanism MUST support this. The UAS Identity for the secure 170 connection may vary based on the UAS endpoint. 172 3.1.1. N-RID from the UA 174 Some UA will be equipped with direct Internet access. These UA will 175 also tend to have multiple radios for their Internet access (e.g. 176 Cellular and WiFi). Thus multi-homing with "make before break" 177 behavior is needed. This is on top of any IP address changes on any 178 of the interfaces while in use. 180 3.1.2. N-RID from the GCS 182 Many UA will lack direct Internet access, but their GCS may be so 183 connected. There are two sources for the GCS for the RID messages, 184 both from the UA. These are UA B-RID messages, or content from C2 185 messages that the GCS converts to RID message format. In either 186 case, the GCS may be mobile with changing IP addresses. The GCS may 187 be in a fast moving ground device (e.g. delivery van), so it can have 188 as mobility demanding connection needs as the UA. 190 3.1.3. N-RID from the Operator 192 Many UAS will have no Internet connectivity, but the UA is sending 193 B-RID messages and the Operator has an Internet Connected device that 194 is receiving these B-RID messages. The Operator's device can act as 195 the proxy for these messages, turning them into N-RID messages. 197 3.2. UAS Identity 199 The UA MAY use its RID if it is a HHIT [drip-uas-rid]. It may use 200 some other Identity, based on the Net-RID SP policy. 202 The GCS or Operator smart device may have a copy of the UA 203 credentials and use them in the connection to the Net-RID SP. In 204 this case, they are indistinguishable from the UA as seen from the 205 Net-RID SP. Alternatively, they may use their own credentials with 206 the Net-RID SP which would need some internal mechanism to tie that 207 to the UA. 209 4. Command and Control 211 The Command and Control (C2) connection is between the UA and GCS. 212 This is often this over a direct link radio. Some times, 213 particularly for BLOS, it is via Internet connections. In either 214 case C2 SHOULD be secure from eavesdropping and tampering. For 215 design and implementation consistency it is best to treat the direct 216 link as a local link Internet connection and use constrained 217 networking compression standards. 219 Both the UA and GCS need to be treated as fully mobile in the IP 220 networking sense. Either one can have its IP address change and both 221 could change at the same time (the double jump problem). It is 222 preferable to use a peer-to-peer (P2P) secure technology like HIPv2 223 [RFC7401]. 225 Finally UA may also tend to have multiple radios for their C2 226 communications. Thus multi-homing with "make before break" behavior 227 is needed. This is on top of any IP address changes on any of the 228 interfaces while in use. 230 4.1. Securing MAVLink 232 MAVLink [MAVLINK] is a commonly used protocol for C2. Message 233 authenticity was added in MAVLink 2 in the form of a SHA-256 (secret 234 + message hash) left-truncated to 6 byte. This does not follow HMAC 235 [RFC2104] security recommendations, nor provides confidentiality. 237 By following the security approach here, UAS C2 is superior to that 238 currently provided within MAVlink. 240 5. Secure Transports 242 The raw N-RID and C2 messages will be wrapped in UDP. These UDP 243 packets will either be transported in ESP for the HIPv2 approach or 244 DTLS application messages for DTLS. In both cases header compression 245 technologies SHOULD be used and negotiated based on policy. 247 For IPv6 over both WiFi and Bluetooth (or any other radio link), 248 Robust Header Compression (ROHC) [RFC5795] and/or Generic Header 249 Compression (6LoWAN-HGC) [RFC7400] can significantly reduce the per 250 packet transmission cost of IPv6. For Bluetooth, there is also IPv6 251 over Bluetooth LE [RFC7668] for more guidance. 253 Local link (direct radio) C2 security is possible with the link's MAC 254 layer security. Both WiFi and Bluetooth link security can provide 255 appropriate security, but this would not provide trustworthy multi- 256 homed security. 258 5.1. HIPv2 for Secure Transport 260 HIP has already been used for C2 mobility, managing the ongoing 261 connectivity over WiFi at start of an operation, switching to LTE 262 once out of WiFi range, and returning to WiFi connectivity at the end 263 of the operation. This functionality is especially important for 264 BLOS. HHITs are already defined for RID, and need only be added to 265 the GCS via a GCS Registration as part of the UAS to USS registration 266 to be usedfor C2 HIP. 268 When the UA is the UAS endpoint for N-RID, and particularly when HIP 269 is used for C2, HIP for N-RID simplifies protocol use on the UA. The 270 Net-RID SP endpoint may already support HIP if it is also the HHIT 271 Registrar. If the UA lacks any IP ability and the RID HHIT 272 registration was done via the GCS or Operator device, then they may 273 also be set for using HIP for N-RID. 275 Further, double jump and multi-homing support is mandatory for C2 276 mobility. This is inherent in the HIP design. The HIP address 277 update can be improved with [hip-fast-mobility]. 279 5.2. DTLS for Secure Transport 281 DTLS is a good fit for N-RID for any of the possible UAS endpoints. 282 There are challenges in using it for C2. To use DTLS for C2, the GCS 283 will need to be the DTLS server. How does it 'push' commands to the 284 UA? How does it reestablish DTLS security if state is lost? And 285 finally, how is the double jump scenario handled? 287 All the above DTLS for C2 probably have solutions. None of them are 288 inherent in the DTLS design. 290 5.3. Ciphers for Secure Transport 292 The cipher choice for either HIP or DTLS depends, in large measure, 293 on the UAS endpoint. If the endpoint is computationally constrained, 294 the cipher computations become important. If any of the links are 295 constrained or expensive, then the over-the-wire cost needs to be 296 minimized. AES-CCM and AES-GCM are the preferred, modern, AEAD 297 ciphers. 299 For ESP with HIP [RFC7402], an additional 4 - 8 bytes can be trimmed 300 by using the Implicit IV for ESP option [RFC8750]. 302 NIST is working on selecting a new lightweight cipher that may be the 303 best choice for use on a UA. The Keccak Xoodyak cipher in 304 [new-crypto] is a good "Green Cipher". 306 5.4. HIP and DTLS contrasted and compared 308 This document specifies the use of DTLS 1.3 for its 0-RTT mobility 309 feature and improved (over 1.2) handshake. DTLS 1.3 is still an IETF 310 draft, so there is little data available to properly contrast it with 311 HIPv2. This section will be based on the current DTLS 1.2. The 312 basic client-server model is unchanged. 314 The use of DTLS vs HIPv2 (both over UDP, HIP in IPsec ESP BEET mode) 315 has pros and cons. DTLS is currently at version 1.2 and based on TLS 316 1.2. It is a more common protocol than HIP, with many different 317 implementations available for various platforms and languages. 319 DTLS implements a client-server model, where the client initiates the 320 communication. In HIP, two parties are equal and either can be an 321 Initiator or Responder of the Base Exchange. HIP provides separation 322 between key management (base exchange) and secure transport (for 323 example IPsec ESP BEET) while both parts are tightly coupled in DTLS. 325 DTLS 1.2 still has quite chatty connection establishment taking 3-5 326 RTTs and 15 packets. HIP connection establishment requires 4 packets 327 (I1,R1,I2,R2) over 2 RTTs. This is beneficial for constrained 328 environments of UAs. HIPv2 supports cryptoagility with possibility 329 to negotiate cryptography mechanisms during the Base Exchange. 331 Both DTLS and HIP support mobility with a change of IP address. 332 However, in DTLS only client mobility is well supported, while in HIP 333 either party can be mobile. The double-jump problem (simultaneous 334 mobility) is supported in HIP with a help of Rendezvous Server (RVS) 335 [RFC8004]. HIP can implement secure mobility with IP source address 336 validation in 2 RTTs, and in 1 RTT with fast mobility extension. 338 One study comparing DTLS and IPsec-ESP performance concluded that 339 DTLS is recommended for memory-constrained applications while IPSec- 340 ESP for battery power-constrained [Vignesh]. 342 6. IANA Considerations 344 TBD 346 7. Security Considerations 348 Designing secure transports is challenging. Where possible, existing 349 technologies SHOULD be used. Both ESP and DTLS have stood "the test 350 of time" against many attack scenarios. Their use here for N-RID and 351 C2 do not represent new uses, but rather variants on existing 352 depoyments. 354 The same can be said for both key establishment, using HIPv2 and 355 DTLS, and the actual cipher choice for per packet encryption and 356 authentication. N-RID and C2 do not present new challenges, rather 357 new opportunities to provide communications security using well 358 researched technologies. 360 8. Acknowledgments 362 Stuart Card and Adam Wiethuechter provivded information on their use 363 of HIP for C2 at the Syracuse NY UAS test corridor. This, in large 364 measure, was the impetus to develop this document. 366 9. References 368 9.1. Normative References 370 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 371 Requirement Levels", BCP 14, RFC 2119, 372 DOI 10.17487/RFC2119, March 1997, 373 . 375 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 376 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 377 May 2017, . 379 9.2. Informative References 381 [drip-requirements] 382 Card, S. W., Wiethuechter, A., Moskowitz, R., and A. 383 Gurtov, "Drone Remote Identification Protocol (DRIP) 384 Requirements", Work in Progress, Internet-Draft, draft- 385 ietf-drip-reqs-18, 8 September 2021, 386 . 389 [drip-uas-rid] 390 Moskowitz, R., Card, S. W., Wiethuechter, A., and A. 391 Gurtov, "DRIP Entity Tag (DET) for Unmanned Aircraft 392 System Remote Identification (UAS RID)", Work in Progress, 393 Internet-Draft, draft-ietf-drip-rid-11, 20 October 2021, 394 . 397 [DTLS-1.3-draft] 398 Rescorla, E., Tschofenig, H., and N. Modadugu, "The 399 Datagram Transport Layer Security (DTLS) Protocol Version 400 1.3", Work in Progress, Internet-Draft, draft-ietf-tls- 401 dtls13-43, 30 April 2021, 402 . 405 [F3411-19] ASTM International, "Standard Specification for Remote ID 406 and Tracking", February 2020, 407 . 409 [hip-fast-mobility] 410 Moskowitz, R., Card, S. W., and A. Wiethuechter, "Fast HIP 411 Host Mobility", Work in Progress, Internet-Draft, draft- 412 moskowitz-hip-fast-mobility-03, 3 April 2020, 413 . 416 [MAVLINK] "Micro Air Vehicle Communication Protocol", 2021, 417 . 419 [new-crypto] 420 Moskowitz, R., Card, S. W., and A. Wiethuechter, "New 421 Cryptographic Algorithms for HIP", Work in Progress, 422 Internet-Draft, draft-moskowitz-hip-new-crypto-10, 2 423 August 2021, . 426 [RFC2104] Krawczyk, H., Bellare, M., and R. Canetti, "HMAC: Keyed- 427 Hashing for Message Authentication", RFC 2104, 428 DOI 10.17487/RFC2104, February 1997, 429 . 431 [RFC5795] Sandlund, K., Pelletier, G., and L-E. Jonsson, "The RObust 432 Header Compression (ROHC) Framework", RFC 5795, 433 DOI 10.17487/RFC5795, March 2010, 434 . 436 [RFC7400] Bormann, C., "6LoWPAN-GHC: Generic Header Compression for 437 IPv6 over Low-Power Wireless Personal Area Networks 438 (6LoWPANs)", RFC 7400, DOI 10.17487/RFC7400, November 439 2014, . 441 [RFC7401] Moskowitz, R., Ed., Heer, T., Jokela, P., and T. 442 Henderson, "Host Identity Protocol Version 2 (HIPv2)", 443 RFC 7401, DOI 10.17487/RFC7401, April 2015, 444 . 446 [RFC7402] Jokela, P., Moskowitz, R., and J. Melen, "Using the 447 Encapsulating Security Payload (ESP) Transport Format with 448 the Host Identity Protocol (HIP)", RFC 7402, 449 DOI 10.17487/RFC7402, April 2015, 450 . 452 [RFC7668] Nieminen, J., Savolainen, T., Isomaki, M., Patil, B., 453 Shelby, Z., and C. Gomez, "IPv6 over BLUETOOTH(R) Low 454 Energy", RFC 7668, DOI 10.17487/RFC7668, October 2015, 455 . 457 [RFC8004] Laganier, J. and L. Eggert, "Host Identity Protocol (HIP) 458 Rendezvous Extension", RFC 8004, DOI 10.17487/RFC8004, 459 October 2016, . 461 [RFC8750] Migault, D., Guggemos, T., and Y. Nir, "Implicit 462 Initialization Vector (IV) for Counter-Based Ciphers in 463 Encapsulating Security Payload (ESP)", RFC 8750, 464 DOI 10.17487/RFC8750, March 2020, 465 . 467 [Vignesh] Vignesh, K., "Performance analysis of end-to-end DTLS and 468 IPsec-based communication in IoT environments", Thesis 469 no. MSEE-2017: 42, 2017, . 472 Authors' Addresses 474 Robert Moskowitz 475 HTT Consulting 476 Oak Park, MI 48237 477 United States of America 479 Email: rgm@labs.htt-consult.com 481 Stuart W. Card 482 AX Enterprize 483 4947 Commercial Drive 484 Yorkville, NY 13495 485 United States of America 487 Email: stu.card@axenterprize.com 489 Adam Wiethuechter 490 AX Enterprize 491 4947 Commercial Drive 492 Yorkville, NY 13495 493 United States of America 495 Email: adam.wiethuechter@axenterprize.com 496 Andrei Gurtov 497 Linköping University 498 IDA 499 SE-58183 Linköping 500 Sweden 502 Email: gurtov@acm.org