<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.43 (Ruby 3.4.9) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-dult-accessory-protocol-01" category="info" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.1 -->
  <front>
    <title>Detecting Unwanted Location Trackers Accessory Protocol</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-dult-accessory-protocol-01"/>
    <author fullname="Brent Ledvina">
      <organization>Apple</organization>
      <address>
        <email>bledvina@apple.com</email>
      </address>
    </author>
    <author fullname="David Lazarov">
      <organization>Google</organization>
      <address>
        <email>dlazarov@google.com</email>
      </address>
    </author>
    <author fullname="Ben Detwiler">
      <organization>Apple</organization>
      <address>
        <email>bdetwiler@apple.com</email>
      </address>
    </author>
    <author fullname="Siddika Parlak Polatkan">
      <organization>Google</organization>
      <address>
        <email>siddikap@google.com</email>
      </address>
    </author>
    <date year="2026" month="October" day="27"/>
    <area>Security</area>
    <workgroup>Detecting Unwanted Location Trackers</workgroup>
    <keyword>Internet-Draft</keyword>
    <keyword>detecting unwanted location trackers</keyword>
    <keyword>accessory protocol</keyword>
    <abstract>
      <?line 66?>
<t>This document lists a set of best practices and protocols for accessory manufacturers whose products have built-in location-tracking capabilities. By following these requirements and recommendations, a location-tracking accessory will be compatible with unwanted tracking detection and alerts on mobile platforms. This is an important capability for improving the privacy and safety of individuals in the circumstance that those accessories are used to track their location without their knowledge or consent.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://ietf-wg-dult.github.io/accessory-protocol/draft-ietf-dult-accessory-protocol.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-dult-accessory-protocol/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Detecting Unwanted Location Trackers Working Group mailing list (<eref target="mailto:unwanted-trackers@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/unwanted-trackers/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/unwanted-trackers/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/ietf-wg-dult/draft-ietf-dult-accessory-protocol"/>.</t>
    </note>
  </front>
  <middle>
    <?line 69?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>This document’s goal is to, in part, help protect the privacy of individuals from unwanted tracking by location-tracking accessories. Location-tracking accessories provide numerous benefits to consumers, but, as with all technology, it is possible for them to be misused. Misuse of location-tracking accessories can result in unwanted tracking of individuals or items for nefarious purposes such as stalking, harassment, and theft. This document is focused on protecting people from misuse of location-tracking accessories. Formalizing a set of best practices for manufacturers will allow for scalable compatibility with unwanted tracking detection technologies on various smartphone platforms and improve privacy and security for individuals.</t>
      <t>Unwanted tracking detection can both detect and alert individuals that a location tracker separated from the owner's device is traveling with them, as well as provide means to find and disable the tracker. This document outlines technical best practices for location tracker manufacturers, which will allow for their compatibility with unwanted tracking detection and alerting technology on platforms.</t>
      <section anchor="conventions-and-definitions">
        <name>Conventions and Definitions</name>
        <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
        <?line -18?>

</section>
      <section anchor="terminology">
        <name>Terminology</name>
        <t>Throughout this document, these terms have specific meanings:</t>
        <ul spacing="normal">
          <li>
            <t>The term platform is used to refer to mobile device hardware and associated operating system. Examples of mobile devices are phones, tablets, laptops, etc.</t>
          </li>
          <li>
            <t>The term accessory is used to refer to any product intended to interface with a platform through the means described in this specification.</t>
          </li>
          <li>
            <t>The term owner device is a device that is associated with the accessory and can retrieve the accessory’s location.</t>
          </li>
          <li>
            <t>The term non-owner device refers to a device that may connect to an accessory but is not an owner device of that accessory.</t>
          </li>
          <li>
            <t>The term location-tracking accessory refers to any accessory that has location-tracking capabilities, including, but not limited to, crowd-sourced location, GPS/GNSS location, WiFi location, cell location, etc., and provides the location information back to the owner of the accessory via the internet, cellular connection, etc.</t>
          </li>
          <li>
            <t>The term location-enabled state refers to the state an accessory in where its location can be remotely viewed by its owner</t>
          </li>
          <li>
            <t>The term location-enabled advertisement payload refers to the Bluetooth (BT) advertisement payload that is advertised when an accessory has recently, is currently, or will in the future provide location updates to its owner</t>
          </li>
          <li>
            <t>The term unwanted tracking (UT) refers to undesired tracking of a person, their property, or their belongings by a location-enabled accessory.</t>
          </li>
          <li>
            <t>The term unwanted tracking detection refers to the algorithms that detect the presence of an unknown accessory traveling with a person over time.</t>
          </li>
          <li>
            <t>The term unwanted tracking alert refers to notifying the user of the presence of an unrecognized accessory that may be traveling with them over time and allows them to take various actions, including playing a sound on the accessory if it’s in Bluetooth Low Energy (LE) range.</t>
          </li>
          <li>
            <t>The term platform-compatible method refers to a method of communication between the platform and the accessory/accessory manufacturers to exchange information, including, but not limited to, BT GATT protocol, BT advertisement, HTTP, etc.</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="background">
      <name>Background</name>
      <section anchor="applicability">
        <name>Applicability</name>
        <t>These best practices are <bcp14>REQUIRED</bcp14> for location-enabled accessories that are small and not easily discoverable. For large accessories, such as a bicycle, these best practices are <bcp14>RECOMMENDED</bcp14>.</t>
        <t>Accessories are considered easily discoverable if they meet one of the following criteria:</t>
        <ul spacing="normal">
          <li>
            <t>The item is larger than 30 cm in at least one dimension.</t>
          </li>
          <li>
            <t>The item is larger than 18 cm x 13 cm in two of its dimensions.</t>
          </li>
          <li>
            <t>The item is larger than 250 cm<sup>3</sup> in three-dimensional space.</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="requirements">
      <name>Requirements</name>
      <section anchor="overview">
        <name>Overview</name>
        <t>This section details requirements and recommendations for best practices for location-enabled accessory manufacturers to allow unwanted tracking detection by platform makers.</t>
      </section>
      <section anchor="bluetooth-low-energy">
        <name>Bluetooth Low Energy</name>
        <t>The accessory <bcp14>SHALL</bcp14> use Bluetooth Low Energy (LE) as the transport protocol. This enables platforms to detect and connect to accessories.</t>
        <section anchor="advertising">
          <name>Advertising</name>
          <t>The accessory <bcp14>SHALL</bcp14> advertise using Bluetooth LE.</t>
        </section>
        <section anchor="connection">
          <name>Connection</name>
          <t>The accessory <bcp14>MUST</bcp14> support at least one non-owner unencrypted connection in a peripheral role.
The connection interval of the Bluetooth LE link between the device and accessory <bcp14>MAY</bcp14> depend on the type of user interaction. Non-owner connections to the accessory <bcp14>SHALL</bcp14> be implemented using a platform-compatible method, e.g., BT GATT service.</t>
        </section>
      </section>
      <section anchor="location-tracking">
        <name>Location Tracking</name>
        <t>The location-enabled accessory has location capabilities via Bluetooth crowd-sourcing, GPS/GNSS location, WiFi location, cellular location, or by some other means. Furthermore, the accessory has a way to communicate its location to its owner via a network (e.g., cell network, crowd-sourced location via Bluetooth, etc.).</t>
        <t>The accessory <bcp14>SHALL</bcp14> maintain an internal state that detects when its location is, or has been, available to the owner via a network. This state is called the location-enabled state.</t>
        <t>Misuse of location-enabled accessories can occur when the owner’s device is not physically with the accessory. Thereby, the accessory <bcp14>SHOULD</bcp14> maintain a second internal state, denoted the near-owner state, which indicates if the accessory is connected to or nearby one or more of the owner’s devices. Near-owner state can take on two values, either near-owner mode or separated mode. Near-owner mode is denoted as the opposite of separated mode.</t>
        <t><xref target="_table-location-enabled-payload"/> details the requirements and recommendations for advertising the location-enabled payload based on the location-enabled state and separated state.</t>
        <figure anchor="_table-location-enabled-payload">
          <name>Requirements &amp; Recommendations For Advertising Location-Enabled Payload</name>
          <artwork><![CDATA[
                         +---------------------+
                         |      Location       |
                         |  Currently Enabled  |
                         |         OR          |
                         |  Enabled in Past 24 |
                         |        Hours        |
    +--------------------+---------------------|
    |         near-owner |        MAY          |
    |            mode    | advertise location- |
    | Near-              |  enabled payload    |
    | Owner              +---------------------|
    | State    separated |   MUST advertise    |
    |            mode    |  location-enabled   |
    |                    |     payload         |
    +--------------------+---------------------+
]]></artwork>
        </figure>
        <t>If the accessory maker chooses to continue advertising the location-enabled payload while in near-owner mode, setting the <xref target="near-owner-bit">near-owner bit</xref> compensates for this.</t>
      </section>
      <section anchor="location-enabled-bluetooth-le-advertisement-payload">
        <name>Location-enabled Bluetooth LE Advertisement Payload</name>
        <section anchor="overview-1">
          <name>Overview</name>
          <t>When in location-enabled state, the accessory <bcp14>SHALL</bcp14> advertise a Bluetooth LE format, denoted the location-enabled Bluetooth advertisement payload, that is recognizable to the platforms.</t>
          <t>The primary purpose of the advertisement in the context of this specification is to allow the detection of unwanted location trackers. All accessories in scope of this document are associated with an owner. The advertisement <bcp14>MUST</bcp14> allow the owner’s platform to reliably recognize the owner's associated accessories, that is a critical signal to distinguish unwanted trackers from expected ones. False alerts associated to owned or expected accessories may otherwise desensitize users, leading them to miss relevant ones.</t>
        </section>
        <section anchor="location-enabled-advertisement-payload-format">
          <name>Location-enabled advertisement payload format</name>
          <t>The payload format is defined in <xref target="_table-payload-format"/></t>
          <table anchor="_table-payload-format">
            <name>Location-Enabled Payload Format</name>
            <thead>
              <tr>
                <th align="center">Bytes</th>
                <th align="left">Description</th>
                <th align="center">Requirement</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="center">0-5</td>
                <td align="left">MAC address</td>
                <td align="center">
                  <bcp14>REQUIRED</bcp14></td>
              </tr>
              <tr>
                <td align="center">6-8</td>
                <td align="left">Flags TLV; length = 1 byte, type = 1 byte, value = 1 byte</td>
                <td align="center">
                  <bcp14>OPTIONAL</bcp14></td>
              </tr>
              <tr>
                <td align="center">9-12</td>
                <td align="left">Service Data TLV; length = 1 byte, type = 0x16, value = 0xFCB2</td>
                <td align="center">
                  <bcp14>REQUIRED</bcp14></td>
              </tr>
              <tr>
                <td align="center">13</td>
                <td align="left">Network ID</td>
                <td align="center">
                  <bcp14>REQUIRED</bcp14></td>
              </tr>
              <tr>
                <td align="center">14</td>
                <td align="left">Near-owner bit (1 bit, least significant bit) + reserved (7 bits)</td>
                <td align="center">
                  <bcp14>REQUIRED</bcp14></td>
              </tr>
              <tr>
                <td align="center">15-36</td>
                <td align="left">Proprietary company payload data</td>
                <td align="center">
                  <bcp14>OPTIONAL</bcp14></td>
              </tr>
            </tbody>
          </table>
          <t>When Flags TLV are not added, the MAC address type needs to be set to random.
This implies that if Bluetooth LE pairing is supported, the accessory <bcp14>SHALL NOT</bcp14> use its public address as its public identity when exchanging pairing
keys at phase 3 (see Vol.3, Part H, Section 2.1 of the <xref target="BTCore5.4"/>) and it <bcp14>SHALL</bcp14> only use a static random address.
Additionally, the LE advertisement needs to be connectable to allow for non-owner unencrypted connections to the accessory.
Further details are discussed
in <xref target="accessory-connections"/>.</t>
          <t>Proprietary company payload data is both <bcp14>OPTIONAL</bcp14> and variable length.</t>
        </section>
        <section anchor="duration-of-advertising-location-enabled-advertisement-payload">
          <name>Duration of advertising location-enabled advertisement payload</name>
          <t>The accessory <bcp14>SHALL</bcp14> broadcast the location-enabled advertisement payload if location is available to the owner or was available any time within the past 24 hours. This allows unwanted tracking detection to operate both between and beyond the specific moments an accessory's location is made available to the owner.</t>
        </section>
        <section anchor="maximum-duration-after-physical-separation-from-owner-to-transition-into-separated-mode">
          <name>Maximum duration after physical separation from owner to transition into separated mode</name>
          <t>The accessory <bcp14>SHALL</bcp14> transition from near-owner mode to separated mode under the conditions listed in <xref target="_table-advertising-policy"/> below.</t>
          <table anchor="_table-advertising-policy">
            <name>Advertising Policy</name>
            <thead>
              <tr>
                <th align="left">Preferred</th>
                <th align="center">Acceptable</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">The accessory has been physically separated from the owner device for more than 30 minutes</td>
                <td align="center">The accessory has been physically separated from the owner device for more than 30 minutes <strong>AND</strong> The owner of the accessory has received a more recent location update for that accessory after 30 minutes</td>
              </tr>
            </tbody>
          </table>
        </section>
        <section anchor="maximum-duration-after-reunification-with-owner-to-transition-into-near-owner-mode">
          <name>Maximum duration after reunification with owner to transition into near-owner mode</name>
          <t>The accessory <bcp14>SHALL</bcp14> transition from separated to near-owner mode if it has reunited with the owner device for a duration no longer than 30 minutes.</t>
        </section>
      </section>
      <section anchor="mac-address">
        <name>MAC address</name>
        <t>The Bluetooth LE advertisement payload <bcp14>SHALL</bcp14> contain an address in the 6-byte Bluetooth MAC address field which looks random to all parties while being recognizable by the owner device.</t>
        <t>The address <bcp14>SHALL</bcp14> rotate periodically (see <xref target="rotation-policy">Rotation policy</xref>); otherwise if the same address is used for long periods of time, an adversary may be able to track a legitimate person carrying the accessory through local Bluetooth LE scanning devices. Same rules apply to all of the advertised payload.</t>
        <t>It is possible to generate the MAC address in a way which meets the privacy requirement while allowing the platform to recognize an owned accessory without ambiguity using the MAC address, as defined in (TODO: Section Implementation Owned has been removed).
