Skip to main content

UAS Remote ID
draft-moskowitz-drip-uas-rid-05

The information below is for an old version of the document.
Document Type
This is an older version of an Internet-Draft whose latest revision state is "Replaced".
Authors Robert Moskowitz , Stuart W. Card , Adam Wiethuechter , Andrei Gurtov
Last updated 2020-08-13
Replaced by draft-ietf-drip-uas-rid
RFC stream (None)
Formats
Additional resources
Stream Stream state (No stream defined)
Consensus boilerplate Unknown
RFC Editor Note (None)
IESG IESG state I-D Exists
Telechat date (None)
Responsible AD (None)
Send notices to (None)
draft-moskowitz-drip-uas-rid-05
DRIP                                                        R. Moskowitz
Internet-Draft                                            HTT Consulting
Intended status: Standards Track                                 S. Card
Expires: 14 February 2021                                A. Wiethuechter
                                                           AX Enterprize
                                                               A. Gurtov
                                                    Linköping University
                                                          13 August 2020

                             UAS Remote ID
                    draft-moskowitz-drip-uas-rid-05

Abstract

   This document describes the use of Hierarchical Host Identity Tags
   (HHITs) as a self-asserting and thereby trustable Identifier for use
   as the UAS Remote ID.  HHITs include explicit hierarchy to provide
   Registrar discovery for 3rd-party ID attestation.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at https://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on 14 February 2021.

Copyright Notice

   Copyright (c) 2020 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

Moskowitz, et al.       Expires 14 February 2021                [Page 1]
Internet-Draft                UAS Remote ID                  August 2020

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents (https://trustee.ietf.org/
   license-info) in effect on the date of publication of this document.
   Please review these documents carefully, as they describe your rights
   and restrictions with respect to this document.  Code Components
   extracted from this document must include Simplified BSD License text
   as described in Section 4.e of the Trust Legal Provisions and are
   provided without warranty as described in the Simplified BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   3
   2.  Terms and Definitions . . . . . . . . . . . . . . . . . . . .   3
     2.1.  Requirements Terminology  . . . . . . . . . . . . . . . .   3
     2.2.  Notation  . . . . . . . . . . . . . . . . . . . . . . . .   3
     2.3.  Definitions . . . . . . . . . . . . . . . . . . . . . . .   3
   3.  Hierarchical HITs as Remote ID  . . . . . . . . . . . . . . .   5
     3.1.  Hierarchy in ORCHID Generation  . . . . . . . . . . . . .   5
     3.2.  Hierarchical HIT Registry . . . . . . . . . . . . . . . .   5
     3.3.  Remote ID Authentication using HHITs  . . . . . . . . . .   6
   4.  UAS ID HHIT in DNS  . . . . . . . . . . . . . . . . . . . . .   6
   5.  Other UTM uses of HHITs . . . . . . . . . . . . . . . . . . .   7
   6.  DRIP Requirements addressed . . . . . . . . . . . . . . . . .   7
   7.  ASTM Considerations . . . . . . . . . . . . . . . . . . . . .   7
   8.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   7
   9.  Security Considerations . . . . . . . . . . . . . . . . . . .   7
     9.1.  Hierarchical HIT Trust  . . . . . . . . . . . . . . . . .   8
     9.2.  Collision risks with Hierarchical HITs  . . . . . . . . .   9
   10. References  . . . . . . . . . . . . . . . . . . . . . . . . .   9
     10.1.  Normative References . . . . . . . . . . . . . . . . . .   9
     10.2.  Informative References . . . . . . . . . . . . . . . . .  10
   Appendix A.  EU U-Space RID Privacy Considerations  . . . . . . .  11
   Appendix B.  The Hierarchical Host Identity Tag (HHIT)  . . . . .  12
     B.1.  HHIT prefix . . . . . . . . . . . . . . . . . . . . . . .  13
     B.2.  HHIT Suite IDs  . . . . . . . . . . . . . . . . . . . . .  13
     B.3.  The Hierarchy ID (HID)  . . . . . . . . . . . . . . . . .  13
       B.3.1.  The Registered Assigning Authority (RAA)  . . . . . .  13
       B.3.2.  The Hierarchical HIT Domain Authority (HDA) . . . . .  13
   Appendix C.  ORCHIDs for Hierarchical HITs  . . . . . . . . . . .  14
     C.1.  Adding additional information to the ORCHID . . . . . . .  14
     C.2.  ORCHID Decoding . . . . . . . . . . . . . . . . . . . . .  15
     C.3.  ORCHID Encoding . . . . . . . . . . . . . . . . . . . . .  15
   Appendix D.  Edward Digital Signature Algorithm for HITs  . . . .  16
     D.1.  HOST_ID . . . . . . . . . . . . . . . . . . . . . . . . .  16
     D.2.  HIT_SUITE_LIST  . . . . . . . . . . . . . . . . . . . . .  17
   Appendix E.  Calculating Collision Probabilities  . . . . . . . .  17
   Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . .  18
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  18