When taking this approach, the address type <bcp14>SHALL</bcp14> be set as a non-resolvable private address or as a static device address, as defined in Random Device Address in Vol 6, Part B, Section 1.3.2 of the <xref target="BTCore5.4"/>.
The owner <bcp14>MUST</bcp14> be able to predict the MAC address value at any given time in order to suppress unwanted tracking alerts caused by a device’s owned accessory. See (TODO: Section Owned Accessory Identification) for additional details.</t>
        <t>Alternatively, the owner recognizable value may be placed in Proprietary company payload data defined in <xref target="proprietary-company-payload">Proprietary company payload</xref>. In this scenario, the MAC address of the accessory advertisement may be set to resolvable private address.</t>
        <section anchor="rotation-policy">
          <name>Rotation policy</name>
          <t>An accessory <bcp14>SHALL</bcp14> rotate its address on any transition from near-owner state to separated state as well as any transition from separated state to near-owner state.</t>
          <t>When in near-owner state, the accessory <bcp14>SHALL</bcp14> rotate its address every 15 minutes. This is a privacy consideration to deter tracking of the accessory by non-owners when it is in physical proximity to the owner.</t>
          <t>When in a separated state, the accessory <bcp14>SHALL</bcp14> rotate its address every 24 hours.
This duration allows a platform's unwanted tracking algorithms to detect that the same accessory is in proximity for some period of time, when the owner is not in physical proximity.</t>
        </section>
      </section>
      <section anchor="service-data-tlv">
        <name>Service data TLV</name>
        <t>The Service data TLV with a 2-byte UUID value of 0xFCB2 provides a way for platforms to easily scan for and detect the location-enabled Bluetooth advertisement.</t>
      </section>
      <section anchor="network-id">
        <name>Network ID</name>
        <t>The 1-byte Network ID <bcp14>SHALL</bcp14> be set based on a registered value for the manufacturer, as defined in (TODO: Section Finding Network Registry has been removed).</t>
      </section>
      <section anchor="proprietary-company-payload">
        <name>Proprietary company payload</name>
        <t>To maintain the privacy properties of the MAC address, the values of payload which may be different between accessories <bcp14>SHALL</bcp14> rotate at the same time and interval as the MAC address. The approach using a Pseudo-Random Function suggested in (TODO: Section Implementation has been removed). may be used to meet this privacy requirement.</t>
        <t>If a Resolvable Private MAC address is used, this field <bcp14>SHALL</bcp14> be populated with a value of 6 bytes minimum which allows the platform to recognize an owned accessory without ambiguity to support the identification of owned accessory by the platform as defined in (TODO: Section Owned Accessory Identification has been removed).</t>
      </section>
      <section anchor="near-owner-bit">
        <name>Near-owner bit</name>
        <t>It is important to prevent unwanted tracking alerts from occurring when the owner of the accessory is in physical proximity of the accessory, i.e., it is in near-owner mode. In order to allow suppression of unwanted tracking alerts for an accessory advertising the location-enabled advertisement with the owner nearby, the accessory <bcp14>MUST</bcp14> set the near-owner bit to be 1 when the near-owner state is in near-owner mode, otherwise the bit is set to 0. <xref target="_table-near-owner-bit"/> specifies the values of this bit.</t>
        <t>The near-owner bit <bcp14>MUST</bcp14> be the least significant bit.</t>
        <table anchor="_table-near-owner-bit">
          <name>Near-Owner Bit</name>
          <thead>
            <tr>
              <th align="left">Near-owner Bit Value</th>
              <th align="left">Near-owner state</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">1</td>
              <td align="left">Near-owner mode</td>
            </tr>
            <tr>
              <td align="left">0</td>
              <td align="left">Separated mode</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="bluetooth-le-advertising-interval">
        <name>Bluetooth LE advertising interval</name>
        <t>The detection rate performance has a dependency on the BLE advertising interval used. A maximum advertising interval of 4 seconds <bcp14>SHALL</bcp14> be used; for the best detection rate, the advertising interval <bcp14>SHOULD</bcp14> be less than or equal to 2 seconds.</t>
      </section>
      <section anchor="accessory-connections">
        <name>Accessory Connections</name>
        <t>The accessory non-owner service UUID <bcp14>SHALL</bcp14> be 15190001-12F4-C226-88ED-2AC5579F2A85.
This service <bcp14>SHALL</bcp14> use GATT over LE. The non-owner accessory service <bcp14>SHALL</bcp14> be instantiated as a primary service.
The accessory non-owner characteristic UUID <bcp14>SHALL</bcp14> be 8E0C0001-1D68-FB92-BF61-48377421680E.</t>
        <section anchor="byte-transmission-order">
          <name>Byte transmission order</name>
          <t>The characteristic used within this service <bcp14>SHALL</bcp14> be transmitted with the least significant octet first (that is, little endian).</t>
        </section>
        <section anchor="maximum-transmission-unit">
          <name>Maximum transmission unit</name>
          <t>Data fragmentation and reassembly is not defined in this document; therefore, the accessory <bcp14>SHALL NOT</bcp14> request an MTU (Maximum Transmission Unit) smaller than the maximum length of its write responses for the opcodes defined in <xref target="non-owner-controls">Non-owner controls</xref> and <xref target="opcodes"/>.
In other words, all opcode response data must fit within a single write operation.</t>
        </section>
      </section>
      <section anchor="accessory-information">
        <name>Accessory Information</name>
        <t>The following accessory information <bcp14>MUST</bcp14> be persistent through the lifetime of the accessory: <xref target="product-data">Product data</xref>, <xref target="manufacturer-name">Manufacturer name</xref>, <xref target="model-name">Model name</xref>, <xref target="accessory-category">Accessory category</xref>, <xref target="accessory-capabilities">Accessory capabilities</xref>, <xref target="network-id">Network ID</xref>, and <xref target="battery-type">Battery Type</xref>.</t>
        <section anchor="opcodes">
          <name>Opcodes</name>
          <t>The 2-byte opcodes for accessory information are defined in <xref target="accessory-information-opcodes"/>.</t>
          <table anchor="accessory-information-opcodes">
            <name>Accessory Information Opcodes</name>
            <thead>
              <tr>
                <th align="left">Opcode</th>
                <th align="right">Opcode value</th>
                <th align="center">Operands</th>
                <th align="center">GATT subprocedure</th>
                <th align="center">Requirement</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">Get_Product_Data</td>
                <td align="right">0x0003</td>
                <td align="center">None</td>
                <td align="center">Write; To Accessory</td>
                <td align="center">
                  <bcp14>REQUIRED</bcp14></td>
              </tr>
              <tr>
                <td align="left">Get_Product_Data_<br/>Response</td>
                <td align="right">0x0803</td>
                <td align="center">
                  <xref target="product-data">Product Data</xref></td>
                <td align="center">Indications; From Accessory</td>
                <td align="center">
                  <bcp14>REQUIRED</bcp14></td>
              </tr>
              <tr>
                <td align="left">Get_Manufacturer_<br/>Name</td>
                <td align="right">0x0004</td>
                <td align="center">None</td>
                <td align="center">Write; To Accessory</td>
                <td align="center">
                  <bcp14>REQUIRED</bcp14></td>
              </tr>
              <tr>
                <td align="left">Get_Manufacturer_<br/>Name_Response</td>
                <td align="right">0x0804</td>
                <td align="center">
                  <xref target="manufacturer-name">Manufacturer Name</xref></td>
                <td align="center">Indications; From Accessory</td>
                <td align="center">
                  <bcp14>REQUIRED</bcp14></td>
              </tr>
              <tr>
                <td align="left">Get_Model_Name</td>
                <td align="right">0x0005</td>
                <td align="center">None</td>
                <td align="center">Write; To Accessory</td>
                <td align="center">
                  <bcp14>REQUIRED</bcp14></td>
              </tr>
              <tr>
                <td align="left">Get_Model_Name_<br/>Response</td>
                <td align="right">0x0805</td>
                <td align="center">
                  <xref target="model-name">Model Name</xref></td>
                <td align="center">Indications; From Accessory</td>
                <td align="center">
                  <bcp14>REQUIRED</bcp14></td>
              </tr>
              <tr>
                <td align="left">Get_Accessory_<br/>Category</td>
                <td align="right">0x0006</td>
                <td align="center">None</td>
                <td align="center">Write; To Accessory</td>
                <td align="center">
                  <bcp14>REQUIRED</bcp14></td>
              </tr>
              <tr>
                <td align="left">Get_Accessory_<br/>Category_Response</td>
                <td align="right">0x0806</td>
                <td align="center">
                  <xref target="accessory-category">Accessory Category</xref></td>
                <td align="center">Indications; From Accessory</td>
                <td align="center">
                  <bcp14>REQUIRED</bcp14></td>
              </tr>
              <tr>
                <td align="left">Get_Protocol_<br/>Implementation_Version</td>
                <td align="right">0x0007</td>
                <td align="center">None</td>
                <td align="center">Write; To Accessory</td>
                <td align="center">
                  <bcp14>REQUIRED</bcp14></td>
              </tr>
              <tr>
                <td align="left">Get_Protocol_<br/>Implementation_Version_<br/>Response</td>
                <td align="right">0x0807</td>
                <td align="center">
                  <xref target="protocol-implementation-version">Protocol Implementation Version</xref></td>
                <td align="center">Indications; From Accessory</td>
                <td align="center">
                  <bcp14>REQUIRED</bcp14></td>
              </tr>
              <tr>
                <td align="left">Get_Accessory_<br/>Capabilities</td>
                <td align="right">0x0008</td>
                <td align="center">None</td>
                <td align="center">Write; To Accessory</td>
                <td align="center">
                  <bcp14>REQUIRED</bcp14></td>
              </tr>
              <tr>
                <td align="left">Get_Accessory_<br/>Capabilities_Response</td>
                <td align="right">0x0808</td>
                <td align="center">
                  <xref target="accessory-capabilities">Accessory Capabilities</xref></td>
                <td align="center">Indications; From Accessory</td>
                <td align="center">
                  <bcp14>REQUIRED</bcp14></td>
              </tr>
              <tr>
                <td align="left">Get_Network_ID</td>
                <td align="right">0x0009</td>
                <td align="center">None</td>
                <td align="center">Write; To Accessory</td>
                <td align="center">
                  <bcp14>REQUIRED</bcp14></td>
              </tr>
              <tr>
                <td align="left">Get_Network_ID_<br/>Response</td>
                <td align="right">0x0809</td>
                <td align="center">
                  <xref target="network-id">Network ID</xref></td>
                <td align="center">Indications; From Accessory</td>
                <td align="center">
                  <bcp14>REQUIRED</bcp14></td>
              </tr>
              <tr>
                <td align="left">Get_Firmware_Version</td>
                <td align="right">0x000A</td>
                <td align="center">None</td>
                <td align="center">Write; To Accessory</td>
                <td align="center">
                  <bcp14>REQUIRED</bcp14></td>
              </tr>
              <tr>
                <td align="left">Get_Firmware_Version_<br/>Response</td>
                <td align="right">0x080A</td>
                <td align="center">
                  <xref target="firmware-version">Firmware version</xref></td>
                <td align="center">Indications; From Accessory</td>
                <td align="center">
                  <bcp14>REQUIRED</bcp14></td>
              </tr>
              <tr>
                <td align="left">Get_Battery_Type</td>
                <td align="right">0x000B</td>
                <td align="center">None</td>
                <td align="center">Write; To Accessory</td>
                <td align="center">
                  <bcp14>OPTIONAL</bcp14></td>
              </tr>
              <tr>
                <td align="left">Get_Battery_Type_<br/>Response</td>
                <td align="right">0x080B</td>
                <td align="center">
                  <xref target="battery-type">Battery Type</xref></td>
                <td align="center">Indications; From Accessory</td>
                <td align="center">
                  <bcp14>OPTIONAL</bcp14></td>
              </tr>
              <tr>
                <td align="left">Get_Battery_Level</td>
                <td align="right">0x000C</td>
                <td align="center">None</td>
                <td align="center">Write; To Accessory</td>
                <td align="center">
                  <bcp14>OPTIONAL</bcp14></td>
              </tr>
              <tr>
                <td align="left">Get_Battery_Level_<br/>Response</td>
                <td align="right">0x080C</td>
                <td align="center">
                  <xref target="battery-level">Battery Level</xref></td>
                <td align="center">Indications; From Accessory</td>
                <td align="center">
                  <bcp14>OPTIONAL</bcp14></td>
              </tr>
              <tr>
                <td align="left">Get_Network_Version</td>
                <td align="right">0x000D</td>
                <td align="center">None</td>
                <td align="center">Write; To Accessory</td>
                <td align="center">
                  <bcp14>OPTIONAL</bcp14></td>
              </tr>
              <tr>
                <td align="left">Get_Network_Version_<br/>Response</td>
                <td align="right">0x080D</td>
                <td align="center">
                  <xref target="network-version">Network Version</xref></td>
                <td align="center">Indications; From Accessory</td>
                <td align="center">
                  <bcp14>OPTIONAL</bcp14></td>
              </tr>
              <tr>
                <td align="left">RESERVED</td>
                <td align="right">0x000E - 0x005F</td>
                <td align="center"> </td>
                <td align="center"> </td>
                <td align="center"> </td>
              </tr>
              <tr>
                <td align="left">RESERVED (Response)</td>
                <td align="right">0x080E - 0x085F</td>
                <td align="center"> </td>
                <td align="center"> </td>
                <td align="center"> </td>
              </tr>
            </tbody>
          </table>
          <t>These opcodes <bcp14>SHALL</bcp14> be available when the accessory is in separated state.