Moskowitz, et al.       Expires 14 February 2021                [Page 2]
Internet-Draft                UAS Remote ID                  August 2020

1.  Introduction

   [drip-requirements] describes a UAS ID as a "unique (ID-4), non-
   spoofable (ID-5), and identify a registry where the ID is listed (ID-
   2)"; all within a 20 character Identifier (ID-1).

   This document describes the use of Hierarchical HITs (HHITs)
   (Appendix B) as self-asserting and thereby a trustable Identifier for
   use as the UAS Remote ID.  HHITs include explicit hierarchy to
   provide Registrar discovery for 3rd-party ID attestation.

   HITs are statistically unique through the cryptographic hash feature
   of second-preimage resistance.  The cryptographically-bound addition
   of the Hierarchy and thus HHIT Registries [hhit-registries] provide
   complete, global HHIT uniqueness.  This is in contrast to general IDs
   (e.g. a UUID or device serial number) as the subject in an X.509
   certificate.

   In a multi-CA PKI, a subject can occur in multiple CAs, possibly
   fraudulently.  CAs within the PKI would need to implement an approach
   to enforce assurance of uniqueness.

   Hierarchical HITs are valid, though non-routable, IPv6 addresses.  As
   such, they fit in many ways within various IETF technologies.

2.  Terms and Definitions

2.1.  Requirements Terminology

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
   "OPTIONAL" in this document are to be interpreted as described in BCP
   14 [RFC2119] [RFC8174] when, and only when, they appear in all
   capitals, as shown here.

2.2.  Notation

   |  Signifies concatenation of information - e.g., X | Y is the
      concatenation of X and Y.

2.3.  Definitions

   See [drip-requirements] for common DRIP terms.

   cSHAKE (The customizable SHAKE function):
      Extends the SHAKE scheme to allow users to customize their use of
      the function.

Moskowitz, et al.       Expires 14 February 2021                [Page 3]
Internet-Draft                UAS Remote ID                  August 2020

   HI
      Host Identity.  The public key portion of an asymmetric keypair
      used in HIP.

   HIP
      Host Identity Protocol.  The origin of HI, HIT, and HHIT, required
      for DRIP.  Optional full use of HIP enables additional DRIP
      functionality.

   HDA (Hierarchical HIT Domain Authority):
      The 16 bit field identifying the HIT Domain Authority under an
      RAA.

   HHIT
      Hierarchical Host Identity Tag.  A HIT with extra hierarchical
      information not found in a standard HIT.

   HID (Hierarchy ID):
      The 32 bit field providing the HIT Hierarchy ID.

   HIT
      Host Identity Tag.  A 128 bit handle on the HI.  HITs are valid
      IPv6 addresses.

   Keccak (KECCAK Message Authentication Code):
      The family of all sponge functions with a KECCAK-f permutation as
      the underlying function and multi-rate padding as the padding
      rule.

   RAA (Registered Assigning Authority):
      The 16 bit field identifying the Hierarchical HIT Assigning
      Authority.

   RVS (Rendezvous Server):
      The HIP Rendezvous Server for enabling mobility, as defined in
      [RFC8004].

   SHAKE (Secure Hash Algorithm KECCAK):
      A secure hash that allows for an arbitrary output length.

   XOF (eXtendable-Output Function):
      A function on bit strings (also called messages) in which the
      output can be extended to any desired length.

Moskowitz, et al.       Expires 14 February 2021                [Page 4]
Internet-Draft                UAS Remote ID                  August 2020

3.  Hierarchical HITs as Remote ID

   Hierarchical HITs are a refinement on the Host Identity Tag (HIT) of
   HIPv2 [RFC7401].  HHITs require a new ORCHID mechanism as described
   in Appendix C.  HHITs for UAS ID also use the new EdDSA/SHAKE128 HIT
   suite defined in Appendix D (requirements GEN-2).  This hierarchy,
   cryptographically embedded within the HHIT, provides the information
   for finding the UA's HHIT registry (ID-3).

   The current ASTM [F3411-19] supports three types of UAS IDs, namely
   the [CTA2063A] serial number, CAA registration ID, and UTM-provided
   UUID session ID.  For HHITs to be used effectively as UAS IDs,
   F3411-19 SHOULD add HHIT as the fourth UAS ID type.

3.1.  Hierarchy in ORCHID Generation

   ORCHIDS, as defined in [RFC7343], do not cryptographically bind the
   IPv6 prefix nor the Orchid Generation Algorithm (OGA) ID to the hash
   of the HI.  The justification then was attacks against these fields
   are DoS attacks against protocols using them.

   HHITs, as defined in Appendix C, cryptographically bind all content
   in the ORCHID though the hashing function.  Thus a recipient of a
   HHIT that has the underlying HI can directly act on all content in
   the HHIT.  This is especially important to using the hierarchy to
   find the HHIT Registry.

3.2.  Hierarchical HIT Registry

   HHITs are registered to Hierarchical HIT Domain Authorities (HDAs) as
   described in [hhit-registries].  This registration process ensures
   UAS ID global uniqueness (ID-4).  It also provides the mechanism to
   create UAS Public/Private data associated with the HHIT UAS ID (REG-1
   and REG-2).

   The 2 levels of hierarchy within the HHIT allows for CAAs to have
   their own Registered Assigning Authority (RAA) for their National Air
   Space (NAS).  Within the RAA, the CAAs can delegate HDAs as needed.
   There may be other RAAs allowed to operate within a given NAS; this
   is a policy decision by the CAA.

Moskowitz, et al.       Expires 14 February 2021                [Page 5]
Internet-Draft                UAS Remote ID                  August 2020

3.3.  Remote ID Authentication using HHITs

   The EdDSA25519 Host Identity (HI) [Appendix D] underlying the HHIT is
   used for the Message Wrapper, Sec 4.2 [drip-auth] (requirements GEN-
   2).  It and the HDA's HI/HHIT are used for the Auth Certificate, sec
   5.1 [drip-auth] (requirements GEN-3).  These messages also establish
   that the UA owns the HHIT and that no other UA can assert ownership
   of the HHIT (GEN-1).

   The number of HDAs authorized to register UAs within an NAS
   determines the size of the HDA credential cache a device processing
   the Offline Authentication.  This cache contains the HDA's HI/HHIT
   and HDA meta-data; it could be very small.

4.  UAS ID HHIT in DNS

   There are 2 approaches for storing and retrieving the HHIT from DNS.
   These are:

   *  As FQDNs in the .aero TLD.

   *  Reverse DNS lookups as IPv6 addresses per [RFC8005].

   The HHIT can be used to construct an FQDN that points to the USS that
   has the Public/Private information for the UA (REG-1 and REG-2).  For
   example the USS for the HHIT could be found via the following.
   Assume that the RAA is 100 and the HDA is 50.  The PTR record is
   constructed as:

       100.50.hhit.uas.areo   IN PTR      foo.uss.areo.

   The individual HHITs are potentially too numerous (e.g. 63M) and
   dynamic to actually store in a signed, DNS zone.  Rather the USS
   would provide the HHIT detail response.

   The HHIT reverse lookup can be a standard IPv6 reverse look up, or it
   can leverage off the HHIT structure.  Assume that the RAA is 10 and
   the HDA is 20 and the HHIT is:

       2001:14:28:14:a3ad:1952:ad0:a69e

   An HHIT reverse lookup would be to is:

       a69e.ad0.1952.a3ad14.28.14.2001.20.10.hhit.arpa.

Moskowitz, et al.       Expires 14 February 2021                [Page 6]
Internet-Draft                UAS Remote ID                  August 2020

5.  Other UTM uses of HHITs

   HHITs can be used extensively within the UTM architecture beyond UA
   ID (and USS in UA ID registration and authentication).  This includes
   a GCS HHIT ID.  It could use this if it is the source of Network
   Remote ID for securing the transport and for secure C2 transport
   [drip-secure-nrid-c2].

   Observers SHOULD have HHITs to facilitate UAS information retrieval
   (e.g., for authorization to private UAS data).  They could also use
   their HHIT for establishing a HIP connection with the UA Pilot for
   direct communications per authorization.  Further, they can be used
   by FINDER observers, [crowd-sourced-rid].

6.  DRIP Requirements addressed

   This document provides solutions to GEN 1 - 3, ID 1 - 5, and REG 1 -
   2.