These opcodes <bcp14>SHALL NOT</bcp14> be available when the accessory is in the near-owner state.
When any opcode is not available, the accessory <bcp14>SHALL</bcp14> return the Invalid_command error as the ResponseStatus in Command_Response.
If an optional opcode is not available, the accessory <bcp14>SHALL</bcp14> return the Invalid_command error as the ResponseStatus in Command_Response.
If any opcode value is commanded that is not supported by the accessory, it <bcp14>SHALL</bcp14> return the Invalid_command error as the ResponseStatus in the Command_Response.
See <xref target="command-response">Command Response</xref> for details.</t>
          <t>In the circumstances that there are multiple non-owner connections, all GATT indication subprocedures defined in <xref target="accessory-information-opcodes"/> <bcp14>SHALL</bcp14> be sent through only to the connection that commanded the affiliated write subprocedure.</t>
          <t>Opcodes should be structured as defined below.</t>
          <table>
            <name>Accessory Opcode Structure</name>
            <thead>
              <tr>
                <th align="center">Bytes</th>
                <th align="center">Description</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="center">0-1</td>
                <td align="center">Opcode value</td>
              </tr>
              <tr>
                <td align="center">2+</td>
                <td align="center">Operand</td>
              </tr>
            </tbody>
          </table>
          <section anchor="product-data">
            <name>Product data</name>
            <t>The Product Data operand represents an 8-byte value that is intended to serve as a unique identifier for the accessory make and model.
This value <bcp14>SHALL</bcp14> be determined during the <xref target="onboarding">onboarding process</xref>.</t>
            <table>
              <name>Product Data Operand</name>
              <thead>
                <tr>
                  <th align="center">Operand name</th>
                  <th align="center">Data type</th>
                  <th align="center">Count</th>
                  <th align="center">Total Size (Bytes)</th>
                  <th align="center">Description</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="center">Product Data</td>
                  <td align="center">Uint8</td>
                  <td align="center">8</td>
                  <td align="center">8</td>
                  <td align="center">See <xref target="product-data">Product data</xref></td>
                </tr>
              </tbody>
            </table>
          </section>
          <section anchor="manufacturer-name">
            <name>Manufacturer name</name>
            <t>The Manufacturer Name operand contains the name of the company whose brand will appear on the accessory, e.g., ”Acme”.</t>
            <table>
              <name>Manufacturer Name Operand</name>
              <thead>
                <tr>
                  <th align="center">Operand name</th>
                  <th align="center">Data type</th>
                  <th align="center">Count</th>
                  <th align="center">Total Size (Bytes)</th>
                  <th align="center">Description</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="center">Manufacturer Name</td>
                  <td align="center">UTF-8</td>
                  <td align="center">64<br/>(maximum)</td>
                  <td align="center">64<br/>(maximum)</td>
                  <td align="center">Manufacturer name</td>
                </tr>
              </tbody>
            </table>
            <t>When the Manufacturer Name is less than 64 bytes, it <bcp14>SHALL</bcp14> be formatted either as:</t>
            <ul spacing="normal">
              <li>
                <t>a string value with length less than 64 bytes</t>
              </li>
              <li>
                <t>a string value that is both zero-terminated and zero-padded up to 64 bytes</t>
              </li>
            </ul>
          </section>
          <section anchor="model-name">
            <name>Model name</name>
            <t>The Model Name operand contains the manufacturer specific model of the accessory.</t>
            <table>
              <name>Model Name Operand</name>
              <thead>
                <tr>
                  <th align="center">Operand name</th>
                  <th align="center">Data type</th>
                  <th align="center">Count</th>
                  <th align="center">Total Size (Bytes)</th>
                  <th align="center">Description</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="center">Model Name</td>
                  <td align="center">UTF-8</td>
                  <td align="center">64<br/>(maximum)</td>
                  <td align="center">64<br/>(maximum)</td>
                  <td align="center">Model name</td>
                </tr>
              </tbody>
            </table>
            <t>When the Model Name is less than 64 bytes, it <bcp14>SHALL</bcp14> be formatted either as:</t>
            <ul spacing="normal">
              <li>
                <t>a string value with length less than 64 bytes</t>
              </li>
              <li>
                <t>a string value that is both zero-terminated and zero-padded up to 64 bytes</t>
              </li>
            </ul>
          </section>
          <section anchor="accessory-category">
            <name>Accessory category</name>
            <t>The Accessory Category operand describes the category the accessory most closely resembles.</t>
            <table>
              <name>Accessory Category Operand</name>
              <thead>
                <tr>
                  <th align="center">Operand name</th>
                  <th align="center">Data type</th>
                  <th align="center">Count</th>
                  <th align="center">Total Size (Bytes)</th>
                  <th align="center">Description</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="center">Accessory Category</td>
                  <td align="center">Uint8</td>
                  <td align="center">8</td>
                  <td align="center">8</td>
                  <td align="center">Byte 0: Uint8 value of <xref target="accessory-category-value">Accessory Category Value</xref> <br/> Byte 1-7: Reserved</td>
                </tr>
              </tbody>
            </table>
          </section>
          <section anchor="protocol-implementation-version">
            <name>Protocol implementation version</name>
            <t>The Protocol Implementation Version operand contains a value indicating an implementation version of these protocols.</t>
            <table>
              <name>Protocol Implementation Version Operand</name>
              <thead>
                <tr>
                  <th align="center">Operand name</th>
                  <th align="center">Data type</th>
                  <th align="center">Count</th>
                  <th align="center">Total Size (Bytes)</th>
                  <th align="center">Description</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="center">Protocol Implementation Version</td>
                  <td align="center">Uint32</td>
                  <td align="center">1</td>
                  <td align="center">4</td>
                  <td align="center">Byte 0 : revision version number <br/> Byte 1 : minor version number <br/> Byte 2-3 : major version number</td>
                </tr>
              </tbody>
            </table>
            <t>The Major.Minor.Revision value associated with this document is 1.0.0.
The equivalent 4-byte value is 0x00010000.</t>
          </section>
          <section anchor="accessory-capabilities">
            <name>Accessory capabilities</name>
            <t>The Accessory Capabilities operand enumerates the various capabilities supported on the accessory as defined in <xref target="_table-accessory-capability"/>.</t>
            <table anchor="_table-accessory-capability">
              <name>Accessory Capabilities Operand</name>
              <thead>
                <tr>
                  <th align="center">Operand name</th>
                  <th align="center">Data type</th>
                  <th align="center">Count</th>
                  <th align="center">Total Size (Bytes)</th>
                  <th align="center">Description</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="center">Accessory Capabilities</td>
                  <td align="center">Uint32</td>
                  <td align="center">1</td>
                  <td align="center">4</td>
                  <td align="center">Bit 0 : Supports play sound (<bcp14>REQUIRED</bcp14>) <br/> Bit 1 : Supports motion detector UT <br/> Bit 2 : Supports identifier lookup by NFC <br/> Bit 3 : Supports identifier lookup by BLE <br/> Bit 4-8 : Reserved for private use <br/> Bit 9-31 : Reserved</td>
                </tr>
              </tbody>
            </table>
            <t>For example, an accessory supporting play sound, motion detector UT, and identifier look-up over BT will have the value set as 0b1011 in binary and 11 as Uint32.</t>
          </section>
          <section anchor="network-id-1">
            <name>Network ID</name>
            <t>The Network ID operand contains the Network ID for the accessory. This is the same information that's in the BT advertisement header in <xref target="_table-payload-format"/>.</t>
            <table>
              <name>Network ID Operand</name>
              <thead>
                <tr>
                  <th align="center">Operand name</th>
                  <th align="center">Data type</th>
                  <th align="center">Count</th>
                  <th align="center">Total Size (Bytes)</th>
                  <th align="center">Description</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="center">Network ID</td>
                  <td align="center">Uint8</td>
                  <td align="center">1</td>
                  <td align="center">1</td>
                  <td align="center">Network ID</td>
                </tr>
              </tbody>
            </table>
          </section>
          <section anchor="firmware-version">
            <name>Firmware version</name>
            <t>The Firmware Version describes the current firmware version running on the accessory.
The firmware revision string <bcp14>SHALL</bcp14> use the x[.y[.z]] format where :</t>
            <ul spacing="normal">
              <li>
                <t>&lt;x&gt; is the major version number, required.</t>
              </li>
              <li>
                <t>&lt;y&gt; is the minor version number, required if it is non zero or if &lt;z&gt; is present.</t>
              </li>
              <li>
                <t>&lt;z&gt; is the revision version number, required if non zero.</t>
              </li>
            </ul>
            <t>The firmware revision <bcp14>MUST</bcp14> follow these rules:</t>
            <ul spacing="normal">
              <li>
                <t>&lt;x&gt; is incremented when there is significant change; for example, 1.0.0, 2.0.0, 3.0.0, and so on.</t>
              </li>
              <li>
                <t>&lt;y&gt; is incremented when minor changes are introduced, such as 1.1.0, 2.1.0, 3.1.0, and so on.</t>
              </li>
              <li>
                <t>&lt;z&gt; is incremented when bug fixes are introduced, such as 1.0.1, 2.0.1, 3.0.1, and so on.</t>
              </li>
              <li>
                <t>Subsequent firmware updates can have a lower &lt;y&gt; version only if &lt;x&gt; is incremented.</t>
              </li>
              <li>
                <t>Subsequent firmware updates can have a lower &lt;z&gt; version only if &lt;x&gt; or &lt;y&gt; is incremented.</t>
              </li>
            </ul>
            <t>Major version <bcp14>MUST</bcp14> not be greater than (2^16 - 1).
Minor and revision version <bcp14>MUST</bcp14> not be greater than (2^8 - 1).
The value <bcp14>MUST</bcp14> change after every firmware update.</t>
            <table>
              <name>Firmware Version Operand</name>
              <thead>
                <tr>
                  <th align="center">Operand name</th>
                  <th align="center">Data type</th>
                  <th align="center">Count</th>
                  <th align="center">Total Size (Bytes)</th>
                  <th align="center">Description</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="center">Firmware version</td>
                  <td align="center">Uint32</td>
                  <td align="center">1</td>
                  <td align="center">4</td>
                  <td align="center">Byte 0 : revision version number <br/> Byte 1  : minor version number <br/> Byte 2:3 :  major version number</td>
                </tr>
              </tbody>
            </table>
            <t>As an example, a Major.Minor.Revision value of 1.0.0 has an equivalent 4-byte value of 0x00010000.</t>
          </section>
          <section anchor="battery-type">
            <name>Battery type</name>
            <t>The Battery type operand describes the battery type used in the accessory.</t>
            <table>
              <name>Battery Type Operand</name>
              <thead>
                <tr>
                  <th align="center">Operand name</th>
                  <th align="center">Data type</th>
                  <th align="center">Count</th>
                  <th align="center">Total Size (Bytes)</th>
                  <th align="center">Description</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="center">Battery Type</td>
                  <td align="center">Uint8</td>
                  <td align="center">1</td>
                  <td align="center">1</td>
                  <td align="center">0x00 : Powered<br/> 0x01 : Non-rechargeable battery<br/> 0x02 : Rechargeable battery<br/> 0x03-0xFF : Reserved</td>
                </tr>
              </tbody>
            </table>
          </section>
          <section anchor="battery-level">
            <name>Battery level</name>
            <t>The Battery level operand indicates the current battery level.</t>
            <table>
              <name>Battery Level Operand</name>
              <thead>
                <tr>
                  <th align="center">Operand name</th>
                  <th align="center">Data type</th>
                  <th align="center">Count</th>
                  <th align="center">Total Size (Bytes)</th>
                  <th align="center">Description</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="center">Battery Level</td>
                  <td align="center">Uint8</td>
                  <td align="center">1</td>
                  <td align="center">1</td>
                  <td align="center">0x00 : Full<br/> 0x01 : Medium<br/> 0x02 : Low<br/> 0x03 : Critically low<br/> 0x04-0xFF : Reserved</td>
                </tr>
              </tbody>
            </table>
          </section>
          <section anchor="network-version">
            <name>Network version</name>
            <t>The Network Version describes the network specification the accessory complies with for the network specified by <xref target="network-id">Network ID</xref>.
The network revision string <bcp14>SHALL</bcp14> use the x[.y[.z]] format where :</t>
            <ul spacing="normal">
              <li>
                <t>&lt;x&gt; is the major version number, required.</t>
              </li>
              <li>
                <t>&lt;y&gt; is the minor version number, required if it is non zero or if &lt;z&gt; is present.</t>
              </li>
              <li>
                <t>&lt;z&gt; is the revision version number, required if non zero.</t>
              </li>
            </ul>
            <t>The network revision <bcp14>MUST</bcp14> follow these rules:</t>
            <ul spacing="normal">
              <li>
                <t>&lt;x&gt; is incremented when there is significant change; for example, 1.0.0, 2.0.0, 3.0.0, and so on.</t>
              </li>
              <li>
                <t>&lt;y&gt; is incremented when minor changes are introduced, such as 1.1.0, 2.1.0, 3.1.0, and so on.</t>
              </li>
              <li>
                <t>&lt;z&gt; is incremented when bug fixes are introduced, such as 1.0.1, 2.0.1, 3.0.1, and so on.</t>
              </li>
              <li>
                <t>Subsequent network updates can have a lower &lt;y&gt; version only if &lt;x&gt; is incremented.</t>
              </li>
              <li>
                <t>Subsequent network updates can have a lower &lt;z&gt; version only if &lt;x&gt; or &lt;y&gt; is incremented.</t>
              </li>
            </ul>
            <t>Major version <bcp14>MUST</bcp14> not be greater than (2^16 - 1).
Minor and revision version <bcp14>MUST</bcp14> not be greater than (2^8 - 1).
The value <bcp14>MUST</bcp14> change after every network update.</t>
            <table>
              <name>Network Version Operand</name>
              <thead>
                <tr>
                  <th align="center">Operand name</th>
                  <th align="center">Data type</th>
                  <th align="center">Count</th>
                  <th align="center">Total Size (Bytes)</th>
                  <th align="center">Description</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="center">Network version</td>
                  <td align="center">Uint32</td>
                  <td align="center">1</td>
                  <td align="center">4</td>
                  <td align="center">Byte 0 : revision version number <br/> Byte 1  : minor version number <br/> Byte 2:3 :  major version number</td>
                </tr>
              </tbody>
            </table>
            <t>As an example, a Major.Minor.Revision value of 1.0.0 has an equivalent 4-byte value of 0x00010000.</t>
          </section>
        </section>
      </section>
      <section anchor="non-owner-finding">
        <name>Non-Owner Finding</name>
        <t>Once a user has been notified of an unknown accessory traveling with them, it is <bcp14>REQUIRED</bcp14> they have the means to physically locate the accessory. This is called non-owner finding of the accessory.</t>
        <section anchor="hardware">
          <name>Hardware</name>
          <t>This is a description of the <bcp14>REQUIRED</bcp14> and <bcp14>RECOMMENDED</bcp14> hardware to be incorporated into the accessory to enable non-owner finding.</t>
        </section>
        <section anchor="motion-detector">
          <name>Motion detector</name>
          <t>The accessory <bcp14>SHOULD</bcp14> include a motion detector that can detect accessory motion reliably (for example, an accelerometer). If the accessory includes an accelerometer, it <bcp14>MUST</bcp14> be configured to detect an orientation change of ±10° along any two axes of the accessory.</t>
          <section anchor="implementation">
            <name>Implementation</name>
            <t>The details in this section apply to those accessories that include a motion detector. Values of the variables referenced are specified in <xref target="_table-motion-detector-time-values"/>.</t>
            <t><br/>
After T<sub>SEPARATED_UT_TIMEOUT</sub> in separated state, the accessory <bcp14>MUST</bcp14> enable the motion detector to detect any motion within T<sub>SEPARATED_UT_SAMPLING_RATE1</sub>.</t>
            <t>If motion is not detected within the T<sub>SEPARATED_UT_SAMPLING_RATE1</sub> period, the accessory <bcp14>MUST</bcp14> stay in this state until it exits separated state.</t>
            <t>If motion is detected within the T<sub>SEPARATED_UT_SAMPLING_RATE1</sub> the accessory <bcp14>MUST</bcp14> play a sound.
After first motion is detected, the movement detection period is decreased to T<sub>SEPARATED_UT_SAMPLING_RATE2</sub>.
The accessory <bcp14>MUST</bcp14> continue to play a sound for every detected motion.
The accessory <bcp14>SHALL</bcp14> disable the motion detector for T<sub>SEPARATED_UT_BACKOFF</sub> under either of the following conditions:</t>
            <ul spacing="normal">
              <li>
                <t>Motion has been detected for 20 seconds at T<sub>SEPARATED_UT_SAMPLING_RATE2</sub> periods.</t>
              </li>
              <li>
                <t>Ten sounds are played.</t>
              </li>
            </ul>
            <t>If the accessory is still in separated state at the end of T<sub>SEPARATED_UT_BACKOFF</sub>, the UT behavior <bcp14>MUST</bcp14> restart.</t>
            <t>A Bluetooth LE connection from an associated device <bcp14>MUST</bcp14> reset the separated behavior.</t>
            <table anchor="_table-motion-detector-time-values">
              <name>Motion Detector Time Values</name>
              <thead>
                <tr>
                  <th align="left">Name</th>
                  <th align="center">Value</th>
                  <th align="left">Description</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="left">T<sub>SEPARATED_UT_SAMPLING_RATE1</sub></td>
                  <td align="center">10 seconds</td>
                  <td align="left">Sampling rate when motion detector is enabled in separated state.</td>
                </tr>
                <tr>
                  <td align="left">T<sub>SEPARATED_UT_SAMPLING_RATE2</sub></td>
                  <td align="center">0.5 seconds</td>
                  <td align="left">Motion detector sampling rate when movement is detected in separated state.</td>
                </tr>
                <tr>
                  <td align="left">T<sub>SEPARATED_UT_BACKOFF</sub></td>
                  <td align="center">6 hours</td>
                  <td align="left">Period to disable motion detector if accessory is in separated state.</td>
                </tr>
                <tr>
                  <td align="left">T<sub>SEPARATED_UT_TIMEOUT</sub></td>
                  <td align="center">random value between 8-24 hours chosen from a uniform distribution</td>
                  <td align="left">Time span in separated state before enabling motion detector.</td>
                </tr>
              </tbody>
            </table>
          </section>
        </section>
        <section anchor="sound-maker">
          <name>Sound maker</name>
          <t>The accessory <bcp14>MUST</bcp14> include a sound maker (for example, a speaker) to play sound when in separated state, either periodically or when motion is detected.</t>
          <t>It <bcp14>MUST</bcp14> also play sound when a non-owner tries to locate the accessory by initiating a play sound command from a non-owner device when the accessory is in range and connectable through Bluetooth LE.
The sound maker <bcp14>MUST</bcp14> emit a sound with minimum 60 Phon peak loudness as defined by ISO 532-1:2017. The loudness <bcp14>MUST</bcp14> be measured in free acoustic space substantially free of obstacles that would affect the pressure measurement. The loudness <bcp14>MUST</bcp14> be measured by a calibrated (to the Pascal) free field microphone 25 cm from the accessory suspended in free space.</t>
        </section>
        <section anchor="non-owner-controls">
          <name>Non-owner controls</name>
          <t>Non-owner controls <bcp14>SHALL</bcp14> use the same service and characteristic UUIDs as defined in <xref target="accessory-connections">Accessory Connections</xref>.</t>
          <t>These controls allow a non-owner to locate the accessory by playing a sound as well as fetch an encrypted payload used to retrieve the identifier of the device.</t>
          <t>These 2-byte opcodes are defined in <xref target="_table-non-owner-controls-opcodes"/>.</t>
          <table anchor="_table-non-owner-controls-opcodes">
            <name>Non-Owner Controls Opcodes</name>
            <thead>
              <tr>
                <th align="center">Opcode</th>
                <th align="center">Opcode  value</th>
                <th align="center">Operands</th>
                <th align="center">GATT subprocedure</th>
                <th align="center">Requirement</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="center">Sound_Start</td>
                <td align="center">0x0300</td>
                <td align="center">None</td>
                <td align="center">Write; To accessory</td>
                <td align="center">
                  <bcp14>REQUIRED</bcp14></td>
              </tr>
              <tr>
                <td align="center">Sound_Stop</td>
                <td align="center">0x0301</td>
                <td align="center">None</td>
                <td align="center">Write; To accessory</td>
                <td align="center">
                  <bcp14>REQUIRED</bcp14></td>
              </tr>
              <tr>
                <td align="center">Command_Response</td>
                <td align="center">0x0302</td>
                <td align="center">
                  <xref target="command-response">Command Response</xref></td>
                <td align="center">Indications; From accessory</td>
                <td align="center">
                  <bcp14>REQUIRED</bcp14></td>
              </tr>
              <tr>
                <td align="center">Sound_Completed</td>
                <td align="center">0x0303</td>
                <td align="center">None</td>
                <td align="center">Indications; From accessory</td>
                <td align="center">
                  <bcp14>REQUIRED</bcp14></td>
              </tr>
              <tr>
                <td align="center">Get_Identifier</td>
                <td align="center">0x0404</td>
                <td align="center">None</td>
                <td align="center">Write; To accessory</td>
                <td align="center">
                  <bcp14>OPTIONAL</bcp14></td>
              </tr>
              <tr>
                <td align="center">Get_Identifier_Response</td>
                <td align="center">0x0405</td>
                <td align="center">
                  <xref target="identifier-payload">Identifier Payload</xref></td>
                <td align="center">Indications; From accessory</td>
                <td align="center">
                  <bcp14>OPTIONAL</bcp14></td>
              </tr>
              <tr>
                <td align="center">RESERVED for private use</td>
                <td align="center">0x0304</td>
                <td align="center"> </td>
                <td align="center"> </td>
                <td align="center"> </td>
              </tr>
              <tr>
                <td align="center">RESERVED</td>
                <td align="center">0x0305 - 0x0319</td>
                <td align="center"> </td>
                <td align="center"> </td>
                <td align="center"> </td>
              </tr>
              <tr>
                <td align="center">RESERVED for private use</td>
                <td align="center">0x031A</td>
                <td align="center"> </td>
                <td align="center"> </td>
                <td align="center"> </td>
              </tr>
              <tr>
                <td align="center">RESERVED</td>
                <td align="center">0x031B - 0x031F</td>
                <td align="center"> </td>
                <td align="center"> </td>
                <td align="center"> </td>
              </tr>
              <tr>
                <td align="center">RESERVED for private use</td>
                <td align="center">0x0320 - 0x033F</td>
                <td align="center"> </td>
                <td align="center"> </td>
                <td align="center"> </td>
              </tr>
              <tr>
                <td align="center">RESERVED</td>
                <td align="center">0x0340 - 0x035F</td>
                <td align="center"> </td>
                <td align="center"> </td>
                <td align="center"> </td>
              </tr>
              <tr>
                <td align="center">RESERVED (Response)</td>
                <td align="center">0x0406 - 0x041F</td>
                <td align="center"> </td>
                <td align="center"> </td>
                <td align="center"> </td>
              </tr>
              <tr>
                <td align="center">RESERVED for private use (Response)</td>
                <td align="center">0x0420 - 0x043F</td>
                <td align="center"> </td>
                <td align="center"> </td>
                <td align="center"> </td>
              </tr>
              <tr>
                <td align="center">RESERVED (Response)</td>
                <td align="center">0x0440 - 0x045F</td>
                <td align="center"> </td>
                <td align="center"> </td>
                <td align="center"> </td>
              </tr>
            </tbody>
          </table>
          <t>Sound_Start and Sound_Stop <bcp14>SHALL</bcp14> only be available to the platform when the accessory is in the separated state.</t>
          <t>In all other states, the accessory <bcp14>SHALL</bcp14> return the Invalid_command error as the ResponseStatus in Command_Response.</t>
          <t>If <xref target="identifier-retrieval-over-bluetooth-le">Identifer Retrieval over Bluetooth LE</xref> is supported, Get_Identifier <bcp14>SHALL</bcp14> only be available when in identifier read state; otherwise, it <bcp14>MUST</bcp14> send <xref target="command-response">Command_Response</xref> with the Invalid_command as the ResponseStatus.</t>
          <t>The identifier read state is discussed further in <xref target="identifier-payload">Identifier Payload</xref>.</t>
          <t>In the circumstances that there are multiple non-owner connections, all GATT indication subprocedures defined in <xref target="_table-non-owner-controls-opcodes"/> <bcp14>SHALL</bcp14> be sent through only to the connection that commanded the affiliated write subprocedure.