7.  ASTM Considerations

   ASTM will need to make the following changes to the "UA ID" in the
   Basic Message:

   Type 4:
      This document UA ID of Hierarchical HITs (see Section 3).

8.  IANA Considerations

   IANA will need to make the following changes to the "Host Identity
   Protocol (HIP) Parameters" registries:

   Host ID:
      This document defines the new EdDSA Host ID (see Appendix D.1).

   HIT Suite ID:
      This document defines the new HIT Suite of EdDSA/cSHAKE (see
      Appendix D.2).

9.  Security Considerations

   A 64 bit hash space presents a real risk of second pre-image attacks
   Section 9.2.  The HHIT Registry services effectively block attempts
   to "take over" a HHIT.  It does not stop a rogue attempting to
   impersonate a known HHIT.  This attack can be mitigated by the
   receiver of the HHIT using DNS to find the HI for the HHIT.

Moskowitz, et al.       Expires 14 February 2021                [Page 7]
Internet-Draft                UAS Remote ID                  August 2020

   Another mitigation of HHIT hijacking is if the HI owner supplies an
   object containing the HHIT and signed by the HI private key of the
   HDA.

   The two risks with hierarchical HITs are the use of an invalid HID
   and forced HIT collisions.  The use of a DNS zone (e.g.
   "hhit.arpa.") is a strong protection against invalid HIDs.  Querying
   an HDA's RVS for a HIT under the HDA protects against talking to
   unregistered clients.  The Registry service has direct protection
   against forced or accidental HIT hash collisions.

   Cryptographically Generated Addresses (CGAs) provide a unique
   assurance of uniqueness.  This is two-fold.  The address (in this
   case the UAS ID) is a hash of a public key and a Registry hierarchy
   naming.  Collision resistance (more important that it implied second-
   preimage resistance) makes it statistically challenging to attacks.
   A registration process as in HHIT Registries [hhit-registries]
   provides a level of assured uniqueness unattainable without mirroring
   this approach.

   The second aspect of assured uniqueness is the digital signing
   process of the HHIT by the HI private key and the further signing of
   the HI public key by the Registry's key.  This completes the
   ownership process.  The observer at this point does not know WHAT
   owns the HHIT, but is assured, other than the risk of theft of the HI
   private key, that this UAS ID is owned by something and is properly
   registered.

9.1.  Hierarchical HIT Trust

   The HHIT UAS RID in the ASTM Basic Message (the actual Remote ID
   message) does not provide any assertion of trust.  The best that
   might be done is 4 bytes truncated from a HI signing of the HHIT (the
   UA ID field is 20 bytes and a HHIT is 16).  It is in the ASTM
   Authentication Messages as defined in [drip-auth] that provide all of
   the actual ownership proofs.  These claims include timestamps to
   defend against replay attacks.  But in themselves, they do not prove
   which UA actually sent the message.  They could have been sent by a
   dog running down the street with a Broadcast Remote ID device
   strapped to its back.

   Proof of UA transmission comes when the Authentication Message
   includes proofs for the Location/Vector Message and the observer can
   see the UA or that information is validated by ground multilateration
   [crowd-sourced-rid].  Only then does an observer gain full trust in
   the HHIT Remote ID.

Moskowitz, et al.       Expires 14 February 2021                [Page 8]
Internet-Draft                UAS Remote ID                  August 2020

   HHIT Remote IDs obtained via the Network Remote ID path provides a
   different approach to trust.  Here the UAS SHOULD be securely
   communicating to the USS (see [drip-secure-nrid-c2]), thus asserting
   HHIT RID trust.

9.2.  Collision risks with Hierarchical HITs

   The 64 bit hash size does have an increased risk of collisions over
   the 96 bit hash size used for the other HIT Suites.  There is a 0.01%
   probability of a collision in a population of 66 million.  The
   probability goes up to 1% for a population of 663 million.  See
   Appendix E for the collision probability formula.

   However, this risk of collision is within a single "Additional
   Information" value.  Some registration process should be used to
   reject a collision, forcing the client to generate a new HI and thus
   HIT and reapplying to the registration process.

10.  References