Sound_Completed <bcp14>MAY</bcp14> be sent over all non-owner connections.</t>
          <section anchor="play-sound">
            <name>Play sound</name>
            <t>The Sound_Start opcode is used to play sound on the sound maker of the accessory. The sound maker <bcp14>MUST</bcp14> play sound for a minimum duration of 5 seconds and a maximum duration of 30 seconds. The <bcp14>RECOMMENDED</bcp14> duration is 12 seconds.</t>
            <ul spacing="normal">
              <li>
                <t>The accessory <bcp14>SHALL</bcp14> confirm the start of the play sound procedure by sending a <xref target="command-response">Command_Response</xref> with the corresponding CommandOpCode and a ResponseStatus value of Success.</t>
              </li>
              <li>
                <t>Once the play sound action is completed, the accessory sends the Sound_Completed message.</t>
              </li>
              <li>
                <t>The Sound_Stop opcode is used to stop an ongoing sound request.</t>
              </li>
              <li>
                <t>If the sound event is completed or was not initiated by the connected non-owner device, the accessory responds with the Invalid_state ResponseStatus code.</t>
              </li>
              <li>
                <t>If the accessory does not support the play sound procedure, it responds with Invalid_command ResponseStatus code.</t>
              </li>
              <li>
                <t>If a Sound_Start procedure is initiated when another play sound action is in progress, it rejects with Invalid_state error code.</t>
              </li>
              <li>
                <t>The accessory <bcp14>SHALL</bcp14> confirm the completion of the stop sound procedure by sending the Sound_Completed message.</t>
              </li>
            </ul>
            <section anchor="command-response">
              <name>Command Response</name>
              <t>There are 2 components of the command response operands: CommandOpCode and ResponseStatus. The CommandOpCode operand indicates the procedure that the accessory is responding to and ResponseStatus operand indicates the status of the response.
 The accessory <bcp14>SHALL</bcp14> respond to any invalid opcode with Command_Response and Invalid_command as the ResponseStatus.</t>
              <table>
                <name>Command Response Operands</name>
                <thead>
                  <tr>
                    <th align="left">Operand name</th>
                    <th align="right">Data type</th>
                    <th align="center">Count</th>
                    <th align="center">Total Size (Bytes)</th>
                    <th align="center">Description</th>
                  </tr>
                </thead>
                <tbody>
                  <tr>
                    <td align="left">CommandOpCode</td>
                    <td align="right">Uint16</td>
                    <td align="center">1</td>
                    <td align="center">2</td>
                    <td align="center">The control procedure matching this response</td>
                  </tr>
                  <tr>
                    <td align="left">ResponseStatus</td>
                    <td align="right">Uint16</td>
                    <td align="center">1</td>
                    <td align="center">2</td>
                    <td align="center">0x0000 : Success<br/>0x0001 : Invalid_state<br/>0x0002 : Invalid_configuration<br/>0x0003 : Invalid_length<br/>0x0004 : Invalid_param<br/> 0x0005-0xFFFE : Reserved<br/> 0xFFFF : Invalid_command</td>
                  </tr>
                </tbody>
              </table>
            </section>
          </section>
          <section anchor="identifier-payload">
            <name>Identifier Payload</name>
            <t>The Get_Identifier opcode is used to retrieve identifier lookup payload over Bluetooth LE.
To enable this opcode, the accessory <bcp14>MUST</bcp14> be in the identifier read state.
To enter the identifier read state, a user action on the accessory <bcp14>MUST</bcp14> be performed (for example, press and hold a button for 10 seconds).
The identifier read state <bcp14>MUST</bcp14> be enabled for 5 minutes once the user action on the accessory is successfully performed.
When the accessory is in this mode, it <bcp14>MUST</bcp14> respond with Get_Identifier_Response opcode and Identifier Payload operand.</t>
            <table anchor="_table-id-payload-over-bt">
              <name>Identifier Payload Over Bluetooth</name>
              <thead>
                <tr>
                  <th align="center">Operand name</th>
                  <th align="center">Data type</th>
                  <th align="center">Count</th>
                  <th align="center">Total Size (Bytes)</th>
                  <th align="center">Description</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="center">Identifier Payload</td>
                  <td align="center">Uint8</td>
                  <td align="center">defined by accessory</td>
                  <td align="center">defined by accessory</td>
                  <td align="center">The encrypted identifier as an array of bytes.</td>
                </tr>
              </tbody>
            </table>
            <t>It is <bcp14>REQUIRED</bcp14> that the encrypted identifier (which in some cases is the product serial number) be non-identifiable.</t>
            <t>If the accessory is not in identifier read state, it <bcp14>MUST</bcp14> send <xref target="command-response">Command_Response</xref> with the Invalid_command as the ResponseStatus. Further considerations for how these operands should be implemented are discussed in <xref target="design-of-encrypted-identifier-look-up">Design of encrypted identifier look-up</xref>.</t>
          </section>
        </section>
        <section anchor="alternate-finding-hardware">
          <name>Alternate finding hardware</name>
          <t>The accessory <bcp14>SHOULD</bcp14> provide alternate means to help find it, e.g. by vibrating or flashing lights, via a platform-compatible method. Future versions of this document will consider support for haptics and lights.</t>
        </section>
        <section anchor="recommended-finding-options">
          <name>Recommended Finding Options</name>
          <t><xref target="accessory-finding-hw"/> lists two <bcp14>RECOMMENDED</bcp14> options on the set of technology in an accessory to make it findable. Given that a sound maker is <bcp14>REQUIRED</bcp14>, the accessory maker <bcp14>SHALL</bcp14> at very least implement Option A.</t>
          <table anchor="accessory-finding-hw">
            <name>Accessory Finding Hardware Options</name>
            <thead>
              <tr>
                <th align="left"> </th>
                <th align="center">Option A</th>
                <th align="center">Option B</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left"> </td>
                <td align="center">Good</td>
                <td align="center">Better</td>
              </tr>
              <tr>
                <td align="left">Sound maker</td>
                <td align="center">X</td>
                <td align="center">X</td>
              </tr>
              <tr>
                <td align="left">Haptics</td>
                <td align="center"> </td>
                <td align="center">X</td>
              </tr>
              <tr>
                <td align="left">Lights</td>
                <td align="center"> </td>
                <td align="center">X</td>
              </tr>
            </tbody>
          </table>
        </section>
        <section anchor="future-hardware">
          <name>Future hardware</name>
          <t>Future technologies for finding <bcp14>MAY</bcp14> be considered in revisions of this document.</t>
        </section>
      </section>
      <section anchor="disablement">
        <name>Disablement</name>
        <t>The accessory <bcp14>SHALL</bcp14> have a way to be disabled such that its future locations cannot be seen by its owner. Disablement <bcp14>SHALL</bcp14> be done via some physical action (e.g., button press, gesture, removal of battery, etc.).</t>
        <section anchor="disablement-instructions">
          <name>Disablement instructions</name>
          <t>The accessory manufacturer <bcp14>SHALL</bcp14> provide both a text description of how to disable the accessory as well as a visual depiction (e.g. image, diagram, animation, etc.) that <bcp14>MUST</bcp14> be available when the platform is online and OPTIONALLY when offline. Disablement procedure or instructions CAN change with accessory firmware updates. These are provided as part of the <xref target="onboarding">onboarding process</xref>.</t>
        </section>
      </section>
      <section anchor="identification">
        <name>Identification</name>
        <t>The accessory <bcp14>MUST</bcp14> include a way to uniquely identify it - either via a serial number or other privacy-preserving solution. Guidelines for serial numbers only apply if the accessory supports identification via a serial number.</t>
        <section anchor="serial-number-identification">
          <name>Serial number identification</name>
          <t>If a serial number is available, it <bcp14>SHALL</bcp14> be printed and be easily accessible on the accessory. The serial number <bcp14>MUST</bcp14> be unique for each product ID.</t>
        </section>
        <section anchor="identifier-retrieval">
          <name>Identifier retrieval capability</name>
          <t>The identifier payload <bcp14>SHALL</bcp14> be readable either through NFC tap (see <xref target="identifier-over-nfc">Identifier over NFC</xref>) or Bluetooth LE (see <xref target="identifier-retrieval-over-bluetooth-le">Identifier Retrieval over Bluetooth LE</xref> ).</t>
        </section>
        <section anchor="identifier-retrieval-over-bluetooth-le">
          <name>Identifier retrieval over Bluetooth LE</name>
          <t>For privacy reasons, accessories that support identifier retrieval for identifiers not included in the advertising packet over Bluetooth LE <bcp14>MUST</bcp14> have a physical mechanism, for example, a button, that <bcp14>SHALL</bcp14> be required to
enable the Get_Identifier opcode, as discussed in <xref target="identifier-payload">Identifier Payload</xref>.</t>
          <t>The accessory manufacturer <bcp14>SHALL</bcp14> provide both a text description of how to enable identifier retrieval over Bluetooth LE, as well as a visual depiction (e.g. image, diagram, animation, etc.) that <bcp14>MUST</bcp14> be available when the platform is online and OPTIONALLY when offline. The description and visual depiction CAN change with accessory firmware updates. These are provided as part of the <xref target="onboarding">onboarding process</xref>.</t>
        </section>
        <section anchor="identifier-from-server">
          <name>Identifier retrieval from a server</name>
          <t>For security reasons, the identifier payload returned from an accessory in the paired state <bcp14>SHALL</bcp14> be encrypted.</t>
        </section>
        <section anchor="identifier-over-nfc">
          <name>Identifier over NFC</name>
          <t>For those accessories that support identifier retrieval over NFC, an associated accessory <bcp14>SHALL</bcp14> advertise the whole URL with arguments as the payload over NFC. The payload <bcp14>SHALL</bcp14> look like the URL shown below.
"https://{URL}?pid=%04x&amp;b=%02x&amp;fv=%08x&amp;e=%s"</t>
          <table anchor="_table-temp-identifier-lookup-url-arguments">
            <name>Identifier Lookup URL-arguments</name>
            <thead>
              <tr>
                <th align="center">URL argument</th>
                <th align="center">URL Argument Type</th>
                <th align="center">Notes</th>
                <th align="center">Reference</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="center">b</td>
                <td align="center">hex string</td>
                <td align="center">Battery Level  (Optional)</td>
                <td align="center">
                  <xref target="battery-level">Battery Level</xref></td>
              </tr>
              <tr>
                <td align="center">bt</td>
                <td align="center">hex string</td>
                <td align="center">BT Mac address (Optional)</td>
                <td align="center">
                  <xref target="mac-address">MAC address</xref></td>
              </tr>
              <tr>
                <td align="center">fv</td>
                <td align="center">hex string</td>
                <td align="center">Firmware version (Optional)</td>
                <td align="center">
                  <xref target="firmware-version">Firmware version</xref></td>
              </tr>
              <tr>
                <td align="center">e</td>
                <td align="center">hex string</td>
                <td align="center">Encrypted Identifier (Required)</td>
                <td align="center">
                  <xref target="identifier-payload">Identifier Payload</xref></td>
              </tr>
              <tr>
                <td align="center">pid</td>
                <td align="center">hex string</td>
                <td align="center">Product Data (Required)</td>
                <td align="center">
                  <xref target="product-data">Product Data</xref></td>
              </tr>
            </tbody>
          </table>
          <t>The URL <bcp14>SHALL</bcp14> be hosted by the network provider. The URL <bcp14>SHALL</bcp14> decrypt the identifier payload and return the identifier of the accessory in a form that can be rendered in the platform's HTML view.
One approach to exchange the URL with the accessory, is when the accessory owner associates the accessory to a network provider.
When a user performs NFC Tap and the accessory is in associated state, the encrypted identifier encoded in hex string <bcp14>SHALL</bcp14> be an argument ("e") passed to the identifier retrieval URL.
When a user performs NFC Tap and the accessory is not in associated state, the behavior is undefined and is beyond the scope of this spec.</t>
        </section>
      </section>
      <section anchor="owner-registry">
        <name>Owner registry</name>
        <t>Verifiable identity information of the owner of an accessory at time of association <bcp14>SHALL</bcp14> be recorded and associated with the identifier of the accessory, e.g., phone number, email address.</t>
        <section anchor="obfuscated-owner-info">
          <name>Obfuscated owner information</name>
          <t>A limited amount of obfuscated owner information from the owner registry <bcp14>SHALL</bcp14> be made available to the platform along with a <eref target="identifier-retrieval">retrieved identifier</eref>. This information <bcp14>SHALL</bcp14> be part of the response of the <eref target="identifier-from-server">identifier retrieval from a server</eref> which can be rendered in a platform's HTML view.</t>
          <t>This <bcp14>MUST</bcp14> include at least one of the following:</t>
          <ul spacing="normal">
            <li>
              <t>the last four digits of the owner's telephone number. e.g., (***) ***-5555</t>
            </li>
            <li>
              <t>an email address with the first letter of the username and entity visible, as well as the entire extension. e.g., b********@i*****.com</t>
            </li>
          </ul>
        </section>
        <section anchor="persistence">
          <name>Persistence</name>
          <t>The owner registry <bcp14>SHOULD</bcp14> be stored for a minimum of 25 days after an owner has unassociated an accessory. After the elapsed period, the data <bcp14>SHOULD</bcp14> be deleted.</t>
        </section>
        <section anchor="availability-for-law-enforcement">
          <name>Availability for law enforcement</name>
          <t>Available ownership registry information <bcp14>SHOULD</bcp14> be produced in response to a valid law enforcement request seeking information related to the misuse of location-tracking accessories provided that the request is submitted pursuant to defined procedures for obtaining such information. Network providers <bcp14>SHOULD</bcp14> define their own procedures for submission of valid legal requests from law enforcement.</t>
        </section>
      </section>
      <section anchor="NFC-requirements">
        <name>NFC Requirements</name>
        <t>Accessories that include NFC (see <xref target="serial-number-identification">Serial number identification</xref>) <bcp14>MUST</bcp14> support the requirements from this subsecction.</t>
        <section anchor="hardware-1">
          <name>Hardware</name>
          <t>These are the hardware requirements for accessories that include NFC:</t>
          <ul spacing="normal">
            <li>
              <t>The accessory <bcp14>MUST</bcp14> use a programmable NFC tag.</t>
            </li>
            <li>
              <t>NFC tags <bcp14>MUST</bcp14> use the NFC Data Exchange Format (NDEF) as defined by NFC Forum™ in NDEF 1.0 NFCForum‑TS‑NDEF 1.0.
An NDEF message is defined as a group of individual NDEF records as defined by NFC Forum™ in NFC Record Type Definition (RTD) RTD 1.0 NFCForum‑TS‑RTD 1.0.</t>
            </li>
            <li>
              <t>The payload for NFC tags <bcp14>MUST</bcp14> use NDEF URI Record Type Definition as defined by NFC Forum™ in URI Record Type Definition RTD‑URI 1.0 NFCForum‑TS‑RTD URI 1.0.</t>
            </li>
            <li>
              <t>NFC tag types <bcp14>MUST</bcp14> be type 2 or greater.</t>
            </li>
            <li>
              <t>The NFC tag <bcp14>SHALL</bcp14> not be scannable when the accessory is still in the packaging.</t>
            </li>
            <li>
              <t>The payload <bcp14>MUST</bcp14> be scannable when holding an NFC-enabled device near the center of the NFC tag on the accessory. Recommended NFC tag performance guidelines are defined by NFC Forum™ in Tag Performance Requirements Document.</t>
            </li>
            <li>
              <t>The NFC implemention of the accessory <bcp14>MUST</bcp14> be configured as a NFC tag.</t>
            </li>
          </ul>
          <t>NFC specification documents can be found here <xref target="NFCForum"/>.</t>
        </section>
      </section>
    </section>
    <section anchor="accessory-category-value">
      <name>Accessory Category Value</name>
      <t>Accessory manufacturer’s <bcp14>MUST</bcp14> pick an accessory category value that closest resembles their physical product.