10.1.  Normative References

   [F3411-19] ASTM International, "Standard Specification for Remote ID
              and Tracking", February 2020,
              <http://www.astm.org/cgi-bin/resolver.cgi?F3411>.

   [hhit-registries]
              Moskowitz, R., Card, S., and A. Wiethuechter,
              "Hierarchical HIT Registries", Work in Progress, Internet-
              Draft, draft-moskowitz-hip-hhit-registries-02, 9 March
              2020, <https://tools.ietf.org/html/draft-moskowitz-hip-
              hhit-registries-02>.

   [NIST.FIPS.202]
              Dworkin, M., "SHA-3 Standard: Permutation-Based Hash and
              Extendable-Output Functions", National Institute of
              Standards and Technology report,
              DOI 10.6028/nist.fips.202, July 2015,
              <https://doi.org/10.6028/nist.fips.202>.

   [NIST.SP.800-185]
              Kelsey, J., Change, S., and R. Perlner, "SHA-3 derived
              functions: cSHAKE, KMAC, TupleHash and ParallelHash",
              National Institute of Standards and Technology report,
              DOI 10.6028/nist.sp.800-185, December 2016,
              <https://doi.org/10.6028/nist.sp.800-185>.

Moskowitz, et al.       Expires 14 February 2021                [Page 9]
Internet-Draft                UAS Remote ID                  August 2020

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <https://www.rfc-editor.org/info/rfc2119>.

   [RFC8032]  Josefsson, S. and I. Liusvaara, "Edwards-Curve Digital
              Signature Algorithm (EdDSA)", RFC 8032,
              DOI 10.17487/RFC8032, January 2017,
              <https://www.rfc-editor.org/info/rfc8032>.

   [RFC8174]  Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
              2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
              May 2017, <https://www.rfc-editor.org/info/rfc8174>.

10.2.  Informative References

   [corus]    CORUS, "U-space Concept of Operations", September 2019,
              <https://www.sesarju.eu/node/3411>.

   [crowd-sourced-rid]
              Moskowitz, R., Card, S., Wiethuechter, A., Zhao, S., and
              H. Birkholz, "Crowd Sourced Remote ID", Work in Progress,
              Internet-Draft, draft-moskowitz-drip-crowd-sourced-rid-04,
              20 May 2020, <https://tools.ietf.org/html/draft-moskowitz-
              drip-crowd-sourced-rid-04>.

   [CTA2063A] ANSI, "Small Unmanned Aerial Systems Serial Numbers",
              September 2019.

   [drip-auth]
              Wiethuechter, A., Card, S., and R. Moskowitz, "DRIP
              Authentication Formats", Work in Progress, Internet-Draft,
              draft-wiethuechter-drip-auth-03, 27 July 2020,
              <https://tools.ietf.org/html/draft-wiethuechter-drip-auth-
              03>.

   [drip-requirements]
              Card, S., Wiethuechter, A., Moskowitz, R., and A. Gurtov,
              "Drone Remote Identification Protocol (DRIP)
              Requirements", Work in Progress, Internet-Draft, draft-
              ietf-drip-reqs-03, 13 July 2020,
              <https://tools.ietf.org/html/draft-ietf-drip-reqs-03>.

Moskowitz, et al.       Expires 14 February 2021               [Page 10]
Internet-Draft                UAS Remote ID                  August 2020

   [drip-secure-nrid-c2]
              Moskowitz, R., Card, S., Wiethuechter, A., and A. Gurtov,
              "Secure UAS Network RID and C2 Transport", Work in
              Progress, Internet-Draft, draft-moskowitz-drip-secure-
              nrid-c2-00, 6 April 2020, <https://tools.ietf.org/html/
              draft-moskowitz-drip-secure-nrid-c2-00>.

   [Keccak]   Bertoni, G., Daemen, J., Peeters, M., Van Assche, G., and
              R. Van Keer, "The Keccak Function",
              <https://keccak.team/index.html>.

   [RFC7343]  Laganier, J. and F. Dupont, "An IPv6 Prefix for Overlay
              Routable Cryptographic Hash Identifiers Version 2
              (ORCHIDv2)", RFC 7343, DOI 10.17487/RFC7343, September
              2014, <https://www.rfc-editor.org/info/rfc7343>.

   [RFC7401]  Moskowitz, R., Ed., Heer, T., Jokela, P., and T.
              Henderson, "Host Identity Protocol Version 2 (HIPv2)",
              RFC 7401, DOI 10.17487/RFC7401, April 2015,
              <https://www.rfc-editor.org/info/rfc7401>.

   [RFC8004]  Laganier, J. and L. Eggert, "Host Identity Protocol (HIP)
              Rendezvous Extension", RFC 8004, DOI 10.17487/RFC8004,
              October 2016, <https://www.rfc-editor.org/info/rfc8004>.

   [RFC8005]  Laganier, J., "Host Identity Protocol (HIP) Domain Name
              System (DNS) Extension", RFC 8005, DOI 10.17487/RFC8005,
              October 2016, <https://www.rfc-editor.org/info/rfc8005>.