If none of the accessory categories provided in <xref target="_table-accessory-category-values"/> match the physical product, Other <bcp14>MUST</bcp14> be chosen.</t>
      <table anchor="_table-accessory-category-values">
        <name>Accessory Category Values</name>
        <thead>
          <tr>
            <th align="left">Accessory Category Name</th>
            <th align="center">Value</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">Location Tracker</td>
            <td align="center">1</td>
          </tr>
          <tr>
            <td align="left">Other</td>
            <td align="center">128</td>
          </tr>
          <tr>
            <td align="left">Luggage</td>
            <td align="center">129</td>
          </tr>
          <tr>
            <td align="left">Backpack</td>
            <td align="center">130</td>
          </tr>
          <tr>
            <td align="left">Jacket</td>
            <td align="center">131</td>
          </tr>
          <tr>
            <td align="left">Coat</td>
            <td align="center">132</td>
          </tr>
          <tr>
            <td align="left">Shoes</td>
            <td align="center">133</td>
          </tr>
          <tr>
            <td align="left">Bike</td>
            <td align="center">134</td>
          </tr>
          <tr>
            <td align="left">Scooter</td>
            <td align="center">135</td>
          </tr>
          <tr>
            <td align="left">Stroller</td>
            <td align="center">136</td>
          </tr>
          <tr>
            <td align="left">Wheelchair</td>
            <td align="center">137</td>
          </tr>
          <tr>
            <td align="left">Boat</td>
            <td align="center">138</td>
          </tr>
          <tr>
            <td align="left">Helmet</td>
            <td align="center">139</td>
          </tr>
          <tr>
            <td align="left">Skateboard</td>
            <td align="center">140</td>
          </tr>
          <tr>
            <td align="left">Skis</td>
            <td align="center">141</td>
          </tr>
          <tr>
            <td align="left">Snowboard</td>
            <td align="center">142</td>
          </tr>
          <tr>
            <td align="left">Surfboard</td>
            <td align="center">143</td>
          </tr>
          <tr>
            <td align="left">Camera</td>
            <td align="center">144</td>
          </tr>
          <tr>
            <td align="left">Laptop</td>
            <td align="center">145</td>
          </tr>
          <tr>
            <td align="left">Watch</td>
            <td align="center">146</td>
          </tr>
          <tr>
            <td align="left">Flash drive</td>
            <td align="center">147</td>
          </tr>
          <tr>
            <td align="left">Drone</td>
            <td align="center">148</td>
          </tr>
          <tr>
            <td align="left">Headphones</td>
            <td align="center">149</td>
          </tr>
          <tr>
            <td align="left">Earphones</td>
            <td align="center">150</td>
          </tr>
          <tr>
            <td align="left">Inhaler</td>
            <td align="center">151</td>
          </tr>
          <tr>
            <td align="left">Sunglasses</td>
            <td align="center">152</td>
          </tr>
          <tr>
            <td align="left">Handbag</td>
            <td align="center">153</td>
          </tr>
          <tr>
            <td align="left">Wallet</td>
            <td align="center">154</td>
          </tr>
          <tr>
            <td align="left">Umbrella</td>
            <td align="center">155</td>
          </tr>
          <tr>
            <td align="left">Water bottle</td>
            <td align="center">156</td>
          </tr>
          <tr>
            <td align="left">Tools or tool box</td>
            <td align="center">157</td>
          </tr>
          <tr>
            <td align="left">Keys</td>
            <td align="center">158</td>
          </tr>
          <tr>
            <td align="left">Smart case</td>
            <td align="center">159</td>
          </tr>
          <tr>
            <td align="left">Remote</td>
            <td align="center">160</td>
          </tr>
          <tr>
            <td align="left">Hat</td>
            <td align="center">161</td>
          </tr>
          <tr>
            <td align="left">Motorbike</td>
            <td align="center">162</td>
          </tr>
          <tr>
            <td align="left">Consumer electronic device</td>
            <td align="center">163</td>
          </tr>
          <tr>
            <td align="left">Apparel</td>
            <td align="center">164</td>
          </tr>
          <tr>
            <td align="left">Transportation device</td>
            <td align="center">165</td>
          </tr>
          <tr>
            <td align="left">Sports equipment</td>
            <td align="center">166</td>
          </tr>
          <tr>
            <td align="left">Personal item</td>
            <td align="center">167</td>
          </tr>
          <tr>
            <td align="left">Reserved for future use</td>
            <td align="center">2-127, 168+</td>
          </tr>
        </tbody>
      </table>
    </section>
    <section anchor="firmware-updates">
      <name>Firmware Updates</name>
      <t>The accessory <bcp14>SHOULD</bcp14> have a mechanism for the manufacturer to provide firmware updates.</t>
      <section anchor="backwards-compatibility">
        <name>Backwards Compatibility</name>
        <section anchor="existing-trackers">
          <name>Existing trackers</name>
          <t>Existing trackers should be updated on a best-effort basis to implement the protocols and practices outlined above.</t>
        </section>
      </section>
    </section>
    <section anchor="platform-support-for-unwanted-tracking">
      <name>Platform Support for Unwanted Tracking</name>
      <t>This section details the requirements and recommendations for platforms to be compatible with the accessory protocol behavior described in the document.</t>
      <t>TODO</t>
    </section>
    <section anchor="onboarding">
      <name>Onboarding</name>
      <t>Accessory manufacturers <bcp14>MUST</bcp14> follow a minimum set of steps for their accessories to be detectable by platforms such as adding their Network ID value to the (TODO: Section Finding Network Registry has been removed).</t>
      <t>During onboarding, a product data registry <bcp14>SHALL</bcp14> be created and maintained by the network provider for all accessory manufacturers participating in their network. Accessory manufacturers will work with the network providers they participate in, to provide information such as:</t>
      <ul spacing="normal">
        <li>
          <t>Product Data: an 8-byte string representing a unique identifier for a product. See <xref target="product-data">Product Data</xref>.</t>
        </li>
        <li>
          <t>Disablement Instructions: information on how a user can disable the tracker.</t>
        </li>
        <li>
          <t>Identifier Look-up Over Bluetooth Instructions: visual depictions for enabling identifier look-up over Bluetooth LE.</t>
        </li>
        <li>
          <t>Identifier Look-up: a method to retrieve the obfuscated owner information and possibly identifier.</t>
        </li>
        <li>
          <t>Product Name: a string representing the accessory make and model associated with the Product Data string.</t>
        </li>
      </ul>
      <t>TODO</t>
      <section anchor="network-providers">
        <name>Network providers</name>
        <t>Companies that have their own accessory-locating networks will need to create infrastructure to support the scaled retrieval of disablement instructions and product images.</t>
        <t>This section defines the <strong>Accessory Network Protocol specification</strong>, outlining the communication contract with a network provider. When a client platform detects an unwanted tracking accessory, it sends a network request to the respective network provider's service to retrieve the information needed to display an unwanted tracking alert to the user. The service response returns accessory metadata, capability descriptors, localized user-facing strings, and asset URLs required to render the UT alert and associated informational screens.</t>
        <section anchor="scope">
          <name>Scope</name>
          <t>This section is intended for <strong>network providers</strong> who wish to adopt the accessory Network API to support cross-platform unwanted tracking detection for any accessory participating in a network.</t>
        </section>
      </section>
      <section anchor="accessory-info-specifications">
        <name>Accessory Info Specifications</name>
        <section anchor="accessoryinfo-service">
          <name>AccessoryInfo Service</name>
          <t>The HTTP endpoint used to query accessory information from a network provider is described in <xref target="_table-accessoryinfo-endpoint"/>.</t>
          <table anchor="_table-accessoryinfo-endpoint">
            <name>AccessoryInfo Service Endpoint</name>
            <thead>
              <tr>
                <th align="left">HTTP Method</th>
                <th align="left">URL</th>
                <th align="left">Description</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">POST</td>
                <td align="left">https://{host}/{endpoint}</td>
                <td align="left">AccessoryInfo Query Service</td>
              </tr>
            </tbody>
          </table>
        </section>
        <section anchor="accessoryinfo-url">
          <name>AccessoryInfo URL</name>
          <t>The AccessoryInfo endpoint URLs for each supported network provider are listed in <xref target="_table-accessoryinfo-urls"/>.</t>
          <table anchor="_table-accessoryinfo-urls">
            <name>AccessoryInfo Endpoint URLs by Network Provider</name>
            <thead>
              <tr>
                <th align="left">Network Provider</th>
                <th align="left">Endpoint URL</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">Apple Inc.</td>
                <td align="left">https://findmyut.apple.com/productinfo</td>
              </tr>
              <tr>
                <td align="left">Google LLC</td>
                <td align="left">https://spot-pa.googleapis.com/lookup</td>
              </tr>
            </tbody>
          </table>
        </section>
        <section anchor="accessoryinfo-request">
          <name>AccessoryInfo Request</name>
          <t><strong>Request Headers:</strong></t>
          <t>The HTTP request headers required when making an AccessoryInfo request are described in <xref target="_table-accessoryinfo-request-headers"/>.</t>
          <table anchor="_table-accessoryinfo-request-headers">
            <name>AccessoryInfo Request Headers</name>
            <thead>
              <tr>
                <th align="left">Name</th>
                <th align="left">Description</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">Accept</td>
                <td align="left">Only “application/json” supported</td>
              </tr>
              <tr>
                <td align="left">Accept-Language</td>
                <td align="left">Language to be used for localization<br/>Example: “en-US, en”</td>
              </tr>
            </tbody>
          </table>
          <t><strong>Request Parameters (JSON Fields):</strong></t>
          <t>The request parameters required when making an AccessoryInfo request are described in <xref target="_table-accessoryinfo-request-params"/>.</t>
          <table anchor="_table-accessoryinfo-request-params">
            <name>AccessoryInfo Request Parameters</name>
            <thead>
              <tr>
                <th align="left">Name</th>
                <th align="left">Data Type</th>
                <th align="left">Description</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">▤ products</td>
                <td align="left">JSON Array (Required)</td>
                <td align="left">A JSON array containing one or more accessory product objects for which information is being requested.</td>
              </tr>
              <tr>
                <td align="left">  └ version</td>
                <td align="left">String (Required)</td>
                <td align="left">The network version defines which network standard the network provider is compatible with.</td>
              </tr>
              <tr>
                <td align="left">  └ networkId</td>
                <td align="left">Hex-String<br/>(lowercase zero padded) (Required)</td>
                <td align="left">Specifies the Network ID associated with the network provider, present in the BT advertisement header.</td>
              </tr>
              <tr>
                <td align="left">  └ productData</td>
                <td align="left">Hex-String<br/>(lowercase zero padded) (Required)</td>
                <td align="left">Unique identifier of the accessory make and model.</td>
              </tr>
              <tr>
                <td align="left">  └ ▦ firmwareData</td>
                <td align="left">JSON Object (Required)</td>
                <td align="left">A JSON object encapsulating firmware-related parameters associated with the accessory.</td>
              </tr>
              <tr>
                <td align="left">    └ firmwareVersion</td>
                <td align="left">String (Required)</td>
                <td align="left">The current firmware version of the accessory.</td>
              </tr>
              <tr>
                <td align="left">    └ category</td>
                <td align="left">int (Required)</td>
                <td align="left">The accessory category value that closest resembles the physical product.</td>
              </tr>
            </tbody>
          </table>
          <section anchor="sample-request">
            <name>Sample Request</name>
            <t>The following is an example of a well-formed AccessoryInfo request body, illustrating the expected JSON structure and representative field values.</t>
            <sourcecode type="json"><![CDATA[
{
  "products": [
    {
      "version": "1",
      "networkId": "01",
      "productData": "dd6fcc3d20cfbdce",
      "firmwareData": {
        "firmwareVersion": "84.8.112",
        "category": 1
      }
    }
  ]
}
]]></sourcecode>
          </section>
        </section>
        <section anchor="accessoryinfo-response">
          <name>AccessoryInfo Response</name>
          <t>The JSON response fields returned by the network provider's service upon a successful AccessoryInfo request are described in <xref target="_table-accessoryinfo-response-fields"/>.</t>
          <t>The following additional requirements and conventions apply to the response:</t>
          <ul spacing="normal">
            <li>
              <t>The network provider <bcp14>MUST</bcp14> provide “disable instructions”, in structured format, as defined in this specification.</t>
            </li>
            <li>
              <t>The network provider <bcp14>MUST</bcp14> provide the identifier retrieval instructions ("Learn More"), in structured format, as defined in this specification.</t>
            </li>
            <li>
              <t>Asset fields containing 2x, 3x are different size specifications of the same asset, meant to be shown on bigger screens.</t>
            </li>
            <li>
              <t>The localizations are based on the “Accept-Language” header from the HTTP request.</t>
            </li>
          </ul>
        </section>
        <section anchor="response-format-json-fields">
          <name>Response Format (JSON Fields)</name>
          <table anchor="_table-accessoryinfo-response-fields">
            <name>AccessoryInfo Response Fields</name>
            <thead>
              <tr>
                <th align="left">Name</th>
                <th align="left">Data Type</th>
                <th align="left">Description</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">▤ products</td>
                <td align="left">JSON Array (Required)</td>
                <td align="left">A JSON array containing one or more accessory product objects for which information is being returned.</td>
              </tr>
              <tr>
                <td align="left">▦ softwareInfo</td>
                <td align="left">JSON Object (Required)</td>
                <td align="left">Contains the fields specified below.</td>
              </tr>
              <tr>
                <td align="left">  └ networkId</td>
                <td align="left">String (Required)</td>
                <td align="left">The NetworkId hosting the service.</td>
              </tr>
              <tr>
                <td align="left">  └ productData</td>
                <td align="left">String (Required)</td>
                <td align="left">The productData for which the response is generated.</td>
              </tr>
              <tr>
                <td align="left">  └ surfaceUt</td>
                <td align="left">Boolean (Optional)</td>
                <td align="left">Whether the UT alert should be shown.</td>
              </tr>
              <tr>
                <td align="left">  └ snLookupUrl</td>
                <td align="left">String (Optional)</td>
                <td align="left">The URL where the "identifier" look-up HTML page is hosted. Refer to the DULT Internet Draft for "identifier" look-up request parameters.</td>
              </tr>
              <tr>
                <td align="left">▦ capabilities</td>
                <td align="left">JSON Object (Optional)</td>
                <td align="left">Enumerates the capabilities of the queried UT accessory.</td>
              </tr>
              <tr>
                <td align="left">  └ utAccel</td>
                <td align="left">Boolean (Optional)</td>
                <td align="left">Motion detector UT.</td>
              </tr>
              <tr>
                <td align="left">  └ nfcLookup</td>
                <td align="left">Boolean (Optional)</td>
                <td align="left">Identifier look-up by NFC.</td>
              </tr>
              <tr>
                <td align="left">  └ bleLookup</td>
                <td align="left">Boolean (Optional)</td>
                <td align="left">Identifier look-up by BLE.</td>
              </tr>
              <tr>
                <td align="left">  └ playSound</td>
                <td align="left">Boolean (Optional)</td>
                <td align="left">Play sound.</td>
              </tr>
              <tr>
                <td align="left">▦ configuration</td>
                <td align="left">JSON Object (Required)</td>
                <td align="left">Contains the fields specified below.</td>
              </tr>
              <tr>
                <td align="left">  └ manufacturerName</td>
                <td align="left">String (Required)</td>
                <td align="left">Name of the accessory manufacturer.</td>
              </tr>
              <tr>
                <td align="left">  └ modelName</td>
                <td align="left">String (Required)</td>
                <td align="left">Model name of the accessory.</td>
              </tr>
              <tr>
                <td align="left">  └ category</td>
                <td align="left">int (Required)</td>
                <td align="left">Category to which the accessory belongs. The full list of supported categories is in the DULT IETF Draft.</td>
              </tr>
              <tr>
                <td align="left">  └ learnMoreItems</td>
                <td align="left">JSON Array of String (Required)</td>
                <td align="left">localized string values in structured format, in the sequence to be shown on screen. Contains the instructions to retrieve the identifier over BLE / NFC.</td>
              </tr>
              <tr>
                <td align="left">  └ <tt>instructionsToDisableItems</tt></td>
                <td align="left">JSON Array of String (Required)</td>
                <td align="left">localized string values in structured format, in the sequence to be shown on screen.</td>
              </tr>
              <tr>
                <td align="left">  └ <tt>instructionsToDisableUrl</tt></td>
                <td align="left">String (Optional)</td>
                <td align="left">URL hosting the disable instructions page. Usually provided if the network provider cannot supply the instructions via <tt>instructionsToDisableItems</tt>.</td>
              </tr>
              <tr>
                <td align="left">  └ learnMorePageTitle</td>
                <td align="left">String (Optional)</td>
                <td align="left">localized string value for the Learn More page title.</td>
              </tr>
              <tr>
                <td align="left">  └ disablePageTitle</td>
                <td align="left">String (Optional)</td>
                <td align="left">localized string value for the Instructions To Disable page title.</td>
              </tr>
              <tr>
                <td align="left">  └ ▦ <tt>learnMoreIconCoordinates</tt></td>
                <td align="left">JSON Object (Optional)</td>
                <td align="left">Contains the X,Y coordinates to place the "red" dot on the learn more icon. Applicable when the generic category image is shown.</td>
              </tr>
              <tr>
                <td align="left">  └ ▦ <tt>instructionsToDisableIconCoordinates</tt></td>
                <td align="left">JSON Object (Optional)</td>
                <td align="left">Contains the X,Y coordinates to place the "red" dot on the instructionsToDisable icon. Applicable when the generic category image is shown.</td>
              </tr>
              <tr>
                <td align="left">▦ assets</td>
                <td align="left">JSON Object (Required)</td>
                <td align="left">Refer to <xref target="asset-urls"/>.</td>
              </tr>
              <tr>
                <td align="left">  └ defaultHeroIcon</td>
                <td align="left">String (Required)</td>
                <td align="left">This image <bcp14>SHALL</bcp14> be displayed on the Safety Alert and Detail screens.</td>
              </tr>
              <tr>
                <td align="left">  └ defaultHeroIcon2x</td>
                <td align="left">String (Optional)</td>
                <td align="left">2x resolution variant of <tt>defaultHeroIcon</tt>.</td>
              </tr>
              <tr>
                <td align="left">  └ defaultHeroIcon3x</td>
                <td align="left">String (Optional)</td>
                <td align="left">3x resolution variant of <tt>defaultHeroIcon</tt>.</td>
              </tr>
              <tr>
                <td align="left">  └ defaultListIcon</td>
                <td align="left">String (Optional)</td>
                <td align="left">This image <bcp14>SHALL</bcp14> be displayed in the "Unknown Items Detected" list view.</td>
              </tr>
              <tr>
                <td align="left">  └ defaultListIcon2x</td>
                <td align="left">String (Optional)</td>
                <td align="left">2x resolution variant of <tt>defaultListIcon</tt>.</td>
              </tr>
              <tr>
                <td align="left">  └ defaultListIcon3x</td>
                <td align="left">String (Optional)</td>
                <td align="left">3x resolution variant of <tt>defaultListIcon</tt>.</td>
              </tr>
              <tr>
                <td align="left">  └ learnMoreIcon</td>
                <td align="left">String (Optional)</td>
                <td align="left">This image <bcp14>SHALL</bcp14> be displayed in the "Learn More" section or page.</td>
              </tr>
              <tr>
                <td align="left">  └ learnMoreIcon2x</td>
                <td align="left">String (Optional)</td>
                <td align="left">2x resolution variant of <tt>learnMoreIcon</tt>.</td>
              </tr>
              <tr>
                <td align="left">  └ learnMoreIcon3x</td>
                <td align="left">String (Optional)</td>
                <td align="left">3x resolution variant of <tt>learnMoreIcon</tt>.</td>
              </tr>
              <tr>
                <td align="left">  └ <tt>instructionsToDisableIcon</tt></td>
                <td align="left">String (Optional)</td>
                <td align="left">This image <bcp14>SHALL</bcp14> be displayed in the "Instructions To Disable" section or page.</td>
              </tr>
              <tr>
                <td align="left">  └ <tt>instructionsToDisableIcon2x</tt></td>
                <td align="left">String (Optional)</td>
                <td align="left">2x resolution variant of <tt>instructionsToDisableIcon</tt>.</td>
              </tr>
              <tr>
                <td align="left">  └ <tt>instructionsToDisableIcon3x</tt></td>
                <td align="left">String (Optional)</td>
                <td align="left">3x resolution variant of <tt>instructionsToDisableIcon</tt>.</td>
              </tr>
              <tr>
                <td align="left">  └ learnMoreVideoUrl</td>
                <td align="left">String (Optional)</td>
                <td align="left">Link to the Learn More instructional video.</td>
              </tr>
              <tr>
                <td align="left">  └ <tt>instructionsToDisableVideoUrl</tt></td>
                <td align="left">String (Optional)</td>
                <td align="left">Link to the Disable instructional video.</td>
              </tr>
            </tbody>
          </table>
          <section anchor="asset-urls">
            <name>Asset URLs</name>
            <t>These are the requirements for asset URLs provided by the network provider:</t>
            <ul spacing="normal">
              <li>
                <t>Accessory assets, when provided, <bcp14>SHALL</bcp14> be hosted by the network provider.</t>
              </li>
              <li>
                <t>Accessory assets, when provided, <bcp14>MUST</bcp14> be provided as hyperlinks pointing to publicly accessible web servers or CDN.</t>
              </li>
              <li>
                <t>Network providers <bcp14>SHALL</bcp14> provide accessory-category-specific image asset URLs for a product data.</t>
              </li>
            </ul>
          </section>
          <section anchor="sample-json-response">
            <name>Sample JSON Response</name>
            <t>The following is an example of a well-formed AccessoryInfo JSON response, illustrating the complete response structure including software info, capabilities, configuration, and asset URLs returned by the network provider's service.</t>
            <sourcecode type="json"><![CDATA[
{
  "products": [
    {
      "softwareInfo": {
        "networkId": "01",
        "productData": "dd6fcc3d20cfbdce",
        "surfaceUt": true,
        "snLookupUrl": "https://{network-provider-host}/{identifier-lookup-path}"
      },
      "capabilities": {
        "utAccel": true,
        "nfcLookup": false,
        "bleLookup": true,
        "playSound": true
      },
      "configuration": {
        "manufacturerName": "Rolling Square",
        "modelName": "AirCard",
        "category": 1,
        "learnMoreItems": [
          "This item can be located by its owner using the Find My app. For more info, follow the instructions below.",
          "Locate the button on the front of the AirCard.",
          "Quickly press the button six times. A confirmation beep will sound and the light will flash three times.",
          "Tap \"Continue On Website\" for more information including any lost mode message from the owner."
        ],
        "instructionsToDisableItems": [
          "Locate the button on the front of the AirCard.",
          "Quickly press the button five times. A confirmation chime will sound and the light will flash six times.",
          "This will stop sharing the location of this item."
        ],
        "instructionsToDisableUrl": "https://<disable_instructions_static_product_specific>",
        "learnMorePageTitle": "Learn More",
        "disablePageTitle": "How to Disable",
        "learnMoreIconCoordinates": {
          "x": -1,
          "y": -1
        },
        "instructionsToDisableIconCoordinates": {
          "x": -1,
          "y": -1
        }
      },
      "assets": {
        "defaultHeroIcon": "https://{network-provider-image-host}/hero.png",
        "defaultHeroIcon2x": "https://{network-provider-image-host}/hero@2x.png",
        "defaultHeroIcon3x": "https://{network-provider-image-host}/hero@3x.png",
        "defaultListIcon": "https://{network-provider-image-host}/list.png",
        "defaultListIcon2x": "https://{network-provider-image-host}/list@2x.png",
        "defaultListIcon3x": "https://{network-provider-image-host}/list@3x.png",
        "learnMoreIcon": "https://{network-provider-image-host}/learnmore.png",
        "learnMoreIcon2x": "https://{network-provider-image-host}/learnmore@2x.png",
        "learnMoreIcon3x": "https://{network-provider-image-host}/learnmore@3x.png",
        "instructionsToDisableIcon": "https://{network-provider-image-host}/instructionstodisable.png",
        "instructionsToDisableIcon2x": "https://{network-provider-image-host}/instructionstodisable@2x.png",
        "instructionsToDisableIcon3x": "https://{network-provider-image-host}/instructionstodisable@3x.png",
        "learnMoreVideoUrl": "",
        "instructionsToDisableVideoUrl": ""
      }
    }
  ]
}
]]></sourcecode>
          </section>
        </section>
        <section anchor="asset-specifications">
          <name>Asset Specifications</name>
          <t>The required asset names and their corresponding size specifications (in pixels) that <bcp14>SHALL</bcp14> be provided by the network provider for rendering accessory images and videos across all display resolutions are defined in <xref target="_table-accessoryinfo-asset-specs"/>.</t>
          <table anchor="_table-accessoryinfo-asset-specs">
            <name>AccessoryInfo Asset Specifications</name>
            <thead>
              <tr>
                <th align="left">Asset Name</th>
                <th align="left">Size Spec (px)</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">defaultHeroIcon</td>
                <td align="left">160x160</td>
              </tr>
              <tr>
                <td align="left">defaultHeroIcon2x</td>
                <td align="left">320x320</td>
              </tr>
              <tr>
                <td align="left">defaultHeroIcon3x</td>
                <td align="left">480x480</td>
              </tr>
              <tr>
                <td align="left">defaultListIcon</td>
                <td align="left">30x30</td>
              </tr>
              <tr>
                <td align="left">defaultListIcon2x</td>
                <td align="left">60x60</td>
              </tr>
              <tr>
                <td align="left">defaultListIcon3x</td>
                <td align="left">90x90</td>
              </tr>
              <tr>
                <td align="left">learnMoreIcon</td>
                <td align="left">240x240</td>
              </tr>
              <tr>
                <td align="left">learnMoreIcon2x</td>
                <td align="left">480x480</td>
              </tr>
              <tr>
                <td align="left">learnMoreIcon3x</td>
                <td align="left">720x720</td>
              </tr>
              <tr>
                <td align="left">instructionsToDisableIcon</td>
                <td align="left">240x240</td>
              </tr>
              <tr>
                <td align="left">instructionsToDisableIcon2x</td>
                <td align="left">480x480</td>
              </tr>
              <tr>
                <td align="left">instructionsToDisableIcon3x</td>
                <td align="left">720x720</td>
              </tr>
              <tr>
                <td align="left">learnMoreVideoUrl</td>
                <td align="left">N/A</td>
              </tr>
              <tr>
                <td align="left">instructionsToDisableVideoUrl</td>
                <td align="left">N/A</td>
              </tr>
            </tbody>
          </table>
        </section>
      </section>
      <section anchor="identifier-look-up-webpage">
        <name>Identifier Look-up Webpage</name>
        <t>A network provider <bcp14>SHALL</bcp14> host a  webpage that displays ownership information, including an obfuscated contact identifier and the accessory's identifier in plaintext, along with any lost mode message set by the owner.</t>
        <section anchor="url-format-and-query-params">
          <name>URL Format and Query Params</name>
          <t><eref target="https://{URL}?pid=%s&amp;b=%s&amp;fv=%s&amp;e=%s">https://{URL}?pid=%s&amp;b=%s&amp;fv=%s&amp;e=%s</eref>
            <em><strong>Note:</strong> The base URL is defined by each network provider. The query parameters listed in <xref target="_table-identifier-lookup-query-params"/> are standardized across all network providers.</em></t>
          <table anchor="_table-identifier-lookup-query-params">
            <name>Identifier Look-up URL Query Parameters</name>
            <thead>
              <tr>
                <th align="left">Key</th>
                <th align="left">URL Param Type</th>
                <th align="left">Notes</th>
                <th align="left">Reference</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">b</td>
                <td align="left">Hex String</td>
                <td align="left">Battery level <em>(Optional)</em></td>
                <td align="left">
                  <xref target="battery-level">Battery level</xref> — Get_Battery_Level</td>
              </tr>
              <tr>
                <td align="left">bt</td>
                <td align="left">Hex String</td>
                <td align="left">BT MAC address <em>(Optional)</em></td>
                <td align="left">
                  <xref target="mac-address">MAC address</xref></td>
              </tr>
              <tr>
                <td align="left">fv</td>
                <td align="left">Hex String</td>
                <td align="left">FW version <em>(Optional)</em></td>
                <td align="left">
                  <xref target="firmware-version">Firmware version</xref> — Get_Firmware_Version</td>
              </tr>
              <tr>
                <td align="left">e</td>
                <td align="left">Hex String</td>
                <td align="left">Encrypted identifier payload <em>(Required)</em></td>
                <td align="left">
                  <xref target="identifier-payload">Identifier Payload</xref> — Get_Identifier</td>
              </tr>
              <tr>
                <td align="left">pid</td>
                <td align="left">Hex String</td>
                <td align="left">Accessory product data <em>(Required)</em></td>
                <td align="left">
                  <xref target="product-data">Product data</xref> — Get_Product_Data</td>
              </tr>
            </tbody>
          </table>
        </section>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <section anchor="info-lookup-security">
        <name>Obfuscated owner information look-up</name>
        <t>Obfuscated owner information look-up is required to display important information to users who encounter an unwanted tracking notification. It helps them tie the notification to a specific physical device and recognize the accessory as belonging to a friend or relative. Displaying an identifier (or serial number) may be one method to allow for partial user information look up.</t>
        <t>However, the identifier is unique and stable, and the partial user information can further make the accessory identifiable. Therefore, identifier (if used) and obfuscated owner information <bcp14>SHOULD NOT</bcp14> be made directly available to any requesting devices. Instead, several security- and privacy-preserving steps <bcp14>SHOULD</bcp14> be employed.</t>
        <t>The obfuscated owner information and identifier look-up <bcp14>SHALL</bcp14> only be available in separated mode for an associated accessory.
When requested through any long range wireless interface like Bluetooth, a user action <bcp14>MUST</bcp14> be required for the requesting device to access the obfuscated owner information and identifier. Over NFC, it <bcp14>MAY</bcp14> be acceptable to consider the close proximity as intent for this flow.</t>
        <t>To uphold privacy and anti-tracking features like the Bluetooth MAC address randomization, the accessory <bcp14>MUST</bcp14> only provide non-identifiable data to non-owner requesting devices. One approach is for the accessory to provide encrypted and unlinkable information that only the accessory network service can decrypt. With this approach, the server can employ techniques such as rate limiting and anti-fraud to limit access to the identifier. In addition to being encrypted and unlinkable, the encrypted payload provided by the accessory <bcp14>SHOULD</bcp14> be authenticated and protected against replay. The replay protection is to prevent an adversary using a payload captured once to monitor changes to the partial information associated with the accessory, while the authentication prevents an adversary from impersonating any accessory from a single payload.</t>
        <section anchor="design-of-encrypted-identifier-look-up">
          <name>Design of encrypted identifier look-up</name>
          <t>One way to design this encryption is for the accessory to contain a public key for the accessory network server. For every request received by a device nearby, the accessory would use the public key and a public key encryption scheme (ie: RSA-OAEP, ECIES, or HPKE) to encrypt a set of fields including the identifier, a monotonic counter or one time token and a signature covering both the identifier and counter or token. The signature can be either a public key signature or symmetric signature, leveraging a key trusted by the network server which <bcp14>MAY</bcp14> be established at manufacturing time or when the user sets up the accessory. Some additional non-identifiable metadata <bcp14>MAY</bcp14> be sent along with this encrypted payload, allowing the requesting device to determine which accessory network service to connect to for the decryption, and for the service to know which decryption key and protocol version to use.</t>
        </section>
      </section>
    </section>
    <section anchor="privacy-considerations">
      <name>Privacy Considerations</name>
      <section anchor="obfuscated-owner-information">
        <name>Obfuscated owner information</name>
        <t>In many circumstances when unwanted tracking occurs, the individual being tracked knows the owner of the location-tracker.
By allowing the retrieval of an obfuscated email or phone number when in possession of the accessory, as described in <xref target="obfuscated-owner-info"/>, this
provides the potential victim with some level of information on the owner, while balancing the privacy of accessory owners in the arbitrary situations
where they have separated from those accessories.</t>
      </section>
      <section anchor="identifier-look-up">
        <name>Identifier look-up</name>
        <t>An identifier both physically on the device, as well as retrievable over NFC or Bluetooth LE, can aid recourse actions in the case of unwanted tracking.
While retrieval of the identifier over NFC implies having physical possession of the accessory, the same conclusion can not be made for Bluetooth given its wireless range.
The procedure required for identifier look-up over Bluetooth LE intends to strike a balance between the privacy of the owner and ability to empower
potential victims, by requiring both the accessory to be in separated state as well as a physical action be performed to enable the identifier retrieval.</t>
      </section>
      <section anchor="location-enabled-payload">
        <name>Location-enabled payload</name>
        <section anchor="stable-identifiers">
          <name>Stable identifiers</name>
          <t>Rotating the mac address of the location-enabled payload, as described in <xref target="mac-address"/>, balances the risk of nefarious stable identifier tracking with the need for unwanted tracking detection.
If the address were permanently static, then the accessory would become infinitely trackable for the life of its power source.
By requiring rotation, this reduces the risk of a malicious actor having the ability to piece together long stretches of longitudinal data
on the whereabouts of an accessory.</t>
        </section>
        <section anchor="proprietary-company-payload-data">
          <name>Proprietary company payload data</name>
          <t>Accessory manufacturers <bcp14>SHOULD</bcp14> evaluate the contents of the proprietary company payload data in <xref target="_table-payload-format"/> to ensure it does not introduce additional privacy risk through the broadcast of stable identifiers or unencrypted sensitive data.</t>
        </section>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>Eventually an IANA will create a new registry group called "Unwanted Tracking Protocols (UTP)".
This group includes the "Finding Network ID" registry.</t>
      <t>TODO</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-normative-references">
      <name>Normative References</name>
      <reference anchor="BTCore5.4" target="https://www.bluetooth.org/DocMan/handlers/DownloadDoc.ashx?doc_id=556599">
        <front>
          <title>Bluetooth Core Specification v5.4</title>
          <author>
            <organization/>
          </author>
          <date year="2023" month="January" day="31"/>
        </front>
      </reference>
      <reference anchor="NFCForum" target="https://nfc-forum.org/build/specifications#core-specification">
        <front>
          <title>NFC Forum</title>
          <author>
            <organization/>
          </author>
          <date>n.d.</date>
        </front>
      </reference>
      <reference anchor="RFC2119">
        <front>
          <title>Key words for use in RFCs to Indicate Requirement Levels</title>
          <author fullname="S. Bradner" initials="S." surname="Bradner"/>
          <date month="March" year="1997"/>
          <abstract>
            <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
          </abstract>
        </front>
        <seriesInfo name="BCP" value="14"/>
        <seriesInfo name="RFC" value="2119"/>
        <seriesInfo name="DOI" value="10.17487/RFC2119"/>
      </reference>
      <reference anchor="RFC8174">
        <front>
          <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
          <author fullname="B. Leiba" initials="B." surname="Leiba"/>
          <date month="May" year="2017"/>
          <abstract>
            <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
          </abstract>
        </front>
        <seriesInfo name="BCP" value="14"/>
        <seriesInfo name="RFC" value="8174"/>
        <seriesInfo name="DOI" value="10.17487/RFC8174"/>
      </reference>
    </references>
    <?line 1106?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>TODO acknowledge.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
AQA=

-->

</rfc>