Appendix A.  EU U-Space RID Privacy Considerations

   EU is defining a future of airspace management known as U-space
   within the Single European Sky ATM Research (SESAR) undertaking.
   Concept of Operation for EuRopean UTM Systems (CORUS) project
   proposed low-level Concept of Operations [corus] for UAS in EU.  It
   introduces strong requirements for UAS privacy based on European GDPR
   regulations.  It suggests that UAs are identified with agnostic IDs,
   with no information about UA type, the operators or flight
   trajectory.  Only authorized persons should be able to query the
   details of the flight with a record of access.

Moskowitz, et al.       Expires 14 February 2021               [Page 11]
Internet-Draft                UAS Remote ID                  August 2020

   Due to the high privacy requirements, a casual observer can only
   query U-space if it is aware of a UA seen in a certain area.  A
   general observer can use a public U-space portal to query UA details
   based on the UA transmitted "Remote identification" signal.  Direct
   remote identification (DRID) is based on a signal transmitted by the
   UA directly.  Network remote identification (NRID) is only possible
   for UAs being tracked by U-Space and is based on the matching the
   current UA position to one of the tracks.

   The project lists "E-Identification" and "E-Registrations" services
   as to be developed.  These services can follow the privacy mechanism
   proposed in this document.  If an "agnostic ID" above refers to a
   completely random identifier, it creates a problem with identity
   resolution and detection of misuse.  On the other hand, a classical
   HIT has a flat structure which makes its resolution difficult.  The
   Hierarchical HITs provide a balanced solution by associating a
   registry with the UA identifier.  This is not likely to cause a major
   conflict with U-space privacy requirements, as the registries are
   typically few at a country level (e.g. civil personal, military, law
   enforcement, or commercial).

Appendix B.  The Hierarchical Host Identity Tag (HHIT)

   The Hierarchical HIT (HHIT) is a small but important enhancement over
   the flat HIT space.  By adding two levels of hierarchical
   administration control, the HHIT provides for device registration/
   ownership, thereby enhancing the trust framework for HITs.

   HHITs represent the HI in only a 64 bit hash and uses the other 32
   bits to create a hierarchical administration organization for HIT
   domains.  Hierarchical HITs are "Using cSHAKE in ORCHIDs"
   (Appendix C).  The input values for the Encoding rules are in
   Appendix C.1.

   A HHIT is built from the following fields:

   *  28 bit IANA prefix

   *  4 bit HIT Suite ID

   *  32 bit Hierarchy ID (HID)

   *  64 bit ORCHID hash

Moskowitz, et al.       Expires 14 February 2021               [Page 12]
Internet-Draft                UAS Remote ID                  August 2020

B.1.  HHIT prefix

   A unique 28 bit prefix for HHITs is recommended.  It clearly
   separates the flat-space HIT processing from HHIT processing per
   "Using cSHAKE in ORCHIDs" (Appendix C).

B.2.  HHIT Suite IDs

   The HIT Suite IDs specifies the HI and hash algorithms.  Any HIT
   Suite ID can be used for HHITs, provided that the prefix for HHITs is
   different from flat space HITs.  Without a unique prefix,
   Appendix B.1, additional HIT Suite IDs would be needed for HHITs.
   This would risk exhausting the limited Suite ID space of only 15 IDs.

B.3.  The Hierarchy ID (HID)

   The Hierarchy ID (HID) provides the structure to organize HITs into
   administrative domains.  HIDs are further divided into 2 fields:

   *  16 bit Registered Assigning Authority (RAA)

   *  16 bit Hierarchical HIT Domain Authority (HDA)

B.3.1.  The Registered Assigning Authority (RAA)

   An RAA is a business or organization that manages a registry of HDAs.
   For example, the Federal Aviation Authority (FAA) could be an RAA.

   The RAA is a 16 bit field (65,536 RAAs) assigned by a numbers
   management organization, perhaps ICANN's IANA service.  An RAA must
   provide a set of services to allocate HDAs to organizations.  It must
   have a public policy on what is necessary to obtain an HDA.  The RAA
   need not maintain any HIP related services.  It must maintain a DNS
   zone minimally for discovering HID RVS servers.

   This DNS zone may be a PTR for its RAA.  It may be a zone in a HHIT
   specific DNS zone.  Assume that the RAA is 100.  The PTR record could
   be constructed:

   100.hhit.arpa   IN PTR      raa.bar.com.

B.3.2.  The Hierarchical HIT Domain Authority (HDA)

   An HDA may be an ISP or any third party that takes on the business to
   provide RVS and other needed services for HIP enabled devices.

Moskowitz, et al.       Expires 14 February 2021               [Page 13]
Internet-Draft                UAS Remote ID                  August 2020

   The HDA is an 16 bit field (65,536 HDAs per RAA) assigned by an RAA.
   An HDA should maintain a set of RVS servers that its client HIP-
   enabled customers use.  How this is done and scales to the
   potentially millions of customers is outside the scope of this
   document.  This service should be discoverable through the DNS zone
   maintained by the HDA's RAA.

   An RAA may assign a block of values to an individual organization.
   This is completely up to the individual RAA's published policy for
   delegation.

Appendix C.  ORCHIDs for Hierarchical HITs

   This section adds the [Keccak] based cSHAKE XOF hash function from
   NIST SP 800-185 [NIST.SP.800-185] to ORCHIDv2 [RFC7343]. cSHAKE is a
   variable output length hash function.  As such it does not use the
   truncation operation that other hashes need.  The invocation of
   cSHAKE specifies the desired number of bits in the hash output.

   This ORCHID construction includes the Prefix in the hash to protect
   against Prefix subsitution attacks.  It also provides for inclusion
   of additional information, in particular the hierarchical bits of the
   Hierarchical HIT, in the ORCHID generation.  It should be viewed as
   an addendum to ORCHIDv2 [RFC7343].

   cSHAKE is used, rather than SHAKE from NIST FIPS 202 [NIST.FIPS.202],
   as cSHAKE has a parameter 'S' as a customization bit string.  This
   parameter will be used for including the ORCHID Context Identifier in
   a standard fashion.

C.1.  Adding additional information to the ORCHID

   ORCHIDv2 [RFC7343] is currently defined as consisting of three
   components:

   ORCHID     :=  Prefix | OGA ID | Encode_96( Hash )

   where:

   Prefix          : A constant 28-bit-long bitstring value
                     (IANA IPv6 assigned).

   OGA ID          : A 4-bit long identifier for the Hash_function
                     in use within the specific usage context.

   Encode_96( )    : An extraction function in which output is obtained
                     by extracting the middle 96-bit-long bitstring
                     from the argument bitstring.

Moskowitz, et al.       Expires 14 February 2021               [Page 14]
Internet-Draft                UAS Remote ID                  August 2020

   This addendum will be constructed as follows:

   ORCHID     :=  Prefix | OGA ID | Info (n) | Hash (m)

   where:

   Prefix (p)      : A (max 28-bit-long) bitstring value
                     (IANA IPv6 assigned).

   OGA ID          : A 4-bit long identifier for the Hash_function
                     in use within the specific usage context.

   Info (n)        : n bits of information that define a use of the
                     ORCHID.  n can be zero, that is no additional
                     information.

   Hash (m)        : An extraction function in which output is m bits.

   p + n + m = 124 bits

   With a 28 bit IPv6 Prefix, the 96 bits currently allocated to the
   Encode_96 function can be divided in any manner between the
   additional information and the hash output.  Care must be taken in
   determining the size of the hash portion, taking into account risks
   like pre-image attacks.  Thus 64 bits as used in Hierarchical HITs
   may be as small as is acceptable.

C.2.  ORCHID Decoding

   With this addendum, the decoding of an ORCHID is determined by the
   Prefix and OGA ID.  ORCHIDv2 [RFC7343] decoding is selected when the
   Prefix is: 2001:20::/28.

   For Heirarchical HITs, the decoding is determined by the presence of
   the HHIT Prefix as specified in the HHIT document.

C.3.  ORCHID Encoding

   ORCHIDv2 has a number of inputs including a Context ID, some header
   bits, the hash algorithm, and the input bitstream, normally just the
   public key.  The output is a 96 bit value.

Moskowitz, et al.       Expires 14 February 2021               [Page 15]
Internet-Draft                UAS Remote ID                  August 2020

   This addendum adds a different encoding process to that currently
   used.  The input to the hash function explicitly includes all the
   fixed header content plus the Context ID.  The fixed header content
   consists of the Prefix, OGA ID, and the Additional Information.
   Secondly, the length of the resulting hash is set by the rules set by
   the Prefix/OGA ID.  In the case of Hierarchical HITs, this is 64
   bits.

   To achieve the variable length output in a consistent manner, the
   cSHAKE hash is used.  For this purpose, cSHAKE128 is appropriate.
   The the cSHAKE function call for this addendum is:

       cSHAKE128(Input, L, "", Context ID)

       Input      :=  Prefix | OGA ID | Additional Information | HOST_ID
       L          :=  Length in bits of hash portion of ORCHID

   Hierarchical HIT uses the same context as all other HIPv2 HIT Suites
   as they are clearly separated by the distinct HIT Suite ID.

Appendix D.  Edward Digital Signature Algorithm for HITs

   Edwards-Curve Digital Signature Algorithm (EdDSA) [RFC8032] are
   specified here for use as Host Identities (HIs).

D.1.  HOST_ID

   The HOST_ID parameter specifies the public key algorithm, and for
   elliptic curves, a name.  The HOST_ID parameter is defined in
   Section 5.2.19 of [RFC7401].

        Algorithm
        profiles         Values

        EdDSA            13 [RFC8032]       (RECOMMENDED)

   For hosts that implement EdDSA as the algorithm, the following ECC
   curves are available:

        Algorithm    Curve            Values

        EdDSA        RESERVED         0
        EdDSA        EdDSA25519       1 [RFC8032]
        EdDSA        EdDSA25519ph     2 [RFC8032]
        EdDSA        EdDSA448         3 [RFC8032]
        EdDSA        EdDSA448ph       4 [RFC8032]

Moskowitz, et al.       Expires 14 February 2021               [Page 16]
Internet-Draft                UAS Remote ID                  August 2020

D.2.  HIT_SUITE_LIST

   The HIT_SUITE_LIST parameter contains a list of the supported HIT
   suite IDs of the Responder.  Based on the HIT_SUITE_LIST, the
   Initiator can determine which source HIT Suite IDs are supported by
   the Responder.  The HIT_SUITE_LIST parameter is defined in
   Section 5.2.10 of [RFC7401].

   The following HIT Suite ID is defined, and the relationship between
   the four-bit ID value used in the OGA ID field and the eight-bit
   encoding within the HIT_SUITE_LIST ID field is clarified:

        HIT Suite       Four-bit ID    Eight-bit encoding
        RESERVED            0             0x00
        EdDSA/cSHAKE128     5             0x50           (RECOMMENDED)

   The following table provides more detail on the above HIT Suite
   combinations.  The input for each generation algorithm is the
   encoding of the HI as defined in this Appendix.  The output is 96
   bits long and is directly used in the ORCHID.

      +=======+===========+=========+===========+===================+
      | Index | Hash      | HMAC    | Signature | Description       |
      |       | function  |         | algorithm |                   |
      |       |           |         | family    |                   |
      +=======+===========+=========+===========+===================+
      |     5 | cSHAKE128 | KMAC128 | EdDSA     | EdDSA HI hashed   |
      |       |           |         |           | with cSHAKE128,   |
      |       |           |         |           | output is 96 bits |
      +-------+-----------+---------+-----------+-------------------+

                            Table 1: HIT Suites

Appendix E.  Calculating Collision Probabilities

   The accepted formula for calculating the probability of a collision
   is:

       p = 1 - e^{-k^2/(2n)}

       P   Collision Probability
       n   Total possible population
       k   Actual population

Moskowitz, et al.       Expires 14 February 2021               [Page 17]
Internet-Draft                UAS Remote ID                  August 2020

Acknowledgments

   Dr. Gurtov is an adviser on Cybersecurity to the Swedish Civil
   Aviation Administration.

   Quynh Dang of NIST gave considerable guidance on using Keccak and the
   NIST supporting documents.  Joan Deamen of the Keccak team was
   especially helpful in many aspects of using Keccak.

Authors' Addresses

   Robert Moskowitz
   HTT Consulting
   Oak Park, MI 48237
   United States of America

   Email: rgm@labs.htt-consult.com

   Stuart W. Card
   AX Enterprize
   4947 Commercial Drive
   Yorkville, NY 13495
   United States of America

   Email: stu.card@axenterprize.com

   Adam Wiethuechter
   AX Enterprize
   4947 Commercial Drive
   Yorkville, NY 13495
   United States of America

   Email: adam.wiethuechter@axenterprize.com

   Andrei Gurtov
   Linköping University
   IDA
   SE-58183 Linköping
   Sweden

   Email: gurtov@acm.org

Moskowitz, et al.       Expires 14 February 2021               [Page 18]