Internet DRAFT - draft-hallambaker-mesh-protocol
draft-hallambaker-mesh-protocol
Network Working Group P. M. Hallam-Baker
Internet-Draft ThresholdSecrets.com
Intended status: Informational 28 June 2023
Expires: 30 December 2023
Mathematical Mesh 3.0 Part V: Protocol Reference
draft-hallambaker-mesh-protocol-15
Abstract
The Mathematical Mesh 'The Mesh' is an end-to-end secure
infrastructure that facilitates the exchange of configuration and
credential data between multiple user devices. The core protocols of
the Mesh are described with examples of common use cases and
reference data.
[Note to Readers]
Discussion of this draft takes place on the MATHMESH mailing list
(mathmesh@ietf.org), which is archived at
https://mailarchive.ietf.org/arch/search/?email_list=mathmesh.
This document is also available online at
http://mathmesh.com/Documents/draft-hallambaker-mesh-protocol.html.
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on 30 December 2023.
Copyright Notice
Copyright (c) 2023 IETF Trust and the persons identified as the
document authors. All rights reserved.
Hallam-Baker Expires 30 December 2023 [Page 1]
Internet-Draft Mesh Protocol Reference June 2023
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents (https://trustee.ietf.org/
license-info) in effect on the date of publication of this document.
Please review these documents carefully, as they describe your rights
and restrictions with respect to this document.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 4
2. Definitions . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.1. Requirements Language . . . . . . . . . . . . . . . . . . 6
2.2. Defined Terms . . . . . . . . . . . . . . . . . . . . . . 6
2.3. Related Specifications . . . . . . . . . . . . . . . . . 6
2.4. Implementation Status . . . . . . . . . . . . . . . . . . 6
3. Mesh Protocols . . . . . . . . . . . . . . . . . . . . . . . 6
4. Mesh Service . . . . . . . . . . . . . . . . . . . . . . . . 7
4.1. Data Model . . . . . . . . . . . . . . . . . . . . . . . 8
4.2. Partitioning . . . . . . . . . . . . . . . . . . . . . . 8
5. Protocol Bindings . . . . . . . . . . . . . . . . . . . . . . 8
6. Mesh Service Operations . . . . . . . . . . . . . . . . . . . 9
6.1. Service Description . . . . . . . . . . . . . . . . . . . 9
6.2. Account Management . . . . . . . . . . . . . . . . . . . 11
6.2.1. Bind Account . . . . . . . . . . . . . . . . . . . . 11
6.2.2. Unbind Account . . . . . . . . . . . . . . . . . . . 14
6.2.3. Account Recovery and Transfer. . . . . . . . . . . . 15
6.3. Persistence Store Management . . . . . . . . . . . . . . 16
6.3.1. Status . . . . . . . . . . . . . . . . . . . . . . . 16
6.3.2. Download . . . . . . . . . . . . . . . . . . . . . . 19
6.3.3. Transact . . . . . . . . . . . . . . . . . . . . . . 20
6.4. Device Connection . . . . . . . . . . . . . . . . . . . . 22
6.4.1. Connect . . . . . . . . . . . . . . . . . . . . . . . 22
6.4.2. Complete . . . . . . . . . . . . . . . . . . . . . . 27
6.5. Publication . . . . . . . . . . . . . . . . . . . . . . . 39
6.5.1. Claim Transaction . . . . . . . . . . . . . . . . . . 39
6.5.2. PollClaim Transaction . . . . . . . . . . . . . . . . 43
6.6. Cryptographic . . . . . . . . . . . . . . . . . . . . . . 44
6.6.1. Generate Key Shares . . . . . . . . . . . . . . . . . 46
6.6.2. Threshold Sign . . . . . . . . . . . . . . . . . . . 47
6.7. Messaging . . . . . . . . . . . . . . . . . . . . . . . . 47
6.7.1. Sender. . . . . . . . . . . . . . . . . . . . . . . . 47
6.7.2. Outbound Service . . . . . . . . . . . . . . . . . . 47
6.7.3. Inbound Service . . . . . . . . . . . . . . . . . . . 48
6.7.4. Recipient . . . . . . . . . . . . . . . . . . . . . . 48
7. Access Control . . . . . . . . . . . . . . . . . . . . . . . 49
7.1. Direct authorization . . . . . . . . . . . . . . . . . . 49
7.2. Access Catalog authentication . . . . . . . . . . . . . . 49
8. Message Interactions . . . . . . . . . . . . . . . . . . . . 49
8.1. Message PIN Interaction . . . . . . . . . . . . . . . . . 49
Hallam-Baker Expires 30 December 2023 [Page 2]
Internet-Draft Mesh Protocol Reference June 2023
8.1.1. Registration . . . . . . . . . . . . . . . . . . . . 50
8.1.2. Authentication . . . . . . . . . . . . . . . . . . . 50
8.1.3. Validation . . . . . . . . . . . . . . . . . . . . . 51
8.1.4. Example . . . . . . . . . . . . . . . . . . . . . . . 51
8.2. Completion Interaction . . . . . . . . . . . . . . . . . 52
8.3. Contact Exchange Interaction . . . . . . . . . . . . . . 53
8.3.1. Remote . . . . . . . . . . . . . . . . . . . . . . . 53
8.3.2. PIN . . . . . . . . . . . . . . . . . . . . . . . . . 56
8.3.3. EARL . . . . . . . . . . . . . . . . . . . . . . . . 56
8.4. Group Invitation . . . . . . . . . . . . . . . . . . . . 56
8.5. Confirmation Interaction . . . . . . . . . . . . . . . . 57
9. Device Connection Interactions . . . . . . . . . . . . . . . 58
9.1. Witness/PIN Authenticated . . . . . . . . . . . . . . . . 60
9.1.1. Phase 1: . . . . . . . . . . . . . . . . . . . . . . 61
9.1.2. Phase 2: . . . . . . . . . . . . . . . . . . . . . . 61
9.1.3. Phase 3: . . . . . . . . . . . . . . . . . . . . . . 64
9.1.4. Phase 4 . . . . . . . . . . . . . . . . . . . . . . . 74
9.2. Preconfigured (Static QR Code) . . . . . . . . . . . . . 75
9.2.1. Phase 1 . . . . . . . . . . . . . . . . . . . . . . . 76
9.2.2. Phase 2 & 3 . . . . . . . . . . . . . . . . . . . . . 79
9.2.3. Phase 4 . . . . . . . . . . . . . . . . . . . . . . . 79
9.2.4. Phase 5 . . . . . . . . . . . . . . . . . . . . . . . 79
10. Protocol Schema . . . . . . . . . . . . . . . . . . . . . . . 79
10.1. Request Messages . . . . . . . . . . . . . . . . . . . . 79
10.1.1. Message: MeshRequest . . . . . . . . . . . . . . . . 80
10.1.2. Message: MeshRequestUser . . . . . . . . . . . . . . 80
10.2. Response Messages . . . . . . . . . . . . . . . . . . . 80
10.2.1. Message: MeshResponse . . . . . . . . . . . . . . . 80
10.3. Imported Objects . . . . . . . . . . . . . . . . . . . . 80
10.4. Common Structures . . . . . . . . . . . . . . . . . . . 80
10.4.1. Structure: KeyValue . . . . . . . . . . . . . . . . 81
10.4.2. Structure: ConstraintsSelect . . . . . . . . . . . . 81
10.4.3. Structure: ConstraintsData . . . . . . . . . . . . . 81
10.4.4. Structure: PolicyAccount . . . . . . . . . . . . . . 82
10.4.5. Structure: StoreStatus . . . . . . . . . . . . . . . 82
10.4.6. Structure: StoreUpdate . . . . . . . . . . . . . . . 82
10.5. Transaction: Hello . . . . . . . . . . . . . . . . . . . 83
10.5.1. Message: MeshHelloRequest . . . . . . . . . . . . . 83
10.5.2. Message: MeshHelloResponse . . . . . . . . . . . . . 83
10.6. Transaction: BindAccount . . . . . . . . . . . . . . . . 83
10.6.1. Message: BindRequest . . . . . . . . . . . . . . . . 84
10.6.2. Message: BindResponse . . . . . . . . . . . . . . . 84
10.7. Transaction: UnbindAccount . . . . . . . . . . . . . . . 84
10.7.1. Message: UnbindRequest . . . . . . . . . . . . . . . 84
10.7.2. Message: UnbindResponse . . . . . . . . . . . . . . 85
10.8. Transaction: Connect . . . . . . . . . . . . . . . . . . 85
10.8.1. Message: ConnectRequest . . . . . . . . . . . . . . 85
10.8.2. Message: ConnectResponse . . . . . . . . . . . . . . 85
Hallam-Baker Expires 30 December 2023 [Page 3]
Internet-Draft Mesh Protocol Reference June 2023
10.9. Transaction: Complete . . . . . . . . . . . . . . . . . 85
10.9.1. Message: CompleteRequest . . . . . . . . . . . . . . 85
10.9.2. Message: CompleteResponse . . . . . . . . . . . . . 86
10.10. Transaction: Status . . . . . . . . . . . . . . . . . . 86
10.10.1. Message: StatusRequest . . . . . . . . . . . . . . 86
10.10.2. Message: StatusResponse . . . . . . . . . . . . . . 86
10.10.3. Structure: DeviceStatus . . . . . . . . . . . . . . 87
10.11. Transaction: Download . . . . . . . . . . . . . . . . . 87
10.11.1. Message: DownloadRequest . . . . . . . . . . . . . 87
10.11.2. Message: DownloadResponse . . . . . . . . . . . . . 88
10.12. Transaction: Transact . . . . . . . . . . . . . . . . . 88
10.12.1. Message: TransactRequest . . . . . . . . . . . . . 88
10.12.2. Message: TransactResponse . . . . . . . . . . . . . 89
10.12.3. Structure: EntryResponse . . . . . . . . . . . . . 89
10.13. Transaction: PublicRead . . . . . . . . . . . . . . . . 89
10.13.1. Message: PublicRequest . . . . . . . . . . . . . . 90
10.14. Transaction: Post . . . . . . . . . . . . . . . . . . . 90
10.14.1. Message: PostRequest . . . . . . . . . . . . . . . 90
10.14.2. Message: PostResponse . . . . . . . . . . . . . . . 90
10.15. Transaction: Claim . . . . . . . . . . . . . . . . . . . 90
10.15.1. Message: ClaimRequest . . . . . . . . . . . . . . . 91
10.15.2. Message: ClaimResponse . . . . . . . . . . . . . . 91
10.16. Transaction: PollClaim . . . . . . . . . . . . . . . . . 91
10.16.1. Message: PollClaimRequest . . . . . . . . . . . . . 91
10.16.2. Message: PollClaimResponse . . . . . . . . . . . . 91
10.16.3. Structure: CryptographicOperation . . . . . . . . . 91
10.16.4. Structure: CryptographicOperationSign . . . . . . . 91
10.16.5. Structure: CryptographicOperationKeyAgreement . . . 92
10.16.6. Structure: CryptographicOperationGenerate . . . . . 92
10.16.7. Structure: CryptographicOperationShare . . . . . . 92
10.16.8. Structure: CryptographicResult . . . . . . . . . . 92
10.16.9. Structure: CryptographicResultKeyAgreement . . . . 92
10.16.10. Structure: CryptographicResultShare . . . . . . . . 92
10.17. Transaction: Operate . . . . . . . . . . . . . . . . . . 92
10.17.1. Message: OperateRequest . . . . . . . . . . . . . . 93
10.17.2. Message: OperateResponse . . . . . . . . . . . . . 93
11. Security Considerations . . . . . . . . . . . . . . . . . . . 93
12. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 93
13. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 93
14. Normative References . . . . . . . . . . . . . . . . . . . . 93
15. Informative References . . . . . . . . . . . . . . . . . . . 94
1. Introduction
This document describes the Mesh Service protocol supported by Mesh
Services, an account-based protocol that facilitates exchange of data
between devices connected to a Mesh profile and between Mesh
accounts.
Hallam-Baker Expires 30 December 2023 [Page 4]
Internet-Draft Mesh Protocol Reference June 2023
Mesh Service Accounts support the following services:
* Provides the master persistence store for the Catalogs and Spools
associated with the account.
* Enables synchronization of Catalogs and Spools with connected
devices.
* Enforces access control on inbound Mesh Messages from other users
and other Mesh Services.
* Authenticates outbound Mesh Messages, certifying that they comply
with abuse mitigation policies.
A Mesh Profile MAY be bound to multiple Mesh Service Accounts at the
same time but only one Mesh Service Account is considered to be
authoritative at a time. Users may add or remove Mesh Service
Accounts and change the account designated as authoritative at any
time.
The Mesh Services are build from a very small set of primitives which
provide a surprisingly extensive set of capabilities. These
primitives are:
Hello Describes the features and options provided by the service and
provides a 'null' transaction which MAY be used to establish an
authentication ticket without performing any action,
CreateAccount, DeleteAccount Manage the creation and deletion of
accounts at the service.
Status, Download, Upload Support synchronization of Mesh containers
between the service (Master) and the connected devices (Replicas).
Connect Initiate the process of connecting a device to a Mesh
profile from the device itself.
Post Request that a Mesh Message be transferred to one or more Mesh
Accounts.
Although these functions could in principle be used to replace many
if not most existing Internet application protocols, the principal
value of any communication protocol lies in the size of the audience
it allows them to communicate with. Thus, while the Mesh Messaging
service is designed to support efficient and reliable transfer of
messages ranging in size from a few bytes to multiple terabytes, the
near-term applications of these services will be to applications that
are not adequately supported by existing protocols if at all.
Hallam-Baker Expires 30 December 2023 [Page 5]
Internet-Draft Mesh Protocol Reference June 2023
2. Definitions
This section presents the related specifications and standard, the
terms that are used as terms of art within the documents and the
terms used as requirements language.
2.1. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [RFC2119].
2.2. Defined Terms
The terms of art used in this document are described in the _Mesh
Architecture Guide_ [draft-hallambaker-mesh-architecture].
2.3. Related Specifications
The architecture of the Mathematical Mesh is described in the _Mesh
Architecture Guide_ [draft-hallambaker-mesh-architecture]. The Mesh
documentation set and related specifications are described in this
document.
2.4. Implementation Status
The implementation status of the reference code base is described in
the companion document [draft-hallambaker-mesh-developer].
3. Mesh Protocols
The Mesh specifies two separate types of protocol interactions:
Mesh Service Protocol A synchronous protocol supporting interactions
between devices and a Mesh Service Host and between Mesh Service
hosts.
Mesh Messaging Protocol An asynchronous protocol that supports
interactions between devices connected to the same account and
between accounts.
The Mesh Messaging Protocol uses the Mesh Service Protocol as
transport. The Mesh Service Protocol in turn makes use of Reliable
UDP Datagram (RUD) [draft-hallambaker-mesh-rud] for framing and
authentication of individual requests and responses. These RUS
packets are in turn exchanged over either HTTPS (i.e. a Web Service)
or directly over UDP.
Hallam-Baker Expires 30 December 2023 [Page 6]
Internet-Draft Mesh Protocol Reference June 2023
(Artwork only available as svg: No external link available, see
draft-hallambaker-mesh-protocol-15.html for artwork.)
Figure 1: Protocol Layering
Mesh Services MUST support the HTTPS binding and MAY support the UDP
binding.
4. Mesh Service
A Mesh Service is a minimally trusted service. In particular a user
does not need to trust a Mesh service to protect the confidentiality
or integrity of most data stored in the account catalogs and spools.
Unless the use of the Mesh Service is highly restricted, a user does
need to trust the Mesh Service in certain respects:
Data Loss A service could refuse to respond to requests to download
data.
Integrity (Stale Data) The use of Merkle Trees limits but does not
eliminate the ability of a Mesh Service to respond to requests
with stale data.
Messaging A service could reject requests to post messages to or
accept messages from other mesh users.
This risk is a necessary consequence of the fact that the Mesh
Service Provider is accountable to other Mesh Service Providers
for abuse originating from their service.
Traffic analysis A Mesh Service has knowledge of the number of Mesh
Messages being sent and received by its users and the addresses to
which they are being sent to or received from.
The need to trust the Mesh Service in these respects is mitigated by
accountability and the user's ability to change Mesh Service
providers at any time they choose with minimal inconvenience.
It is possible that some of these risks will be reduced in future
versions of the Mesh Service Protocol but it is highly unlikely that
these can be eliminated entirely without compromising practicality or
efficiency.
Hallam-Baker Expires 30 December 2023 [Page 7]
Internet-Draft Mesh Protocol Reference June 2023
4.1. Data Model
The design of the Mesh Service model followed a quasi-formal approach
in which the system was reduced to schemas which could in principle
be rendered in a formal development method but without construction
of proofs.
Like the contents of Mesh Accounts, a Mesh Service may be represented
by a collection of catalogs and spools, for example:
Account Catalog Contains the account entries.
Incident Spool Reports of potential abuse
Backup of the service MAY be implemented using the same container
synchronization mechanism used to synchronize account catalogs and
spools.
4.2. Partitioning
Mesh Services supporting a large number of accounts or large activity
volume MAY partition the account catalog between one or more hosts
using the usual tiered service model in which a front-end server
receives traffic for any account hosted at the server and routes the
request to the back-end service that provides the persistence store
for that account.
In addition, the Mesh Service Protocol supports a 'direct connection'
partitioning model in which devices are given a DNS name which MAY
allow for direct connection to the persistence host or to a front-end
service offering service that is in some way specific to that
account.
5. Protocol Bindings
The protocol binding maps the abstract protocol definition specified
in this document to the network protocol format.
* Discovery of network services.
* Construction of the payload data by serializing request and
response messages.
* Authentication of the payload data.
* Confidentiality controls to protect against traffic analysis
Hallam-Baker Expires 30 December 2023 [Page 8]
Internet-Draft Mesh Protocol Reference June 2023
Currently only one protocol binding is specified: JSON-BCD
Application Binding [draft-hallambaker-jsonbcd] over Reliable User
Datagram (RUD) [draft-hallambaker-mesh-rud].
*JSON-BCD Application Binding* specifies the means by which data
types such as 'integer' and 'datetime' etc. given in this document
are serialized using JSON/JSON-B encoding.
*Reliable User Datagram* offers a presentation layer over a choice of
HTTP or UDP transport.
6. Mesh Service Operations
The Mesh Service operations are divided into the following functional
groups:
Service Description Describes the service.
Account Management Operations used to create, reclaim, and delete
accounts.
Persistence Store Management Operations used to synchronize
persistence store data across connected devices. [May be replaced
in a future revision]
Device Connection Operations used by devices requesting connection
to the account.
Publication Operations allowing a watched document to be posted to
the service and claims made on the document returned to a device.
Cryptographic Cryptographic operations, including threshold
operations performed by the service.
Messaging Exchange of messages between Mesh Services.
6.1. Service Description
The Hello transaction is used to determine the features supported by
the service and obtain the service profile.
The request payload only specifies that is is a request for the
service description:
{
"HelloRequest":{}}
Hallam-Baker Expires 30 December 2023 [Page 9]
Internet-Draft Mesh Protocol Reference June 2023
The response payload describes the service and the host providing
that service:
{
"MeshHelloResponse":{
"EnvelopedProfileService":[{
"EnvelopeId":"MD3E-FN6W-3G45-YQ43-QXYR-CU4X-RKG5",
"dig":"S512",
"ContentMetaData":"ewogICJVbmlxdWVJZCI6ICJNRDNFLUZONlctM0
c0NS1ZUTQzLVFYWVItQ1U0WC1SS0c1IiwKICAiTWVzc2FnZVR5cGUiOiAiUHJvZml
sZVNlcnZpY2UiLAogICJjdHkiOiAiYXBwbGljYXRpb24vbW1tL29iamVjdCIsCiAg
IkNyZWF0ZWQiOiAiMjAyMy0wNi0yOFQxNzowMDoxM1oifQ"},
"ewogICJQcm9maWxlU2VydmljZSI6IHsKICAgICJTZXJ2aWNlQXV0aGVudG
ljYXRpb24iOiB7CiAgICAgICJVZGYiOiAiTUJDNy1HQlU2LUNMTDctVVNKTS1VQ1E
yLTcyUjItMkg3TyIsCiAgICAgICJQdWJsaWNQYXJhbWV0ZXJzIjogewogICAgICAg
ICJQdWJsaWNLZXlFQ0RIIjogewogICAgICAgICAgImNydiI6ICJYNDQ4IiwKICAgI
CAgICAgICJQdWJsaWMiOiAiVHFJdTBrRXdqbmplWGVaZUlENTNhOTg5M2VSSC1CUl
BjNWlRMV9kLUpfQV9FekdjbHFHVAogIGxhSEpTT3lmMWJmdTBRMlZOa1d0aXdVQSJ
9fX0sCiAgICAiU2VydmljZUVuY3J5cHRpb24iOiB7CiAgICAgICJVZGYiOiAiTUJJ
SC1CV1AyLVo0M1otTklSNi1TV0xZLVdJTUQtUzdBSyIsCiAgICAgICJQdWJsaWNQY
XJhbWV0ZXJzIjogewogICAgICAgICJQdWJsaWNLZXlFQ0RIIjogewogICAgICAgIC
AgImNydiI6ICJYNDQ4IiwKICAgICAgICAgICJQdWJsaWMiOiAiMmVhcG5KMWdEWk4
0YkhKR29IWUxjaUNjTENNbW5UWnRhREYtZTI2QnhKd0VfMHZPNVBBVwogIENrYzV4
WmVHY0dyM0lUcGR6cldoQUZpQSJ9fX0sCiAgICAiU2VydmljZVNpZ25hdHVyZSI6I
HsKICAgICAgIlVkZiI6ICJNQVlILVdMWVUtVTZUWC1TNjRWLUU1V1MtNUxMTy1DNF
pXIiwKICAgICAgIlB1YmxpY1BhcmFtZXRlcnMiOiB7CiAgICAgICAgIlB1YmxpY0t
leUVDREgiOiB7CiAgICAgICAgICAiY3J2IjogIkVkNDQ4IiwKICAgICAgICAgICJQ
dWJsaWMiOiAiSF95VEIzck5fT1A4Nk5qa2xVT0hyX1dQMXZnWFFIb1dYbk9YUnNRa
3Y5a2djWHJNRDNGRQogIEJKQWh4UzRiRnJRSmw3cC1HVFZlMjBZQSJ9fX0sCiAgIC
AiUHJvZmlsZVNpZ25hdHVyZSI6IHsKICAgICAgIlVkZiI6ICJNRDNFLUZONlctM0c
0NS1ZUTQzLVFYWVItQ1U0WC1SS0c1IiwKICAgICAgIlB1YmxpY1BhcmFtZXRlcnMi
OiB7CiAgICAgICAgIlB1YmxpY0tleUVDREgiOiB7CiAgICAgICAgICAiY3J2IjogI
kVkNDQ4IiwKICAgICAgICAgICJQdWJsaWMiOiAiWC1Wc1hoNjBnSUQ0SEg4SmgtSD
RZMXNnckNJeVlTTzNyYkVyZDdiZTdNVjBFNnhHN1h4cwogIFNlTzRPQ0ZRSUJzemh
VYU80MUtYMkFNQSJ9fX19fQ",
{
"signatures":[{
"alg":"S512",
"kid":"MD3E-FN6W-3G45-YQ43-QXYR-CU4X-RKG5",
"signature":"XrWp20JnnxON7w0t1c-i7fbPsiJkEOLOXV0R-6av
bIheT0uRu2k5uD93tXc4a2GFi9nqS7i14kyABxzXkOay0sbmSQAgjEH6kUq10rmS0
HuAKEdov4GHho1VMfIlXTewwe9U1ACf5TUMz5eBaoWuWSwA"}
],
"PayloadDigest":"owJg7eKJj2zd2AaEkrR90lit59cmLS_W1D_vVAFM
AtGFG6y5RGEx0q-B39dS6oW1UTQx2jRovu-cXDhiHOJLTA"}
],
"Version":{
"Major":3,
Hallam-Baker Expires 30 December 2023 [Page 10]
Internet-Draft Mesh Protocol Reference June 2023
"Minor":0,
"Encodings":[{
"ID":["application/json"
]}
]},
"Status":201}}
The current revision of the specification is designed for small scale
deployments in which the service is provided by a single host. The
approach will require revision in future versions to fully support a
service being provided by multiple hosts with accounts being
transferred between the hosts to allow balancing of load.
6.2. Account Management
There are three account management operations:
BindAccount Create an account bound to a service address.
UnbindAccount Delete an account bound to a service address
RecoverAccount [TBS] Reclaim an account using a recovered primary
secret.
The BindAccount operation is used to create User and Group accounts.
Currently, these account types are distinct. This may change in
future releases.
6.2.1. Bind Account
A User Account is bound to a Mesh Service by completing a BindAccount
operation with the service.
The BindAccount transaction is unique in that it can fail to complete
for reasons that are outside the scope of the Mesh specifications.
Creation of an account might require payment to be made or
authentication of the user's credentials. It is thus quite normal
for the result of a CreateRequest to be the account being created in
an 'on hold' state which can only be changed out of band.
If the request is at least partially successful, a BindResponse
message is returned. In the case of partial success, a description
of the request status and link to a Web page providing further
details MAY be returned.
The request payload contains all the information needed to create the
account:
Hallam-Baker Expires 30 December 2023 [Page 11]
Internet-Draft Mesh Protocol Reference June 2023
* The account address
* The account profile
Since there is no Access Catalog until the account is created, the
Bind Account request and subsequent requests used to initialize the
access catalog for the account MUST be authenticated by the Account
Authentication key.
Alice requests creation of the account alice@example.com. The
request payload is:
{
"BindRequest":{
"AccountAddress":"alice@example.com",
"EnvelopedProfileAccount":[{
"EnvelopeId":"MB3T-WIPZ-JRCW-QZFM-SCQL-OVVO-AHO2",
"dig":"S512",
"ContentMetaData":"ewogICJVbmlxdWVJZCI6ICJNQjNULVdJUFotSl
JDVy1RWkZNLVNDUUwtT1ZWTy1BSE8yIiwKICAiTWVzc2FnZVR5cGUiOiAiUHJvZml
sZVVzZXIiLAogICJjdHkiOiAiYXBwbGljYXRpb24vbW1tL29iamVjdCIsCiAgIkNy
ZWF0ZWQiOiAiMjAyMy0wNi0yOFQxNzowMDoxNVoifQ"},
"ewogICJQcm9maWxlVXNlciI6IHsKICAgICJDb21tb25TaWduYXR1cmUiOi
B7CiAgICAgICJVZGYiOiAiTURFMi1NS01JLTc3M1AtR0ozRi1ZWUFJLVVWQ0stT01
LUyIsCiAgICAgICJQdWJsaWNQYXJhbWV0ZXJzIjogewogICAgICAgICJQdWJsaWNL
ZXlFQ0RIIjogewogICAgICAgICAgImNydiI6ICJFZDQ0OCIsCiAgICAgICAgICAiU
HVibGljIjogImpSOXVyUGJvc2xvU1J1NThsa0tHOU80TDVCTnpxYkVzM29xOEl6d0
xxVTJReUdSazhrV0QKICBvazZPT3doWU9jUmdYZW90X2VWT0FHbUEifX19LAogICA
gIkFjY291bnRBZGRyZXNzIjogImFsaWNlQGV4YW1wbGUuY29tIiwKICAgICJTZXJ2
aWNlVWRmIjogIk1EM0UtRk42Vy0zRzQ1LVlRNDMtUVhZUi1DVTRYLVJLRzUiLAogI
CAgIkVzY3Jvd0VuY3J5cHRpb24iOiB7CiAgICAgICJVZGYiOiAiTUJTSy0yWTZHLU
RLNlAtVDZUVS1PU0xELUdDRlctTVBIRyIsCiAgICAgICJQdWJsaWNQYXJhbWV0ZXJ
zIjogewogICAgICAgICJQdWJsaWNLZXlFQ0RIIjogewogICAgICAgICAgImNydiI6
ICJYNDQ4IiwKICAgICAgICAgICJQdWJsaWMiOiAiUjVXMFRZVXljRU1oR3V4R3VDa
0JUTVlCMU1nS1owMzZ5MDUyWExWYk1zanhnZzlpREQteQogIFZZVk5lX3lVQ204UU
d0cFN0XzhFYjNjQSJ9fX0sCiAgICAiQWRtaW5pc3RyYXRvclNpZ25hdHVyZSI6IHs
KICAgICAgIlVkZiI6ICJNQkw1LUpTTjMtVjU2US00VUxZLUdZN1gtR00zVi1LVlBa
IiwKICAgICAgIlB1YmxpY1BhcmFtZXRlcnMiOiB7CiAgICAgICAgIlB1YmxpY0tle
UVDREgiOiB7CiAgICAgICAgICAiY3J2IjogIkVkNDQ4IiwKICAgICAgICAgICJQdW
JsaWMiOiAiWmM1bjlxNDgyRTVSdUhzSjRlZFdzcjc1YXh3elIzbVdibTVUNWxmbkJ
UUklBaWNhR1BvZwogIGJxYTU0eVNBN3NXamg0OTB4cnZyRXlhQSJ9fX0sCiAgICAi
Q29tbW9uRW5jcnlwdGlvbiI6IHsKICAgICAgIlVkZiI6ICJNQlVGLVA3UzItV0ZFR
i1EM01MLU9LQ0MtWFlPVC02U0xEIiwKICAgICAgIlB1YmxpY1BhcmFtZXRlcnMiOi
B7CiAgICAgICAgIlB1YmxpY0tleUVDREgiOiB7CiAgICAgICAgICAiY3J2IjogIlg
0NDgiLAogICAgICAgICAgIlB1YmxpYyI6ICI4U2hGY21OejVCVzluR09idTdfdFVa
RDVobTVhblM3VGFyNTNSWERjZzVheWlQcGI3TDh6CiAgVkMxbGpqSmVBdS1oazlUV
U51eVhFN3NBIn19fSwKICAgICJDb21tb25BdXRoZW50aWNhdGlvbiI6IHsKICAgIC
AgIlVkZiI6ICJNRFlRLUpRQjItM0VPQy1ONFpELUZCSkUtSDNJWS1XTTZWIiwKICA
Hallam-Baker Expires 30 December 2023 [Page 12]
Internet-Draft Mesh Protocol Reference June 2023
gICAgIlB1YmxpY1BhcmFtZXRlcnMiOiB7CiAgICAgICAgIlB1YmxpY0tleUVDREgi
OiB7CiAgICAgICAgICAiY3J2IjogIlg0NDgiLAogICAgICAgICAgIlB1YmxpYyI6I
CIyelBsMTBxbnpwR0hfMWlkREZhVk15RXltRWY2Wm1oTXR6cG1sR2ZaSFoyc2lGQz
BTSEk0CiAgd2FtZ2hzWVMzaEZMX3FYNm1PLVNRUXVBIn19fSwKICAgICJQcm9maWx
lU2lnbmF0dXJlIjogewogICAgICAiVWRmIjogIk1CM1QtV0lQWi1KUkNXLVFaRk0t
U0NRTC1PVlZPLUFITzIiLAogICAgICAiUHVibGljUGFyYW1ldGVycyI6IHsKICAgI
CAgICAiUHVibGljS2V5RUNESCI6IHsKICAgICAgICAgICJjcnYiOiAiRWQ0NDgiLA
ogICAgICAgICAgIlB1YmxpYyI6ICJvcjJYLXJQMHRhVFg2NkZ4WTY4UlI0UjdHZmc
zcjYtTUljMzNRZUVnVTF3S2lfSFZLeWlCCiAgbktEWFpFZXhZdEVDMlpIN0NOcVVD
MlFBIn19fX19",
{
"signatures":[{
"alg":"S512",
"kid":"MB3T-WIPZ-JRCW-QZFM-SCQL-OVVO-AHO2",
"signature":"lhicUvvDwdI2cJGDmMDmEYhZIDOp0be5IjblZGn0
Uycnu3odE_h5jGOY3W58RlXBr_NHUwHfAbGAHcigqzKxUJGrM9MKXzgYF5JUx7uHS
N4qXpAcBPHHnU1qLepITOsRMoT92a3KmLGskrt9O2PlgBQA"}
],
"PayloadDigest":"hg5Z9SBDuRlEje8R3-0KZFBNHW738w1k0ZvF-nNJ
KZ4acEZKjmAwOzx3cbf6HXJoWy3eLs4BqYdhXQWkftir1g"}
],
"EnvelopedCallsignBinding":[[{
"dig":"S512",
"ContentMetaData":"ewogICJNZXNzYWdlVHlwZSI6ICJDYWxsc2ln
bkJpbmRpbmciLAogICJjdHkiOiAiYXBwbGljYXRpb24vbW1tL29iamVjdCIsCiAgI
kNyZWF0ZWQiOiAiMjAyMy0wNi0yOFQxNzowMDoxNVoifQ"},
"ewogICJDYWxsc2lnbkJpbmRpbmciOiB7CiAgICAiQ2Fub25pY2FsIjog
ImFsaWNlQGV4YW1wbGUuY29tIiwKICAgICJEaXNwbGF5IjogImFsaWNlQGV4YW1wb
GUuY29tIiwKICAgICJQcm9maWxlVWRmIjogIk1CM1QtV0lQWi1KUkNXLVFaRk0tU0
NRTC1PVlZPLUFITzIiLAogICAgIlNlcnZpY2VzIjogW3sKICAgICAgICAiUHJlZml
4IjogIm1tbSJ9XX19",
{
"signatures":[{
"alg":"S512",
"kid":"MBL5-JSN3-V56Q-4ULY-GY7X-GM3V-KVPZ",
"signature":"1uBDFGIPMzRcaScJBzyIOECcYtYffBLWM78uv9
gUiMbLtE_Jg46YyNU5cpStxqNQBKWcKSBEaACAHlNh9eHhL154JZBXuwSw2I0Cac5
VhS-oHkQragtf3I8Eybdx3FmjW_1ZhBQfp8BJbU05xJY8qyAA"}
],
"PayloadDigest":"PWNW2k-pPnUQGwz5cUiPJbU8bYBcHSBWkbwLO6
fLqsIP_vEdl3vWpibWyt9ZZF_rM3F5T3DhGXJHM0tsALPKfg"}
]
]}}
The response payload currently reports the success or failure of the
bind operation:
Hallam-Baker Expires 30 December 2023 [Page 13]
Internet-Draft Mesh Protocol Reference June 2023
{
"BindResponse":{
"EnvelopedAccountHostAssignment":[{
"ContentMetaData":"ewogICJNZXNzYWdlVHlwZSI6ICJBY2NvdW50SG
9zdEFzc2lnbm1lbnQiLAogICJjdHkiOiAiYXBwbGljYXRpb24vbW1tL29iamVjdCI
sCiAgIkNyZWF0ZWQiOiAiMjAyMy0wNi0yOFQxNzowMDoxNVoifQ"},
"ewogICJBY2NvdW50SG9zdEFzc2lnbm1lbnQiOiB7CiAgICAiQWNjb3VudE
FkZGVzcyI6ICJhbGljZUBleGFtcGxlLmNvbSIsCiAgICAiQWNjZXNzRW5jcnlwdCI
6IHsKICAgICAgIlVkZiI6ICJNQkpBLVNJR0QtRlVOQi1QQVI3LUVCUEItV0FQRy1I
SERGIiwKICAgICAgIlB1YmxpY1BhcmFtZXRlcnMiOiB7CiAgICAgICAgIlB1YmxpY
0tleUVDREgiOiB7CiAgICAgICAgICAiY3J2IjogIlg0NDgiLAogICAgICAgICAgIl
B1YmxpYyI6ICJPUzZsU2lIeThMaVo4Y2tnYlVLcUk4Z0UyaWRjTWFDNFVxaXcyYUF
FYmphcVRQbWlCUjhxCiAgMFpmdDYyNkRJLVEzXy1UUWthUXZUcXlBIn19fX19"
],
"Status":201,
"StatusDescription":"Operation completed successfully"}}
It is likely that a future revisions of the specification will
specify the host(s) to which future account service operations are to
be directed. This would allow the account management operations to
be separated from the account maintenance operations without
requiring the traditional tiered architecture in which every
interaction with a service is first routed to a host that cannot
perform the required action so that it can be directed to the host
that can.
6.2.1.1. Bind Group Account
Mesh Group Accounts are created in the same manner as user accounts
except that the ProfileGroup is specified.
6.2.1.2. Account Recovery
Should all the administration devices be lost, an account MAY be
recovered by the process of recovering the profile master secret and
using it to access the account through the account authentication
key.
6.2.2. Unbind Account
An account registration is deleted using the UnbindAccount
transaction.
>>>> Unfinished ProtocolAccountDelete
The request payload:
Hallam-Baker Expires 30 December 2023 [Page 14]
Internet-Draft Mesh Protocol Reference June 2023
{
"UnbindRequest":{
"Account":"alice@example.com"}}
The response payload:
{
"UnbindResponse":{
"Status":201,
"StatusDescription":"Operation completed successfully"}}
6.2.2.1. Account Transfer
Should a user wish to transfer their account to a new service
provider, they first use the Bind Account operation to bind the
account to the new service provider, then populate the account entry
at the new account using the account authentication key.
Only after the new account binding has been completed and is ready
for use, is the unbind operation used to delete the account entry at
the old service provider.
Future versions of the protocol will elaborate on this mechanism so
that the change of address can be signaled to connected devices and
parties sending messages to the account.
6.2.3. Account Recovery and Transfer.
Account recovery is necessary in the case that user has lost control
of every administration device connected to the account and must re-
create the account profile and bind a new set of administrative
devices. Account transfer is the process of unbinding an account
from one service and rebinding it to a new one.
These capabilities are both critical to the long term success of the
Mesh but have been deleted from the current revision of the
specification as their implementation is interdependent on the
architecture of the callsign registry.
>>>> Unfinished ProtocolAccountRecover
[TBS]
Hallam-Baker Expires 30 December 2023 [Page 15]
Internet-Draft Mesh Protocol Reference June 2023
6.3. Persistence Store Management
All the state associated with a Mesh profile is stored as a sequence
of DARE Messages in a Dare Container. The Mesh Service holding the
master copy of the persistence stores and the devices connected to
the profile containing complete copies (replicas) or partial copies
(redactions).
Thus, the only primitive needed to achieve synchronization of the
profile state are those required for synchronization of a DARE
Container. These steps are:
* Obtain the status of the catalogs and spools associated with the
account.
* Download catalog and spool updates
* Upload catalog updates.
To ensure a satisfactory user experience, Mesh Messages are
intentionally limited in size to 32 KB or less, thus ensuring that an
application can retrieve the most recent 100 messages almost
instantaneously on a high bandwidth connection and without undue
delay on a slower one.
6.3.1. Status
The status transaction returns the status of the containers the
device is authorized to access for the specified account together
with the updated Device Connection Entry if this has been modified
since the entry presented to authenticate the request was issued.
Alice adds an entry to her bookmark catalog. Before the bookmark can
be added, the device synchronizes to the service. The
synchronization process begins with a request for the status of all
the stores associated with the account that it has access rights for:
Hallam-Baker Expires 30 December 2023 [Page 16]
Internet-Draft Mesh Protocol Reference June 2023
{
"DownloadRequest":{
"MaxResults":-1,
"DeviceUDF":"MBYI-QYCM-JXEY-OJ5D-4OW2-RPIR-SHUM",
"CatalogedDeviceDigest":"MC55-7MYF-ENK3-L6N2-GTXT-WG45-WN",
"Select":[{
"Store":"Credential",
"IndexMin":3},
{
"Store":"Contact",
"IndexMin":3},
{
"Store":"Task",
"IndexMin":1},
{
"Store":"Bookmark",
"IndexMin":1},
{
"Store":"Network",
"IndexMin":1},
{
"Store":"Application",
"IndexMin":1},
{
"Store":"Device",
"IndexMin":3},
{
"Store":"Access",
"IndexMin":3},
{
"Store":"Publication",
"IndexMin":1},
{
"Store":"Inbound",
"IndexMin":3},
{
"Store":"Outbound",
"IndexMin":1},
{
"Store":"Local",
"IndexMin":2}
]}}
If the account has a very large number of stores, the device might
only ask for the status of specific stores of interest.
The response specifies the status of each store specifying the index
and Merkle tree apex digest values for each:
Hallam-Baker Expires 30 December 2023 [Page 17]
Internet-Draft Mesh Protocol Reference June 2023
{
"DownloadResponse":{
"Updates":[{
"Envelopes":[[{
"enc":"A256CBC",
"dig":"S512",
"Salt":"irmN6peoQ3obHMmNW164ow",
"recipients":[{
"kid":"MD5W-K3CL-LJ5Q-YVXA-CMFG-5SPX-TUXV",
"epk":{
"PublicKeyECDH":{
"crv":"X448",
"Public":"c1wBMbDx_9Rd82IfuWaPqvf-rDhV5QShZ
DZE7gEqT6ciyPARKXVSYKjGiRqiGT2PMyi8UY_tkc2A"}},
"wmk":"jezjPjJU-Djfm_bZitHdInmOPTg1iIQrx7CseX5Z
-E6gv9w37BchXg"}
],
"ContentMetaData":"ewogICJVbmlxdWVJZCI6ICI6ZnRwLmV4
YW1wbGUuY29tIiwKICAiRXZlbnQiOiAiVXBkYXRlIn0",
"SequenceInfo":{
"Index":3,
"TreePosition":1137},
"Received":"2023-06-28T17:00:19Z",
"PayloadDigest":"hAJqF3IoraQqNHLcHZMsf_c1IcrD_xDOnJ
0gN9QBcSoRk8QhcfsKzi9L6J7kGzjhHprDCxyYgCE88DZUYC7CnA",
"TreeDigest":"ZdG_UR3YUbPxX1e28NR6S26yAwkmsLKmwSkcH
12bWUrEH9A54K_PX9VdKZODQQ5yy0nBtvubUAJefbjgexLeFw"},
"UC8cIjRLdmfLxW4pQ7-dAl1nKucTTs29pTSCQM6_v3H0d4jL8lzn
tinoJGl6PgkOEiyPYc6a7ioi_RnEpFlH1dtoZ7Ra6VE_Y0co944cx3f05CZdZc9Zz
P6k7d4XpShqnJq7rMvTZDMOHsiWr7VnulMz9_mU4g_uAz94qwvACdA",
{}
]
],
"Store":"Credential"},
{
"Envelopes":[
],
"Store":"Contact"},
{
"Envelopes":[
],
"Store":"Task"},
{
"Envelopes":[
],
"Store":"Bookmark"},
{
"Envelopes":[
Hallam-Baker Expires 30 December 2023 [Page 18]
Internet-Draft Mesh Protocol Reference June 2023
],
"Store":"Network"},
{
"Envelopes":[
],
"Store":"Application"},
{
"Envelopes":[
],
"Store":"Device"},
{
"Envelopes":[
],
"Store":"Access"},
{
"Envelopes":[
],
"Store":"Publication"},
{
"Envelopes":[
],
"Store":"Inbound"},
{
"Envelopes":[
],
"Store":"Outbound"},
{
"Envelopes":[
],
"Store":"Local"}
],
"Status":201,
"StatusDescription":"Operation completed successfully"}}
Bug: The current version of the reference code is only returning the
digest values for the outbound store.
6.3.2. Download
The download transaction returns a collection of entries from one or
more containers associated with the profile.
The service MAY limit the number of entries returned in an individual
response for performance reasons.
The previous status operation has reported that a new envelope has
been added to the credential store. The device requests this data
from the service:
Hallam-Baker Expires 30 December 2023 [Page 19]
Internet-Draft Mesh Protocol Reference June 2023
The response contains the requested envelope:
Future: The current implementation of the download operation is
limited by the capabilities of the HTTP binding of the RUD transport.
A future binding allowing operations that consist of a single request
followed by a sequence of responses will allow much greater
flexibility.
Future versions of the protocol may support optional filtering
criteria so that the service only returns objects matching specific
criteria and/or only return certain parts of the selected messages.
6.3.3. Transact
The transact transaction appends envelopes to one or more stores.
The operation is atomic, that is either all the changes specified
will be made to the stores or none will. This ensures that
simultaneous attempts to update a store do not result in race
conditions allows Mesh stores to provide ACID (Atomicity,
Consistency, Isolation, Durability) properties to the applications
they serve.
Clients SHOULD check to determine if updates to a container conflict
with pending updates on the device waiting to be uploaded. For
example, if a contact that the user modified on the device attempting
to synchronize was subsequently deleted. The means of resolving such
conflicts is not in the scope of this specification.
Each update to a catalog or container specifies the expected
container index and apex digest. This provides a strong guarantee of
consistency. The service MUST verify each update to check that the
Merkle Tree values specified are consistent with the store entries
and that the signature on the apex value (if specified) is valid and
correct.
Services MAY impose limits on the size and number of additions
performed in response to a TransactRequest message to ensure that
processing time does not degrade performance for other users.
The request payload specifies the data to be appended to the stores.
Hallam-Baker Expires 30 December 2023 [Page 20]
Internet-Draft Mesh Protocol Reference June 2023
{
"TransactRequest":{
"Updates":[{
"Envelopes":[[{
"enc":"A256CBC",
"dig":"S512",
"kid":"EBQG-ABNM-VGL3-YZPB-MCTH-RCCN-MVRF",
"Salt":"zQqPRQivGSXVQpq_vC-glA",
"recipients":[{
"kid":"MDEC-T7A4-FMKQ-ARG4-A7XL-C5YG-6Z7P",
"epk":{
"PublicKeyECDH":{
"crv":"X448",
"Public":"YjBwUWu6QUiLDH6yKpmzF0NqewYU2ceNy
XlighsJvD4u9HlucHVHP8_z1wH3vSAAGDhEXi1GOkQA"}},
"wmk":"zcLc8KMJYu8BItSMrHEM1ny8wvLb6VcLFBLW1gGK
teX2yunNOas-kw"}
],
"ContentMetaData":"ewogICJVbmlxdWVJZCI6ICJOQVFULUZL
N1gtR0w1QS1DUUNOLTVWNUQtWFlWVC1VMjY3IiwKICAiRXZlbnQiOiAiTmV3In0",
"SequenceInfo":{
"Index":1,
"TreePosition":0},
"PayloadDigest":"6ZmcFu-7qSH168GqmF7ivXphhJ7pqpAEj1
ire6a5gXGyNYqeZbTC7uu0v1Kfw31IyEAPu5HUSHciuJdAS2cw-A",
"TreeDigest":"zQRyNXghPaZ6zCnb34oSAt986UQkvhtIAlzlQ
wf4NWVafUSGIMNKbce9tIg18ETBO-jZoFh4F_13Cm0_arXQFA"},
"mKlLNGh_cJ7xht4pkpMZuRlkBe1NsM5AlY8FRptEQxTySgXE_IA4
y9VfLcDcTOu6KmDSk9x1Vz2vX53C8eIhb1dZs5VNjjyQr6Nt8LNh4SI32f3NsF78v
dyGBP-jImCOo3mWkivzQqJC9ZGKgzPTlDCMP_20oh6vwO8n2UcusTseMVfOjWmlIH
zhMKynHC00"
]
],
"Store":"Bookmark"}
]}}
The response reports successful completion:
{
"TransactResponse":{
"Bitmask":"AAEAAA",
"Status":201,
"StatusDescription":"Operation completed successfully"}}
Hallam-Baker Expires 30 December 2023 [Page 21]
Internet-Draft Mesh Protocol Reference June 2023
6.4. Device Connection
In order to support the wide range of affordances supported by
devices, four device connection interactions are currently specified.
The use of these mechanisms is described in
[draft-hallambaker-mesh-architecture] and the interactions themselves
are described in section ??? following.
Device connection operations are always issued by a device requesting
connection to a Mesh account and must therefore be authenticated
under the device profile rather than the account profile. Two device
connection operations are currently defined:
Connect Requests connection to the account.
Complete Polls for completion of a connection request.
Since the second operation is merely polling for completion of the
transaction requested by the first, it is likely that these will be
combined in a future revision of the specification.
6.4.1. Connect
If the connection request is initiated by the device being connected,
the device constructs a RequestConnection message which is posted to
the Mesh Service using the Connect operation.
If the Connect operation is accepted (i.e. the service determines it
is not abuse), the service constructs an AcknowledgeConnection
message which is forwarded to the inbound spool of the account to
which connection is requested. The requesting device receives a copy
of the AcknowledgeConnection message and the profile of the account
it is requesting connection to.
As described in the following section, the AcknowledgeConnection
message contains the request details presented by the device and a
nonce value generated by the service. This nonce value is used to
compute the witness value that will be used for mutual authentication
of the device and account.
The connect request is made to the service, not the account. The
payload contains the enveloped connection request:
Hallam-Baker Expires 30 December 2023 [Page 22]
Internet-Draft Mesh Protocol Reference June 2023
{
"ConnectRequest":{
"EnvelopedRequestConnection":[{
"EnvelopeId":"MBDW-KFHR-OR66-U6CR-CCEV-N4DD-MXXQ",
"ContentMetaData":"ewogICJVbmlxdWVJZCI6ICJOQ081LUFWN0EtRF
pZWS1BNUpELUdHV0ktS0gzWS1PSk5EIiwKICAiTWVzc2FnZVR5cGUiOiAiUmVxdWV
zdENvbm5lY3Rpb24iLAogICJjdHkiOiAiYXBwbGljYXRpb24vbW1tL29iamVjdCIs
CiAgIkNyZWF0ZWQiOiAiMjAyMy0wNi0yOFQxNzowMDo0NVoifQ"},
"ewogICJSZXF1ZXN0Q29ubmVjdGlvbiI6IHsKICAgICJBY2NvdW50QWRkcm
VzcyI6ICJhbGljZUBleGFtcGxlLmNvbSIsCiAgICAiQXV0aGVudGljYXRlZERhdGE
iOiBbewogICAgICAgICJFbnZlbG9wZUlkIjogIk1CWFYtU0lCRi00WEVXLTRFVkUt
N1VSVy1GNlZULU5UWDMiLAogICAgICAgICJkaWciOiAiUzUxMiIsCiAgICAgICAgI
kNvbnRlbnRNZXRhRGF0YSI6ICJld29nSUNKVmJtbHhkV1ZKWkNJNklDSk5RbGhXTF
ZOSlFrWXRORmhGVnkwCiAgMFJWWkZMVGRWVWxjdFJqWldWQzFPVkZneklpd0tJQ0F
pVFdWemMyRm5aVlI1Y0dVaU9pQWlVSEp2Wm1sc1oKICBVUmxkbWxqWlNJc0NpQWdJ
bU4wZVNJNklDSmhjSEJzYVdOaGRHbHZiaTl0YlcwdmIySnFaV04wSWl3S0lDQQogI
GlRM0psWVhSbFpDSTZJQ0l5TURJekxUQTJMVEk0VkRFM09qQXdPalExV2lKOSJ9LA
ogICAgICAiZXdvZ0lDSlFjbTltYVd4bFJHVjJhV05sSWpvZ2V3b2dJQ0FnSWtWdVk
zSgogIDVjSFJwYjI0aU9pQjdDaUFnSUNBZ0lDSlZaR1lpT2lBaVRVSllWUzAzUVVv
MUxVcFFTMDh0UjBwWFRpMUxSCiAgRVZCTFZoSFIxSXRRMFpKV1NJc0NpQWdJQ0FnS
UNKUWRXSnNhV05RWVhKaGJXVjBaWEp6SWpvZ2V3b2dJQ0EKICBnSUNBZ0lDSlFkV0
pzYVdOTFpYbEZRMFJJSWpvZ2V3b2dJQ0FnSUNBZ0lDQWdJbU55ZGlJNklDSllORFE
0SQogIGl3S0lDQWdJQ0FnSUNBZ0lDSlFkV0pzYVdNaU9pQWlWakZOYUhaRldsaHpN
bGs1YnpNdGQxaFdNbTFrVDNBCiAgeWNWa3lNR3hXWjIxTlF6VnlSVGd4UlRORFJXa
ERVMXBTWDBoMGVRb2dJRFpMTjFSTUxYY3hkM0V0WTFoMVkKICAwOXVaVVkyTVVScl
FTSjlmWDBzQ2lBZ0lDQWlVMmxuYm1GMGRYSmxJam9nZXdvZ0lDQWdJQ0FpVldSbUl
qbwogIGdJazFETmxJdFUwWkVRUzFQV1ZSS0xVZExOa3N0UmtsV1RpMVBUalZITFVr
elVFVWlMQW9nSUNBZ0lDQWlVCiAgSFZpYkdsalVHRnlZVzFsZEdWeWN5STZJSHNLS
UNBZ0lDQWdJQ0FpVUhWaWJHbGpTMlY1UlVORVNDSTZJSHMKICBLSUNBZ0lDQWdJQ0
FnSUNKamNuWWlPaUFpUldRME5EZ2lMQW9nSUNBZ0lDQWdJQ0FnSWxCMVlteHBZeUk
2SQogIENKTk5VVXRlazFHYURSVk9UQmxhRXRWYzJKa01tbERXVnByVUdkRlVuRmxU
azh3VW00MFVsUk1aWHBzV1MxCiAgZlJXTmpWR3hGQ2lBZ05VTnBiek55Y25KclUye
FljMnB5Ym1WNloyNUhTbGxCSW4xOWZTd0tJQ0FnSUNKQmQKICBYUm9aVzUwYVdOaG
RHbHZiaUk2SUhzS0lDQWdJQ0FnSWxWa1ppSTZJQ0pOUTB4TExWcFVURlF0VWtGRE5
pMQogIE9Ua3BGTFRVelNVUXRWalF5U0MxS1UwbEJJaXdLSUNBZ0lDQWdJbEIxWW14
cFkxQmhjbUZ0WlhSbGNuTWlPCiAgaUI3Q2lBZ0lDQWdJQ0FnSWxCMVlteHBZMHRsZ
VVWRFJFZ2lPaUI3Q2lBZ0lDQWdJQ0FnSUNBaVkzSjJJam8KICBnSWxnME5EZ2lMQW
9nSUNBZ0lDQWdJQ0FnSWxCMVlteHBZeUk2SUNKRGIxVnFkRU5GVkVkTFdHcFBkMmh
0UgogIGt3MFVVOXpabFZCTkVwWmVYSTBSRnBCVFhvd1YwUjFiRVUyYUdKWE1WRjJO
M2RCQ2lBZ1IwRllWRkJ3TjBzCiAgMGRHOVZaMFl3U0dWdVQzQlpXVFpCSW4xOWZTd
0tJQ0FnSUNKUWNtOW1hV3hsVTJsbmJtRjBkWEpsSWpvZ2UKICB3b2dJQ0FnSUNBaV
ZXUm1Jam9nSWsxQ1dGWXRVMGxDUmkwMFdFVlhMVFJGVmtVdE4xVlNWeTFHTmxaVUx
VNQogIFVXRE1pTEFvZ0lDQWdJQ0FpVUhWaWJHbGpVR0Z5WVcxbGRHVnljeUk2SUhz
S0lDQWdJQ0FnSUNBaVVIVmliCiAgR2xqUzJWNVJVTkVTQ0k2SUhzS0lDQWdJQ0FnS
UNBZ0lDSmpjbllpT2lBaVJXUTBORGdpTEFvZ0lDQWdJQ0EKICBnSUNBZ0lsQjFZbX
hwWXlJNklDSmlSVnBtVlRkTFJFTlJSbkZoUWpOM01sbDBTV0l0WDNNNWVsTmhVVEJ
PWAogIHkxRlExZHNlbGN5YVcweFprSkxjVEJ2WTFoU0NpQWdTR3RIT0ZKR09XZDZR
MjlwWnpkMVRFeEtZVXN5VlVWCiAgQkluMTlmWDE5IiwKICAgICAgewogICAgICAgI
Hallam-Baker Expires 30 December 2023 [Page 23]
Internet-Draft Mesh Protocol Reference June 2023
CJzaWduYXR1cmVzIjogW3sKICAgICAgICAgICAgImFsZyI6ICJTNTEyIiwKICAgIC
AgICAgICAgImtpZCI6ICJNQlhWLVNJQkYtNFhFVy00RVZFLTdVUlctRjZWVC1OVFg
zIiwKICAgICAgICAgICAgInNpZ25hdHVyZSI6ICJWUVlCYlJsNnhtLVR6by11R2tP
ZDUzUktRcm4xS0U2c281SUVobXdCT1FnNDl1SnRmCiAgamFKWVpUeEMxT2ZRM3oxd
TJDT0dheURJUkFBdkZrQTR2TzdKRnBrNklPUTF0UmJ3SGF1LVFacjAwZXk5enoKIC
BqajhjV25qYW5vemZTWE0xYjdUMDhETDdVR080ZERxR2FHcUY1RHhnQSJ9XSwKICA
gICAgICAiUGF5bG9hZERpZ2VzdCI6ICJiR3EtY2o5SjdPSHNmdmhrMGhYc093dFA2
QzZsWU9sMFFmOFpmZXRLN0ZCYk0KICBKWVFZNXdvTENGb1hYbTkxUmc2Y1FnT0l1U
y1XV25jT0RTclRsck9VZyJ9XSwKICAgICJDbGllbnROb25jZSI6ICJUNnlESmt1SD
U5ZEIwdzJXUExwMnZBIiwKICAgICJQaW5JZCI6ICJBQUdELUJRSVctWktPVC1VQUl
ULVU0RUotWFNLVy1BV01LIiwKICAgICJQaW5XaXRuZXNzIjogIk9neWxjY0RPcVI5
U1JSb0c3UXFZQVFveXA3Z2pjOEVtNTBRUHFkanMxN2JxN3BTOQogIE9teTY2RVkzd
2ljSHJ5S05xNmRSa21qcGtSTllNeGZBRHJpeUpnIiwKICAgICJNZXNzYWdlSWQiOi
AiTkNPNS1BVjdBLURaWVktQTVKRC1HR1dJLUtIM1ktT0pORCJ9fQ"
],
"Rights":[
]}}
The response payload contains the information the device requires to
compute the witness value and to poll for completion. This is a copy
of the request acknowledgement and a copy of the profile of the
account the device has requested connection to:
{
"ConnectResponse":{
"EnvelopedAcknowledgeConnection":[{
"EnvelopeId":"MBXJ-7P6B-AMOK-NITJ-E5L4-ODSV-OGM4",
"ContentMetaData":"ewogICJVbmlxdWVJZCI6ICJHU0pSLU9IVTUtSE
hYTy1LVVJZLVNUNEItSFZCQS03UFY1IiwKICAiTWVzc2FnZVR5cGUiOiAiQWNrbm9
3bGVkZ2VDb25uZWN0aW9uIiwKICAiY3R5IjogImFwcGxpY2F0aW9uL21tbS9vYmpl
Y3QiLAogICJDcmVhdGVkIjogIjIwMjMtMDYtMjhUMTc6MDA6NDVaIn0"},
"ewogICJBY2tub3dsZWRnZUNvbm5lY3Rpb24iOiB7CiAgICAiRW52ZWxvcG
VkUmVxdWVzdENvbm5lY3Rpb24iOiBbewogICAgICAgICJFbnZlbG9wZUlkIjogIk1
CRFctS0ZIUi1PUjY2LVU2Q1ItQ0NFVi1ONERELU1YWFEiLAogICAgICAgICJDb250
ZW50TWV0YURhdGEiOiAiZXdvZ0lDSlZibWx4ZFdWSlpDSTZJQ0pPUTA4MUxVRldOM
EV0UkZwWldTMQogIEJOVXBFTFVkSFYwa3RTMGd6V1MxUFNrNUVJaXdLSUNBaVRXVn
pjMkZuWlZSNWNHVWlPaUFpVW1WeGRXVnpkCiAgRU52Ym01bFkzUnBiMjRpTEFvZ0l
DSmpkSGtpT2lBaVlYQndiR2xqWVhScGIyNHZiVzF0TDI5aWFtVmpkQ0kKICBzQ2lB
Z0lrTnlaV0YwWldRaU9pQWlNakF5TXkwd05pMHlPRlF4Tnpvd01EbzBOVm9pZlEif
SwKICAgICAgImV3b2dJQ0pTWlhGMVpYTjBRMjl1Ym1WamRHbHZiaUk2SUhzS0lDQW
dJQ0oKICBCWTJOdmRXNTBRV1JrY21WemN5STZJQ0poYkdsalpVQmxlR0Z0Y0d4bEx
tTnZiU0lzQ2lBZ0lDQWlRWFYwYQogIEdWdWRHbGpZWFJsWkVSaGRHRWlPaUJiZXdv
Z0lDQWdJQ0FnSUNKRmJuWmxiRzl3WlVsa0lqb2dJazFDV0ZZCiAgdFUwbENSaTAwV
0VWWExUUkZWa1V0TjFWU1Z5MUdObFpVTFU1VVdETWlMQW9nSUNBZ0lDQWdJQ0prYV
djaU8KICBpQWlVelV4TWlJc0NpQWdJQ0FnSUNBZ0lrTnZiblJsYm5STlpYUmhSR0Y
wWVNJNklDSmxkMjluU1VOS1ZtSgogIHRiSGhrVjFaS1drTkpOa2xEU2s1UmJHaFhU
RlpPU2xGcldYUk9SbWhHVm5rd0NpQWdNRkpXV2taTVZHUldWCiAgV3hqZEZKcVdsZ
FdRekZQVmtabmVrbHBkMHRKUTBGcFZGZFdlbU15Um01YVZsSTFZMGRWYVU5cFFXbF
Hallam-Baker Expires 30 December 2023 [Page 24]
Internet-Draft Mesh Protocol Reference June 2023
ZTRXAKICAyV20xc2Mxb0tJQ0JWVW14a2JXeHFXbE5KYzBOcFFXZEpiVTR3WlZOSk5
rbERTbWhqU0VKellWZE9hR1JIYgogIEhaaWFUbDBZbGN3ZG1JeVNuRmFWMDR3U1ds
M1MwbERRUW9nSUdsUk0wcHNXVmhTYkZwRFNUWkpRMGw1VFVSCiAgSmVreFVRVEpNV
kVrMFZrUkZNMDlxUVhkUGFsRXhWMmxLT1NKOUxBb2dJQ0FnSUNBaVpYZHZaMGxEU2
xGamIKICBUbHRZVmQ0YkZKSFZqSmhWMDVzU1dwdloyVjNiMmRKUTBGblNXdFdkVmt
6U2dvZ0lEVmpTRkp3WWpJMGFVOQogIHBRamREYVVGblNVTkJaMGxEU2xaYVIxbHBU
MmxCYVZSVlNsbFdVekF6VVZWdk1VeFZjRkZUTURoMFVqQndXCiAgRlJwTVV4U0NpQ
WdSVlpDVEZab1NGSXhTWFJSTUZwS1YxTkpjME5wUVdkSlEwRm5TVU5LVVdSWFNuTm
hWMDUKICBSV1ZoS2FHSlhWakJhV0VwNlNXcHZaMlYzYjJkSlEwRUtJQ0JuU1VOQlo
wbERTbEZrVjBwellWZE9URnBZYgogIEVaUk1GSkpTV3B2WjJWM2IyZEpRMEZuU1VO
QlowbERRV2RKYlU1NVpHbEpOa2xEU2xsT1JGRTBTUW9nSUdsCiAgM1MwbERRV2RKU
TBGblNVTkJaMGxEU2xGa1YwcHpZVmROYVU5cFFXbFdha1pPWVVoYVJsZHNhSHBOYk
dzMVkKICBucE5kR1F4YUZkTmJURnJWRE5CQ2lBZ2VXTldhM2xOUjNoWFdqSXhUbEY
2Vm5sU1ZHZDRVbFJPUkZKWGFFUgogIFZNWEJUV0RCb01HVlJiMmRKUkZwTVRqRlNU
VXhZWTNoa00wVjBXVEZvTVZrS0lDQXdPWFZhVlZreVRWVlNjCiAgbEZUU2psbVdEQ
npRMmxCWjBsRFFXbFZNbXh1WW0xR01HUllTbXhKYW05blpYZHZaMGxEUVdkSlEwRn
BWbGQKICBTYlVscWJ3b2dJR2RKYXpGRVRteEpkRlV3V2tWUlV6RlFWMVpTUzB4Vlp
FeE9hM04wVW10c1YxUnBNVkJVYQogIGxaSVRGVnJlbFZGVldsTVFXOW5TVU5CWjBs
RFFXbFZDaUFnU0ZacFlrZHNhbFZIUm5sWlZ6RnNaRWRXZVdOCiAgNVNUWkpTSE5MU
1VOQlowbERRV2RKUTBGcFZVaFdhV0pIYkdwVE1sWTFVbFZPUlZORFNUWkpTSE1LSU
NCTFMKICBVTkJaMGxEUVdkSlEwRm5TVU5LYW1OdVdXbFBhVUZwVWxkUk1FNUVaMmx
NUVc5blNVTkJaMGxEUVdkSlEwRgogIG5TV3hDTVZsdGVIQlplVWsyU1FvZ0lFTktU
azVWVlhSbGF6RkhZVVJTVms5VVFteGhSWFJXWXpKS2EwMXRiCiAgRVJYVm5CeVZVZ
GtSbFZ1Um14VWF6aDNWVzAwTUZWc1VrMWFXSEJ6VjFNeENpQWdabEpYVG1wV1IzaE
dRMmwKICBCWjA1VlRuQmllazU1WTI1S2NsVXllRmxqTW5CNVltMVdObG95TlVoVGJ
HeENTVzR4T1daVGQwdEpRMEZuUwogIFVOS1FtUUtJQ0JZVW05YVZ6VXdZVmRPYUdS
SGJIWmlhVWsyU1VoelMwbERRV2RKUTBGblNXeFdhMXBwU1RaCiAgSlEwcE9VVEI0V
EV4V2NGVlVSbEYwVld0R1JFNXBNUW9nSUU5VWEzQkdURlJWZWxOVlVYUldhbEY1VT
BNeFMKICAxVXdiRUpKYVhkTFNVTkJaMGxEUVdkSmJFSXhXVzE0Y0ZreFFtaGpiVVo
wV2xoU2JHTnVUV2xQQ2lBZ2FVSQogIDNRMmxCWjBsRFFXZEpRMEZuU1d4Q01WbHRl
SEJaTUhSc1pWVldSRkpGWjJsUGFVSTNRMmxCWjBsRFFXZEpRCiAgMEZuU1VOQmFWa
3pTakpKYW04S0lDQm5TV3huTUU1RVoybE1RVzluU1VOQlowbERRV2RKUTBGblNXeE
NNVmwKICB0ZUhCWmVVazJTVU5LUkdJeFZuRmtSVTVHVmtWa1RGZEhjRkJrTW1oMFV
nb2dJR3QzTUZWVk9YcGFiRlpDVAogIGtWd1dtVllTVEJTUm5CQ1ZGaHZkMVl3VWpG
aVJWVXlZVWRLV0UxV1JqSk9NMlJDUTJsQloxSXdSbGxXUmtKCiAgM1RqQnpDaUFnT
UdSSE9WWmFNRmwzVTBkV2RWUXpRbHBYVkZwQ1NXNHhPV1pUZDB0SlEwRm5TVU5LVV
dOdE8KICBXMWhWM2hzVlRKc2JtSnRSakJrV0Vwc1NXcHZaMlVLSUNCM2IyZEpRMEZ
uU1VOQmFWWlhVbTFKYW05blNXcwogIHhRMWRHV1hSVk1HeERVbWt3TUZkRlZsaE1W
RkpHVm10VmRFNHhWbE5XZVRGSFRteGFWVXhWTlFvZ0lGVlhSCiAgRTFwVEVGdlowb
ERRV2RKUTBGcFZVaFdhV0pIYkdwVlIwWjVXVmN4YkdSSFZubGplVWsyU1VoelMwbE
RRV2QKICBKUTBGblNVTkJhVlZJVm1saUNpQWdSMnhxVXpKV05WSlZUa1ZUUTBrMlN
VaHpTMGxEUVdkSlEwRm5TVU5CWgogIDBsRFNtcGpibGxwVDJsQmFWSlhVVEJPUkdk
cFRFRnZaMGxEUVdkSlEwRUtJQ0JuU1VOQlowbHNRakZaYlhoCiAgd1dYbEpOa2xEU
21sU1ZuQnRWbFJrVEZKRlRsSlNia1pvVVdwT00wMXNiREJUVjBsMFdETk5OV1ZzVG
1oVlYKICBFSlBXQW9nSUhreFJsRXhaSE5sYkdONVlWY3dlRnByU2t4alZFSjJXVEZ
vVTBOcFFXZFRSM1JJVDBaS1IwOQogIFhaRFpSTWpsd1ducGtNVlJGZUV0WlZYTjVW
bFZXQ2lBZ1FrbHVNVGxtV0RFNUlpd0tJQ0FnSUNBZ2V3b2dJCiAgQ0FnSUNBZ0lDS
nphV2R1WVhSMWNtVnpJam9nVzNzS0lDQWdJQ0FnSUNBZ0lDQWdJbUZzWnlJNklDSl
Hallam-Baker Expires 30 December 2023 [Page 25]
Internet-Draft Mesh Protocol Reference June 2023
ROVEUKICB5SWl3S0lDQWdJQ0FnSUNBZ0lDQWdJbXRwWkNJNklDSk5RbGhXTFZOSlF
rWXRORmhGVnkwMFJWWkZMVGRWVQogIGxjdFJqWldWQzFPVkZneklpd0tJQ0FnSUNB
Z0lDQWdJQ0FnSW5OcFoyNWhkSFZ5WlNJNklDSldVVmxDWWxKCiAgc05uaHRMVlI2Y
nkxMVIydFBaRFV6VWt0UmNtNHhTMFUyYzI4MVNVVm9iWGRDVDFGbk5EbDFTblJtQ2
lBZ2EKICBtRktXVnBVZUVNeFQyWlJNM294ZFRKRFQwZGhlVVJKVWtGQmRrWnJRVFI
yVHpkS1JuQnJOa2xQVVRGMFVtSgogIDNTR0YxTFZGYWNqQXdaWGs1ZW5vS0lDQnFh
amhqVjI1cVlXNXZlbVpUV0UweFlqZFVNRGhFVERkVlIwODBaCiAgRVJ4UjJGSGNVW
TFSSGhuUVNKOVhTd0tJQ0FnSUNBZ0lDQWlVR0Y1Ykc5aFpFUnBaMlZ6ZENJNklDSm
lSM0UKICB0WTJvNVNqZFBTSE5tZG1ock1HaFljMDkzZEZBMlF6WnNXVTlzTUZGbU9
GcG1aWFJMTjBaQ1lrMEtJQ0JLVwogIFZGWk5YZHZURU5HYjFoWWJUa3hVbWMyWTFG
blQwbDFVeTFYVjI1alQwUlRjbFJzY2s5Vlp5SjlYU3dLSUNBCiAgZ0lDSkRiR2xsY
m5ST2IyNWpaU0k2SUNKVU5ubEVTbXQxU0RVNVpFSXdkekpYVUV4d01uWkJJaXdLSU
NBZ0kKICBDSlFhVzVKWkNJNklDSkJRVWRFTFVKUlNWY3RXa3RQVkMxVlFVbFVMVlU
wUlVvdFdGTkxWeTFCVjAxTElpdwogIEtJQ0FnSUNKUWFXNVhhWFJ1WlhOeklqb2dJ
azluZVd4alkwUlBjVkk1VTFKU2IwYzNVWEZaUVZGdmVYQTNaCiAgMnBqT0VWdE5UQ
lJVSEZrYW5NeE4ySnhOM0JUT1FvZ0lFOXRlVFkyUlZremQybGpTSEo1UzA1eE5tUl
NhMjEKICBxY0d0U1RsbE5lR1pCUkhKcGVVcG5JaXdLSUNBZ0lDSk5aWE56WVdkbFN
XUWlPaUFpVGtOUE5TMUJWamRCTAogIFVSYVdWa3RRVFZLUkMxSFIxZEpMVXRJTTFr
dFQwcE9SQ0o5ZlEiXSwKICAgICJTZXJ2ZXJOb25jZSI6ICJSd0lhaGdKVkNJTDJTN
nNpOXc2SlBBIiwKICAgICJXaXRuZXNzIjogIkdTSlItT0hVNS1ISFhPLUtVUlktU1
Q0Qi1IVkJBLTdQVjUiLAogICAgIk1lc3NhZ2VJZCI6ICJHU0pSLU9IVTUtSEhYTy1
LVVJZLVNUNEItSFZCQS03UFY1In19"
],
"EnvelopedProfileAccount":[{
"EnvelopeId":"MB3T-WIPZ-JRCW-QZFM-SCQL-OVVO-AHO2",
"dig":"S512",
"ContentMetaData":"ewogICJVbmlxdWVJZCI6ICJNQjNULVdJUFotSl
JDVy1RWkZNLVNDUUwtT1ZWTy1BSE8yIiwKICAiTWVzc2FnZVR5cGUiOiAiUHJvZml
sZVVzZXIiLAogICJjdHkiOiAiYXBwbGljYXRpb24vbW1tL29iamVjdCIsCiAgIkNy
ZWF0ZWQiOiAiMjAyMy0wNi0yOFQxNzowMDoxNVoifQ"},
"ewogICJQcm9maWxlVXNlciI6IHsKICAgICJDb21tb25TaWduYXR1cmUiOi
B7CiAgICAgICJVZGYiOiAiTURFMi1NS01JLTc3M1AtR0ozRi1ZWUFJLVVWQ0stT01
LUyIsCiAgICAgICJQdWJsaWNQYXJhbWV0ZXJzIjogewogICAgICAgICJQdWJsaWNL
ZXlFQ0RIIjogewogICAgICAgICAgImNydiI6ICJFZDQ0OCIsCiAgICAgICAgICAiU
HVibGljIjogImpSOXVyUGJvc2xvU1J1NThsa0tHOU80TDVCTnpxYkVzM29xOEl6d0
xxVTJReUdSazhrV0QKICBvazZPT3doWU9jUmdYZW90X2VWT0FHbUEifX19LAogICA
gIkFjY291bnRBZGRyZXNzIjogImFsaWNlQGV4YW1wbGUuY29tIiwKICAgICJTZXJ2
aWNlVWRmIjogIk1EM0UtRk42Vy0zRzQ1LVlRNDMtUVhZUi1DVTRYLVJLRzUiLAogI
CAgIkVzY3Jvd0VuY3J5cHRpb24iOiB7CiAgICAgICJVZGYiOiAiTUJTSy0yWTZHLU
RLNlAtVDZUVS1PU0xELUdDRlctTVBIRyIsCiAgICAgICJQdWJsaWNQYXJhbWV0ZXJ
zIjogewogICAgICAgICJQdWJsaWNLZXlFQ0RIIjogewogICAgICAgICAgImNydiI6
ICJYNDQ4IiwKICAgICAgICAgICJQdWJsaWMiOiAiUjVXMFRZVXljRU1oR3V4R3VDa
0JUTVlCMU1nS1owMzZ5MDUyWExWYk1zanhnZzlpREQteQogIFZZVk5lX3lVQ204UU
d0cFN0XzhFYjNjQSJ9fX0sCiAgICAiQWRtaW5pc3RyYXRvclNpZ25hdHVyZSI6IHs
KICAgICAgIlVkZiI6ICJNQkw1LUpTTjMtVjU2US00VUxZLUdZN1gtR00zVi1LVlBa
IiwKICAgICAgIlB1YmxpY1BhcmFtZXRlcnMiOiB7CiAgICAgICAgIlB1YmxpY0tle
UVDREgiOiB7CiAgICAgICAgICAiY3J2IjogIkVkNDQ4IiwKICAgICAgICAgICJQdW
JsaWMiOiAiWmM1bjlxNDgyRTVSdUhzSjRlZFdzcjc1YXh3elIzbVdibTVUNWxmbkJ
Hallam-Baker Expires 30 December 2023 [Page 26]
Internet-Draft Mesh Protocol Reference June 2023
UUklBaWNhR1BvZwogIGJxYTU0eVNBN3NXamg0OTB4cnZyRXlhQSJ9fX0sCiAgICAi
Q29tbW9uRW5jcnlwdGlvbiI6IHsKICAgICAgIlVkZiI6ICJNQlVGLVA3UzItV0ZFR
i1EM01MLU9LQ0MtWFlPVC02U0xEIiwKICAgICAgIlB1YmxpY1BhcmFtZXRlcnMiOi
B7CiAgICAgICAgIlB1YmxpY0tleUVDREgiOiB7CiAgICAgICAgICAiY3J2IjogIlg
0NDgiLAogICAgICAgICAgIlB1YmxpYyI6ICI4U2hGY21OejVCVzluR09idTdfdFVa
RDVobTVhblM3VGFyNTNSWERjZzVheWlQcGI3TDh6CiAgVkMxbGpqSmVBdS1oazlUV
U51eVhFN3NBIn19fSwKICAgICJDb21tb25BdXRoZW50aWNhdGlvbiI6IHsKICAgIC
AgIlVkZiI6ICJNRFlRLUpRQjItM0VPQy1ONFpELUZCSkUtSDNJWS1XTTZWIiwKICA
gICAgIlB1YmxpY1BhcmFtZXRlcnMiOiB7CiAgICAgICAgIlB1YmxpY0tleUVDREgi
OiB7CiAgICAgICAgICAiY3J2IjogIlg0NDgiLAogICAgICAgICAgIlB1YmxpYyI6I
CIyelBsMTBxbnpwR0hfMWlkREZhVk15RXltRWY2Wm1oTXR6cG1sR2ZaSFoyc2lGQz
BTSEk0CiAgd2FtZ2hzWVMzaEZMX3FYNm1PLVNRUXVBIn19fSwKICAgICJQcm9maWx
lU2lnbmF0dXJlIjogewogICAgICAiVWRmIjogIk1CM1QtV0lQWi1KUkNXLVFaRk0t
U0NRTC1PVlZPLUFITzIiLAogICAgICAiUHVibGljUGFyYW1ldGVycyI6IHsKICAgI
CAgICAiUHVibGljS2V5RUNESCI6IHsKICAgICAgICAgICJjcnYiOiAiRWQ0NDgiLA
ogICAgICAgICAgIlB1YmxpYyI6ICJvcjJYLXJQMHRhVFg2NkZ4WTY4UlI0UjdHZmc
zcjYtTUljMzNRZUVnVTF3S2lfSFZLeWlCCiAgbktEWFpFZXhZdEVDMlpIN0NOcVVD
MlFBIn19fX19",
{
"signatures":[{
"alg":"S512",
"kid":"MB3T-WIPZ-JRCW-QZFM-SCQL-OVVO-AHO2",
"signature":"lhicUvvDwdI2cJGDmMDmEYhZIDOp0be5IjblZGn0
Uycnu3odE_h5jGOY3W58RlXBr_NHUwHfAbGAHcigqzKxUJGrM9MKXzgYF5JUx7uHS
N4qXpAcBPHHnU1qLepITOsRMoT92a3KmLGskrt9O2PlgBQA"}
],
"PayloadDigest":"hg5Z9SBDuRlEje8R3-0KZFBNHW738w1k0ZvF-nNJ
KZ4acEZKjmAwOzx3cbf6HXJoWy3eLs4BqYdhXQWkftir1g"}
],
"Status":201,
"StatusDescription":"Operation completed successfully"}}
6.4.2. Complete
The complete operation is used to complete the binding of a device to
the account regardless of whether the operation is initiated by the
administration device or the connecting device.
The complete request is made to the service, not the account. The
payload specifies the account the device is requesting completion for
and the identifier of the completion message.
{
"CompleteRequest":{
"AccountAddress":"alice@example.com",
"ResponseID":"MAQQ-DQZI-2WLP-3E5Y-IMGT-PLIE-MJ2S"}}
The response payload:
Hallam-Baker Expires 30 December 2023 [Page 27]
Internet-Draft Mesh Protocol Reference June 2023
{
"CompleteResponse":{
"EnvelopedRespondConnection":[{
"EnvelopeId":"MDKD-7RK2-R4N2-EZCJ-EMBN-LK3N-JKLE",
"enc":"A256CBC",
"Salt":"iev2KhrXpOYSwL6Tr3OKNA",
"recipients":[{
"kid":"MBXU-7AJ5-JPKO-GJWN-KDEA-XGGR-CFIY",
"epk":{
"PublicKeyECDH":{
"crv":"X448",
"Public":"Ldw4t6zhA3VZhZ2RfKYbcG_GIDz6PeAu8q2sZno
f62K8LHpo6TT5JiuY66flwTeLAHuaDnRl1M8A"}},
"wmk":"NHcS-jMSUzyymrPYWR0srjUG1M9VUdmsAkyFMHU_EZeOir
QQvJxy_A"}
],
"ContentMetaData":"ewogICJVbmlxdWVJZCI6ICJNQVFRLURRWkktMl
dMUC0zRTVZLUlNR1QtUExJRS1NSjJTIiwKICAiTWVzc2FnZVR5cGUiOiAiUmVzcG9
uZENvbm5lY3Rpb24iLAogICJjdHkiOiAiYXBwbGljYXRpb24vbW1tL29iamVjdCIs
CiAgIkNyZWF0ZWQiOiAiMjAyMy0wNi0yOFQxNzowMDo0NloifQ",
"SequenceInfo":{
"Index":3,
"TreePosition":449},
"Received":"2023-06-28T17:00:46Z"},
"yk5ObzG_MBM-Zk46678mDYUtNUtDHPRWBdDKaOyBsnBwIYtyqXtEcZvzHu
KYajbtRW7uXIsbtTmO7FxFc1ThZ3XPw3wXx2vPr-CVyI2w1FHdyTxJmSkQmyApgDy
YaLwTTJUeo9zRfgHCxPummWPMu2V0mHJCCjhkIn5bLGtDAy3oYgkk0chYbVAIq8zF
w6wtd3M1UrWM5-tTo0RbGRDI-Ll4FloUs37JHLszWKxVExHJp0V6aI4M9kAv03pY3
Fq-uS3n3q-6VqCgGY7zGvHSEOQXyPnqYYVjWM52Zdfmx2zzlz0l-hDt9fOhfu_zql
Mc3WaMmzs8DfapOMlcxv83_FPpWcdhJl8DETyZ1bbNKA4Q1fk3kBxpMNuUokQNqmS
eCs16YKLiQjWVUfj6oSeSv7O7hNlg23z0pfTtw_jFSRuauX4WBy5YTg4YdrMNh8sF
yYdPuaHe8vr7zG1WkoiXN8QU7ptXUhWyZXxI_7VBZX6-Cb4MAh8kUPBWnqvpseqt8
B92um27yGx3R5h9uXce46cC76WPbGFLIR2TrYD9rkr8i_PSYkOq7QJl9X3bR7KJAm
Tpd54f-WtYpMR6jd9SW-qZbQ7INazyyMYUhw7Qut_cS3CT8NMC1ngWl6K6VkJVBD7
ezB_WbPy4t9K_zU1HoHmuaqI7mJlfjhUJHLmJVF8o4nwUOqDvmELRhiZaOJzST9Ku
FN8aHd_Q8d629k3BWmQeYAlxbElCgV0FYRFl9-WkBIv6ReVplQdWLIRCfG34STGz9
tgO_WRqFOFIZ08HD3MDaKlaB4XBsgwINBmUez5vM8Us3owVk-smPEWoE7M202Lnod
qpB2OZM8eknmjTLnpuNxOvBUY0aDR7-JP8LOT4bSLOuZzRSr-alzrnhqEwIQKnEQ_
FBjlpDaRe6FH-yoYbECO7savTOuYF6IA2TAvFiN5WKGIen2McncGjpALDqCRhBE2P
wdlrkX7ImcEHqCAx6awAI19dfElOPD1U5O35bwP7nbQj7kdVm3qL8GESW6cvssxcL
ClM2KPJtj81xk-6TXQ-6ZvEscgrGNJezsDCZu7N2ToldsOqM7Bwe8G4Vz6XtcvT5b
gHJWCJOzwD9THyPZZ_nAgcJQUaIZXiySrRsCPPfCkRYjYKrC0UapHce_-rBtWwLcZ
PBXLW_w3gQDd0ScJ15OHNTmpA2b2s2hethSDD-2d4vifeWPSrIKrCq5rOdixj4Lh0
7g-qwLfiCtxFVBfps2aT1FCBDtz-x2y166Q3jOiTqVMbDEY8nicXcD5aRI_bLDa_-
zLcMHnWrPSBGWxMMKB9WN2Mfeihp0xdGah2ERCJwbAVyRZtuKbpkJTAuc9jLJ7VS0
6or746EJWIF3A1UmuHdVqlDx26Y151gnl3Xiroi8uuQ278spy96b3tzkTYoste1Co
oIFxh-LXR-9MWD9NtsqJQK6bQ_fKmXzI6-NogFssNQ2TWiJxiEWWpqkJl2wYUXtAC
Rjp22PM00ANw32DY6PgIrzGCzxnNhik2Mlr5OQM6mpghbD0AXagYuJk2b2gygiplf
Hallam-Baker Expires 30 December 2023 [Page 28]
Internet-Draft Mesh Protocol Reference June 2023
2DzVZmTRvSgqCwMUhDOCTPPS9HcCzyZkOPEgooteDPkKTwxgoDwVNy6F2itaB9oAd
QRKnq_UQMiZgcSVKoGcIhL-uqQH2pUCYECVN1o3OwX1hn92huAQ4cZnrQC-hvC-u9
_0NFgya2L15y3am8Gvyz00vKns3CRRwr58iojvzvFxVDcopFEP2ser_IfkC8hSTGi
XJa58_EOGc45cMYqJFHeyALqNZmdQj6NOyBGaVFGean_6ungoNCy0D_zgbkKB3JrP
Cg1p7x42B765xn1Sf9DVZp5szLz8aOCviDvagIHgNOfSfLXJ90BTwz4pMpgny0PQh
8g2BahqiEIvOAsV3AVMtDYj0KYiRaKRAmb2-s9icUD5OeeVgtMdk7zihSutz-9rc9
HWBNCWNLj3gvplhuRQMHrcWCPEXp4gOb3SeKyOj-_K4ouCd8bMLq__MsF_RnSg28O
lXHEawBS3mhTJ8QzCrgARWExVQycq0d1bG9XVcpzZLTSUcKm8ln3aiIfi-1s-SIsO
aGaY8on-nIg4NLyBI1WFKSC3EWcuWamGkydAKtCoC9AYA4NIbA3cmTuPclDKb3fGf
1-Gw0qVpNPSqBip2055z64Or50OMnPUGmzhpmGSh5J2I6Czy-SQ7SI_Mq3FFXJ_Z8
nIFtlyXv992eA4bpxW6xt8JyGeTJc-L4v5XpLbegg5MXn3tzj86-wcvGxgQ_qh0M_
RqQ-3vlwJhBPyyD-QG1wIlsR8MugseMumbfQYjfuh2Rw7kRUa631_lSD1n9P5jPai
6crEkHj2KOg1LbJrAnmDRyqAF--L31ceaLmjuaBHp9SaAl2jeuxVpJhnSGupmb8Bq
6zwipY6tXwUkySAQvX9Zpo0ozQqYMla3TCu6PF9xdjn_5FFN9tYk0Ragc9oSij1qR
rrsHenHycYI2Oep2XH0Yk0h_PgSaKzTFigXJtDEdXsyBHk_3ULhnUqpkUskDKaeoy
R24MCG_B1g-9500PPn67cmSvV0iCcnwT1Em7rVlp4DGI1w1r0c4kBbIzZpHxFIYKZ
n5q4Q_8JKqvj1ds71Bu2lVmNFqX5PSrefuaj9SKE5vwxa7EAlqgglWeYocAdf42Da
LD0eZATZn6VBIiRxBJ5TrfIYUOGMkOuBgXSRtppVtGWmU_4l0Z4uTqKcEIZpXMnFX
7BnYmJ4RdQ5ToG_V5p8frLqUhiDLAJMUSf_MJRceMdoTRKRkrPOpzFTXtltbAIaaA
oO1PxEf-N-DWMJWJWa2GtV-Mjb5GErqakzq236qCRQHhVCOW7tmL43v16fr_tpywj
iJmbJKLajY6MZY0Wig_LIS-Toh2ESWI5HCi11u8op8NHVyHttTMehB9bhkiOCXY_5
J5ESZaJWsJ_5iNRf6MsZveIK8fCWG9BE-NM5TTI4_u8GezVNtuVCedTe3fQ3gGaRw
k4F3XigIXfqs-knc-VIFafko6IsQboSVMlD13a5AUqgvN51KPJpCRmZMphtgFwAW1
qLb_dWRDj5XIOFUBZdJ0GM9YjdoQcyU8-zbkFKnXsya9HwOK0xrA4oyRkXLofdHMg
fsixu32PneS6VtSfC19P50CyMp-181BNzMCbLvN_PKGL7VnTnfeetHRaaIquXALY3
RGycFw2eE1SLLNwxZzl3VjBlJbOavNVskBdH-h-WiUkjMDf_47yEx0ntaolgSkWh8
5oePC6MaCK_SbG9CvsZFBmyooHPHJas-VPpvXCJwB7qwdhS2cXe0zJ38SHby4nqat
zjw-nhKGIgofcFU14RZ58b0ojZURFLc0m9xiIwe-vaeNIL7ywN9vKNjxgCvWMWyuK
zeL-8hVn_f9ka4du3En0p7MJq7yotGchtsdUC6QUYnVPcfnc4s3KwXb17zCkcNdbM
IfFkyWhCyXVyXDoChn3HtiBuY0V5-K-gJSlFtonuwk8GY2R6IvteXN1KDuMRZ3Vdw
puN2Aoy7i0yLobIKKksEIcvIFc9ARFuMwW0CqKYIa0BDj3u5Rm_gC3xLw5kBsQPl5
0z6DLYAkvV-zlc4rprnM08apCugy3KSfrgkslo1ctzv2lbCNDaoDOLJuonaUOe3Wm
T12u94SGkJrtvXFmuqb_UnH1pwhRizzYTqVUZUNAVm3BAjAGHXEIBZkV_EkSN4PSE
DJI-Ir72BxJxtVFddtcBqB7IRzZkp1U3PCnQil79UPByYyMJR54n196Yms70ZFzmK
PexciPii797qj_TXmXXNE1letB8vtJ7KUhuwicXSHtclpTqgVMA_6LRRZz_orDLV6
-D9mbl-7xl-QUQxR2ObmKneFaw5myQG_7oSI0WWqjoUMVN0wOcGM4zfe7vY4fZTmd
8r-hRuQr8FkZlWDD11fzBUavd85u8lt9kmiTRjjJ9ZUIUXxCRo6juUgfedwR8QcYl
idVrPhOE5ziPCdybx7D7y2l6TtR-ls_dJEP6OpfnmqnEElK6IYKzZiVHoPCKoznWB
G-V8pKBi1qNy-e2JEPrzgAEysCXcHdoktN9u8xIkO2to0auNyD_w1JhSUtZSZeFgz
m3LVXbQvrjm1ThdCYhD4cZY3ruv-7T8Rt0dXIDEq2Nl1icEl0u0nKYiyh4xalYLIS
71Q9eF97bl0g2J2BZII8th20prKMY0_Z77iTbPjifHYxNYrexqdAzEYeBidq9Wl1y
_qxhruRnuBqDLP-LWhSJmv2rDAXMbp9Pp0eEIdXqJTIuoZycWI3H9mhKquCzDvmXX
RsALhaeIo63azs6F399pbIeb0ji6Rbg2tSEwvw_QrpIMrXvQ3PbvGF8M6HWvF0M9Q
WxE2ri9cw5YxCoB1aM7pszt13xLk6n4aOWWnoBfrAHK483st9evNSx4hQOJHJaVR6
hEktMdcPGyDeo93zUN6-OH8Hsje6rUD9H14p7iDzQuwr9lNDMAtY61INSctTrM8hn
OurU79PlPSl5HW932dcemNcsmcPDOg-XRR12HUDAxe8bcC4rgm7-FiUMsHxSeOhwi
VGBxVaRpPRuB7n_1R3oYrZdaBeL1KdXc5Y797SMLdNBHUjf-3il4yeNXECK4MIncA
40KBlBpyEeUT9zB_YpxDbJd7FwXTeYBNCqXN09vIWsvHw6yW1nEJBxpbkhK3Pquc-
Hallam-Baker Expires 30 December 2023 [Page 29]
Internet-Draft Mesh Protocol Reference June 2023
ZBVJtaINH-fYjUoiCzDG3jWGZab2IortGnPPEu5MmloOGeZwN-s6EkWGoHES97iiB
lo3CcNJaDizZSXOB-gqbwztCo2Kf_-dfAmWDzuOSXKmwz96woAnZcIj68OUtjyuqo
LdNRDrWmfQZWu29sZjg6HI7ts_EHc4agdvKtBz6UWUOyHBxS4aIAEzi4NJgQ111Ys
Upcj3XhK7mT80mz8WlDnJgGVUpwAvzEEz3q8JnIj1j5q9bfXefAVsk2LA2Yi_OEAt
RaZIozOCM4ojvD5BytqF7iGpYPs_ggVspaIwdESi3DZnpwTZrC4CEeAtRhp0UW1Kl
7JzF41FRIacSkXs7oIfMMHXrBzW0kOATe-SQ5q48u54Y82Gf1C-D6LKVLciFMTicj
qSaUwriYb2Y12cBHeaGOq94rTo3AsdDB-8LYUM8ixv6H7KrHybQuWfQZfpOlX14gv
E-zoGrKm4p5xIO5XqjMkKqrxFp2kZhK7XD7tDK7BKa51nN1HoY0GKdbfUg4T6ElcN
91j4AJRFqSEciOLqPDRduBrRqeZEt_ppDmT-ogdwmGwjohI1dY-sMkFA8Me12j1In
4o9hHhUFZGcsfFUAChuGPfpTc8-SCH10P9mMJSmCPY7Idr5uPFS-01leFw1b21Yml
jvkVxIu1E5Ur4q7VIE1AdmWubQYMnqn2Sg-EVrigpJbAwdLmF7HYaYqGnDjR82WGn
o7bsfOBGBiiuHCPZDJyuTZMEJe4x6n5tbbPKPX1asliqvyyqllSIutDuQIqMddFgD
U_f6vCngkEKyLgaf0ERtGE7DaXODmGS2h2w9Zgf-Q6bVnYfmSIWGrSLOUx0Pfubzo
Wdwr08j8o3sYwPUSWi7dWD86hIVousTen4H_pS9uo4U0u32DQFLtyP7BTwHYZat1c
5ls91VJvO2fJDRl9BQmcHAIQA1HwiWAlStkvsAfpokwaE_9_WwSIvKDQ4H0SMzHO9
_HlLrBpqQCDAGPUCQhlLP5c2afB6VHdPY9-1aJruRDgenJmya6rqKxU4fPDRgY8n0
91GMIQ2eCH3EqsnbEbyBuWSdQkgKbHlwlBW4ul7wHXGauy1u0TTWbKM1Pq16lZZCp
zG2y2wVnSw2gWr4utR57JegLmfogqAY_U4_2HrYfj4Xv61DTbGVjWSInwuehEFUpD
icmH1g3DKzsHH2hP5Zqiu1tBiryqmh6jaZ-FTBMGHNz-XAuqLhZX5zEGgHuXCrZ60
9ZmBQ47u66LQjl5ImJ6BL1lMvq1osTjAo4eAERIxeWtlMo6qDKGYcgiTWE-FvghZ6
JcrLJr3f2rVgMLC5NoCSSNwFfDMa_M9AkZfih-eqMLKw3UVB7vAfeyG7P3gw9W_QJ
iMlg9yvKegc29_SR7XqYRqAj2MZTo-CA9_kquJyVQywzbBY1PtXt5iVF7qpxj_hUF
54DqoJsjaPLgQKrWRh-HGKauQ-nxExduOAStPt5ZeLYtwVLeDUNi7ux28_9npwl68
N9iQ6wHL4jCZoYqCJiaD0ovhSRrppNaL2BM6IojZ8dkFyxu00_5MY1aGeh2brkWNR
NNZZcz_rv4CADgdsquP4WOu4vLURtlzjMmAvRfDDCLnmBcX2sC4B0HMXN68Dojsit
wWiDqtL1w4G55hi5OXpyMBFi4I7dhD6YfP1FOGyaCwMXXs3770KVdaZeedb0CpkPq
4Uzz5tZ25RnhLFH3i4hjR_HS3gmLKOxCEgOuR3A6BQQ-Q4Hr7IwnqXTk8ewmxjZVq
y5GF5HIBspwcxZDLb9bVIw2JoMjyrnIgI3WwPo66ImUjUVsuloXToyB4_sq516nou
PbSLW4I3I7tEmipx7Y1TS3vVnwVdHXq8MzxiGxheI4eFQVehJh7sIF8xJLJipBCOb
N7XxqPhZZLbXCQ5wNUQH-8q5AURt12LAc_eTBzdGFwGIkM_TLiqohkr7AZxJRWUBa
vFxXfWIQWG7r6x5d0PVJZ-sjESuokXjDLNQd63HiT1DsgJNCDIYukfFSKImJ4jQND
N6O6D4w52sb5hW6u6cyitheGnh5YfSNyIQKBHHbZvVt4fCPo0MdoLkHRa7cHJofhI
9muaGtOVWFJhEKH-rkJyhertzzt8sh2mUx9CbPmIv6uEICkQH9EpkI2S728_hX2wK
wbq5vI6djkwtCwUYGrEXrHtbWF3a8j-HrF5WlkatV4i_lr1uQSvKUkD7SAYk7X7tI
6lqFklULYqTLlud7luk8VzsyFE4nVxvy6dx1js7M3tFAsWRVK55KvYyLhqcwWbLAM
elRY13HYecX9slyT6Yn_0ZV7DQpJLEgdd1lhYSy1hC_BdcC3n72Y-lkQM9iRsFteC
bY_nnJuJkOm81Lv6FydkgTU6Of6XVH5znCDfdNvjziEa8Ozjq-gxB4ksWBK_ANuY2
FZur5OpQbDwCozB4QuZtD3ezj-n3bfOru6AAPtoGd3hpxJ9JMOJXeKbs22pXbUXLM
0MzaR4g3kiCg3XZyMgfEdVBHP9F7jjQByPQHemK0gR4Ywa5QrDYrS2JVTCMxS9FhJ
hnIWG-jI5DKP_7DOvGp4yjx_t4irX-TyqzeZ2_5VTnHTR7sUlKfv4eMAIRI9ncrVg
aWRGpH-G3SchHTQjEaylrjX_Q-8_6vSDmVt6S3f2uU-QkIL01D_Bd4q8h23J4jA3O
1lu19B0FN9iijYFquwpOJ-hihwqxnnF767jkrXkHifh2grkE6Z3jybBzE_Y0MwqUe
LCl82k3tR9ej_dy_FiWbCaxku9PisBJL_QoqsQqsOaHlLxLHSKi-RYAoNefE69MND
14s5ZxNGpvL_zuzXvFngYFw74BI4bUaKMD5rVk-ynCOFNOdOEwHV39p8t0yMsDf51
TFnlAUlAzpY36xYKzJ4yDyxJjta5btfOzaWT6t4dQRusam5GQkAt4_XBSUuAUEPfi
EvUldctxRQZ75CPG5U-LbZmbEfUCRZEJbViu8UQjeOmwgutZ_NrBwa8LLgO7i6LQd
jtbGVtdMSreESD_JEP2Vlq-BmzkKzzKbYVhh4xkfGLerq2VumviwiKLvDZYx94qMX
ek8x-j0Y1soscoDkhXaL90QNXsiq2oxiUd8nlmtb8dqZVo__T4mxTSSVUBYf2nAgj
Hallam-Baker Expires 30 December 2023 [Page 30]
Internet-Draft Mesh Protocol Reference June 2023
VU4l26CJUGEDCAD7wkE3fyK0lhSm2LzxtgcxBoYnRD6Aj_7ugpiJC0jV2NnyvBOAh
V7EE3szmBEWn1d5wnbeeowqVyn-8oSxamL4wRaiaLEfrYxJTRTe_Jii1bLqVI0YcM
Mx03rrU0o9aKokNUf5hxM8bmD-ytopEVFsV5yb2lAhgxv2b2fsyvDePuDg8A1HDC3
aiS3u0wGN2pM1uJ-0Z9BYXDZsZUlJWATqPBKqYHa754G9QiFLl5TKUCv-yae5YRbC
nYDevR11BrqwLoBpvlmHYrwzA_r9vPDQBck-v24NiyXI5BzUJ6RmjhhdAzNuzRBDL
CPSbHfO_YqNg8Sip-ySAqjvJpCGKPsSjY5ksjIL23xmS6tyLIYTc683-t63JZ0xE3
DNWP0HTHBc5lCqk99loUoKwRs_7UnTvjFPT40Azr0OfUoh0IE3vzJz8x96MvdeTgh
BV95GZOLLx6ghoJ4obLb5rN_0_weV0gF2_dN80pOzid8u8ZgcfGgq3qDM2pZh_P8F
j3o9OcvWLCHxrw4bNVxcB_GYFuKHetjtj9OEbulJubC73fiS5MVgtxiLsEMRDzxua
Jm2zdIqhkzBjdDgBFpQHLfP3GIy2sf52j3rjtcDfMHw6Ht3qCH2_Ag3jN44IRAbqa
G9itnNy1xVU-YcFcl-mjyz-jpc-8kr_6GK7HMntktA_aLIC1_IGNFhPMdqXCvujCX
ZhDkKCGbHdG78Y3lLZrxAkFRELN-C_DWJT-U28QEEpJiQPTA_6sgAyRnFDokErWCF
fB3_w1BqG8VbBleZvNUIaEoKYLjIUaZpT-AJH4AygKBnIO2XHzrGHKaYYXs-d3Om-
XY3k6mXZKh_TTgg4B9WxSuxyiLXHZc5-U-KzEhEeGb07GJWGoon12woHBHP2WwvMS
8bI4ZNMqxk7uD4C1sdU7AW9VfIFj9-ddBo7jJyupYPHBbUkOlwbDEJLUHqTWF_yDE
H0fayyQd1tPY8IFQ74q7itF0LHsGYnIrvoBeu75m9kxlqO0HO_anaZTjaZFfX8vF5
o_D9mO9tNtcKFWu13JgGtuQhr4fP4em2j5a7U0KmgiGl4Urz8sgTt-dNJYlJ6qWyj
cXuqI1ni6qJOXBT4BnI0BrW_aY0_bnDpJoDoFrILkoM0bWT1gr-vKEhqaDzzIF4CQ
FNv-yKlqhPC-A1cfnmEfLgqGIA_1C4ahAgfbqVinW2Ew-Q7wdiRUnXzrz26llT5Ee
d9IoSIBG-v8YFQUYfs8QJsXcRJTJADqGM3ltaTvWXCuz5_0dOiVE-P-bJR-45xpA_
Q8BwCk9NKV1k14D9TXV-BRKFdFgMt0Erj-mF40KQX9Xq_v-Lr5ELGZAg5i9NwCWWH
-jRr2f-Edpc6-p8K0Rifj65toq1MmDaD3QvLW439bFtNrCupx335mUnT5J4n-EVKF
u0Xh2eEQAviNZm9SDWjMtxpXpc4jfDKOg2VWYvshmM9wOoPoO2g5YJbJDnvYmeDWG
Tol7DsPKoW8zdDa0-JgQdYUCDFSAH-4jh3iK48HJu2czLDOQbjGePh7Cu1J4wsU4Y
hhndHycCAHY8L088jOpySkCupmfPOkKTxDpDm8BfATZ38TENpcDX9rqOXMvrDR15g
DR9xCbSNCB3FlUqZpVarh52vxarDlk4xtrkuyGLlYrPZ38eltP2JpJUvOxa_W8vqX
0eJ-BcX9yUK1SJhmITudRV66jVfuJfzwuyDzw5IjLembFeyjl7KSvm92bU7oV3EyN
wwpmF1XXcKZPGmnF7SQEX_KVPVPw-LSpk9DZKT5SCr85QaOHtOYVqXbHI9L83Cy0W
C_7pMhxyb4KSEJDqVCR60DhKxUcffIRYiqsOE4IkTgjUVQpPJ8TZd7WAEQmIEgpSD
cCfQaVgWQDOO0ULE5lLWHU7munmH62bnRZqtlYsqxBywG8kXlTL36oSFJEocC8q9a
QNVlnliGxmI6-x9EK0RKByUZF47CGSt7HevaeW3u_XhUrp6zlMefUIsgbTlLF8Qte
-Og0kAYQgoLM1jLfRHTDczVg16PSWV339m8WxD_jwa400wgBVhGDFXVeTugjEmfLg
iQVOnC53q34WHxSF14c7w2aXN0BDLJw4Ga4QbaLGgNPGKVJBkZGUbXqPp3BWRG3tK
ojvx0qmVcPc6tQBEJgCBaXTuCszzt4lTAJdQkmNfVUn7rEmITRkBKTjtpq3aEP2kB
vK6z3zxwxDM1-gx2Gq50VGFH47IYpAwqV25oUh9sdNhv2zFkq6NDm_EV1RHchtzzw
BOmLK1VTy9-lI8Dc-OskWuzb3ToR0nWsgMYbFI-eXM0TS-xYzIPXJPYbZvXFWadw3
rUdug1EzJ6BAyBg4tArYD9lB7eXTwbM5LhxZp2Rw5aRQZsRLekMOlaDtc-LN-g_k-
fUd7Es6wACGQZtaq9-_kcU1Gam1XWApoLANECoIXCO930Kyq_KKPUcyQrVxWf5wzz
AZ2yFEaawej43RBxgArRMVTzczM9gNqe1ZfZ-MK-owrKg-v4TmD2irnhJsmJu3ejd
i-_opJ4aqkggobR3zexHWk5o351MfAxSj81BO0AF35MhS7hWojcKB7D6Lo4i_oRbl
lOsib_hZl5zg_DvMVDbY--aJcO-qtGhi-tx8wRkWJJREbInVkLsJjAWsZzoYAcAEz
q5WRrSCOo60GgCKwgrdAetGAkGdT8OHRXTIK2HX0z4BkO66E2593hgEnt0U2c9JUU
ucqNlIt3wODID0XKig-vwXPVVGewIw45RMTqBNMB-37VDyo8Canu76mIw9T82c63a
e1jJw8zCs0lVVaA83w3GAXGsbvgzPWqfd-V0ngd9WL53vl0Qh25b8u2fygH0fJisZ
NYXy0Mvb7hVeuytvWtzL6xoB-BwKnEM8TRthc0281z4ADZw34CULR5oeNRivh7Fud
rXB1p2fFhUnVFVpQZTRepFmrwnM_ZxgMCOntOxjKoLmyYbQ2Jnmmf62zj0YycsMky
ycJJlOYNitnOXzC2ogVfpguw3eOgm6ldJ52XQhedKtIin0n5r4L4P6MIiCWZWb1Zd
jyTT4QztLbKJrjJSOcAzqJsmxS-KQDchI3rzrzWGsbQKw6gHDjmJWPgxT6kRBGD_M
Hallam-Baker Expires 30 December 2023 [Page 31]
Internet-Draft Mesh Protocol Reference June 2023
WGUbGQS9yCM3l-ELRuO87J2GOkKOHyVNHzt5tDGhc4zbghGxJvLTA16hx-usAYM4l
wfP9uFpm9_VWOZCPzXM76vy_WOdQ1CEn98FprPX3qi6RKqy_8NYpGxdhoP9nJsnUb
e1QYALzsWgdSWsp_FTpalmYVdHNLuVto4jcXqDTgyRi5HyC0-Uin95CvwREwqZl6R
6KrL7BdR_jPDGzKw7WGAXKzRic_3a4-fUmUKwKNA6MV043DaEfiEDM_gNF9beIanB
0cNbOdE1FD86GsdaVedaimDFauLJTSesxCHcPFlwQ1RzaN9NA5ZH-31YxxCG8GfVU
hvZGwEraTZivHVPlZALn62r0VDyulVr_S6kKan1C4Ogr5Av42-dUztpk_b53Kt0ih
Su75857C3x-5wOhM1u7Q2fUPO0NZJ8eo8jIcPXRJ_m7E8GTkGGtmyt35wEiWyYF8e
k8vkqCsmmPmh587stLj4EFMm2xGhHqwuRoDQuy-hR8USr7tGe3DFSdyQ1TFFF9qX5
7jv01UY4O_pOEmoTfZRRgM-fK5W-OjlXX35XqW5R7FIf73HDhezyRAL9C0OJcR3F1
2G0DS3E7v47LR8CbxAF2jiwSKnAKAr7JK6bZfQjbAHNvKO0NaQjbkNEnZjCYakuG9
EEdrwVhzRBFL-Jz04dSAludQ8m1jEP2aYuMly3vIxc5IXPsLsksJIbjgWVhhG-ETq
y4LxJEtMZ6uY8xRwqGS0TMgXuA1-D9yTWfRxvQywKyqv2YfdwOo4e_DndQIlMs2Ib
Im-R-_tTfYpOBeZs1VHTQP4YrY4zu9IOuxklBG3ulKPkGF2J0rjzvKLTacn_5HF8f
hv4dBkLzZ7cg7h1c3T5K8ytyqyLHFlACLsHcHATjrAsEOx6rQENVC5m5oTdfGDgjn
Yda9UL9AiLTiBaMGeW8jtP3r4uwe_L99DHFQ---ecoqIgofOAq0lTpL_YZBxMSdZn
TVq_zwxLpIH8yZ5DT6T-IX14YTd53n_ryJVAfxfQ5iqsKVXVUv5TUf_MBad-aA7B9
drzWzzPJVxBu6WWQx_1lXEQV-yzDMDcBaOdIK3oY3Wlqyg8ck9k_DPijuIMjWxfsE
YWv4whITAtGwroohJwey7Cfqesu-NG_iqwyPIP85G7NOQcmdkwzkGB6kAkBhp-eoi
yO3CjCgfyxGSU8Fnwx9e7Y0Kqcqb-FCs7eE7zwyXogP6-WvS0fKyR3VDBDfAp4Nfs
JFmd7EcOMZZan14YluaRTYQZPLaBxTr0zCSbm6m_17eRXllf1JGG_tmWqZor5-feI
UmMYi9NuIKDDWPFTCGe-NNZbZi31GZDmK7n9oHcPcGRfaG0oNg5xuZr5H_9luaxLf
84pAGQtQb0AdY-_a2t_56glbruMJom29HHrNCgXA1ONgjBAYYxaHLemoBAWdvYuvF
zbPeGbmKVadP0pBVxNPKcg7Ibh7L93msqlQMni-FWLjx2v_306_XxMVxmrsuoLO2F
he79rG55KCkgqvqFYLd0cGNFxxwA2_UfDuIRnmZH4PBxtGiixxnbACUn34BXwkbWO
NS15OC5REKwv1o4bHTa4QVsNMgo51zvqONlvweYJ_NfCvQCV60ala9EPabvVtmZVR
3oF3lP7muHrNB5BKhwRwNab3BGfuZHSnURywyH6gplYUolPzFHSwnEqmkbWIl23er
yFg_R9MHmiPNOmcfy9RCP4zb3rJxMtWnXnTdc315ROSRLqr0DEysKRI4j6xMJ_iKo
_LVJYzG-tyTFxpuUJfc11zL3b-ZREwS_smhQILfULDHMD8aPpx9TIIok9W2a2gyj_
SiHs2aWRprIoQXaMxFb5-gHI-7KHygZa0Z5LIQ-8ISO283iWkD7rW-wtyGHNm8C6f
GxjnYFHPkreomjVleU2msoPgB2u3REtIQ6yTbMBHh3tgjoC9IGkDOwD9Wsg8Jx85I
NYM6bpQUmbBgYBIIl6r2pcnp-UDjX-DF-Hw3SC6aefKEOJ1fsEsQCs3_00pvrGwdt
r6liXEn-loBv0OIM_iHuKYRfq4PqCAq1e38oANTX69obtnXcFJSSSwsxPWACHnTFu
5JzDbIqgJkLfgqF9FmRzcqq40ThbppdYJOR5PNYUpbq16-UM-XANoF1mktEcZcFSI
Q5nrfKhq--1ecv8xsaFrzitKxzZWVsdb-UFHcc69OAdXm6C3e_PWCbZox0rbqbZkn
_9h5gFOl_h7-sfPxm1U8GeXZERMe2-ve3BtwKDiF1O1pwaTE40SWSG-LAj_zxigdI
uXqWlf6J7uQdRJH5tGGMVVxszTMJeV0tFmJ4x_y9BZfVr44fPsd_x8PNQZIriHlG-
n0yIRHnz-5YejuT6ZRUfoELAdypRLB0b7m7Y7x9fbRz-f7zmkiUb0izVZTHFdWIdU
XRo89Cg3lttRZiVzn3ze_59UZ7h1aOV9vzoEjYtOj2GKkT08nuZSRZyOqwHSWtf8V
ouGUgvqkJkcoBzrT7yb2ev4YUCWUD3eUvTIJKBVAnTVBlAxrzbKbXP15Ivvc_5gjm
DibII0vbKABcnFIZi2GlJCOQvt-Vt_2SL618kzKVMV9p5LTSqT2BPhpYdi_75F_cZ
PD2GcDYbH2FdiADxi8bv9rR6ZUUMGBQQYK3RiXefzOVdJrerQR_I0bf2FHxJP6glh
AHnk8dDS_9KYrrBciBuHmkAHgEcodzoI-89Y4Q02UVBW0WA1qemj8Kvt7dbgWw0qV
vrGaJ0pOZERaRGSGvMi-RuKOOIeVXUkB70W6EGfgRQx0i7BPUAebdeA190j32G6u3
1wAyl9-Te1kZ8zUcQOf29Rss_8at9F6SEqf8UX1bDKVh1zJZl2fsUs_3JYFSfjYAG
nkemmxV0_UkosheWFUDMG6q_tWWmi5yB5eWtSJ7vAeuCB92dVhq9dJPi7VlZwcYCn
DBeOWWURZDzZwwR6xirDyiAmwjvP_tNIQb74-em0S_iBPA1Ftu1fvptCDEvcPedWG
onJ0MnmgAl5HQWF05RNmoRPSmCmVOcXtq8zaIKkUMEylEmHf55kOT26y3RZgd6PEi
T9aSq7iAEr9kW_bTU6VgRK36VkbF6Z_RUwc8sqfByU-Eftt236YL4cabwsygOGOwb
Hallam-Baker Expires 30 December 2023 [Page 32]
Internet-Draft Mesh Protocol Reference June 2023
v4KWhpH39hkHEYW2lmAHNQUlycKUpue_11ml9SZ81a2egBaBhs777MGDJ3_2xYziQ
T5z63RkTJ5oRSMg51HYN6F2Hs6IkG_BtibWpjb2DySWZV_FwO-UbAVkn0eN7NrUO7
XrvGHzZJtWNWUu6pTIiMEyZyeDxy41lbhzODhdxXSDah6CWDEwElu6n2RZPUSYTAT
n14vQ03ibw12igd1OUJ3ZrYnDgxcp7lfqHiKytHG_5p5YlgVQaLkulT3KUrTDeVrN
acd5NNyrCXe6hh0IY9P8JNnPPM9oCTSg2AXMZaLQiKCqk-1dn6nz5maMODXjqoQ_X
nQJ7MpMrxo5F6FAUEeN6rTnTkFQmY80jEJ4gKPK2jxYxT89wgYtkZfsy50HIHVvkn
XQtrEnOFapWL3RsWkUrkW_QwJM3QBYPY7aMEdrLuBS2VqLHOcdR6tL6onzWfGe3YL
49icV26PNZFvDJUzX-jz8CgHRqh5A7zI_65AW1zX1jrF6ICpzVc8v_6eSiT7I0x-g
KdDE87iBE6xczBba5Nv2apHZPJbcwY5UHOg5lAbLPo5gc09BhaPp3qLod8G701Qym
NfhededWaAZ3jYMJYLeAuMGdSGoZ5aLtLXEP7QvrUqVLTBojlz-xAQhpxQtZTkvBt
lt-LHtoRefSi4xsPtndeXtnXnha4q-Z_yvzXOgMWKt6H-MWRb3wbiP5IbS95qxv2b
84JUkAjxclnEKm-CCccdKv20ttnz6m3HE744EMHqhUVkKCvvY3XIz516uTwawuMbY
VCzDVEA9FPAJlkrvQ6FMouQ82yevu7pv9polTZcNj7cw55R6qaO7f4h9LQjh0KMKp
RUMAP_z7BBJTZu9PbSzWbivdq_-j6ghlK54uF2zH_l_3mDxo35G24YdcuHbJT6hDV
_3c15yHd_RuEoOXIZpUCF6FFbBVfGGH89YORo9huENIfP3yXiKQxXZeCQWad2E-Cf
wjfo7LT4Xnv_9OCyY7pi2oXbUoYcAEyyqn_KwQrMdD-SC7GgR8ETh-YOfQU5m0PgY
uO5idqt-JHSTaD2Re4jFfMEB_CKGG_qv__DBGSv0fbfdN0cacYrRV1xDyDMkULPA0
r7zJuhF1GUEjjnic54vJO1jH8qnFBabeqPkxH8VpslU7OPrmN9w8sQWRxa1UjxoUm
kqJX1npjIyWOE75C-guzs64Qv_VLVkBN-EAi6k59w5S3mD0_zKXGO1HMVlJI_HNTK
9ue4Nt9kLw5Jur15M9YXrd77qqi6MVX-h3WvmeptCA2XYBL5O72jiOG-2WgEFWe9y
zlqlaKZQUsmtLyXUaHkeqaMkeYQyYMIe2vE9F7weWAJDaDpBAJ791y6mW8QV4MsaC
Bbhqa2lFmG2CDQkbAjsLLsLq7S2l-6D3GTh0KhmRkH5RwA0Job93qqRpYiJS1COvJ
qtg5jqXUNQD07ExZjiexoapZ07RY9cqet0VLTyD6Crj-wfZliMWdmfF7c6IO6bx1V
Mol0BwmDywVb_kJHQefL0yHuOga8LWZ9b8QmHlalYBqzuoYa21cRIZ01Pc1xcJMZL
icaDtgRxFopeuKCZqW1Yv-iv5HScBpNIgonQ9zpV6G36Y-tvEnzo--7XLJhmkRxO7
QotxTRlJ8gBraBdrdwdChYep9ZWodPF9DyEOVMNWsR5dJzfzzlZ7c5H6-jGqyeqt1
GBA_6RRIMgqI-E5w5ThmIoSCoSpI7hItJciyOm4kYsB9JhWm7jOqfNPS0KowRZjXX
daeoDEtHwOkmOBRn-3mHIOv2GGlCQwuzQRkbMlUl73-zltIN1MvCBEhe0kZg7fr5N
GLRTx-FpKsX1forASs7K_nDqLBVcQ6IsJvowem27vuMfhdTyGtH-seJt6SyIaYY_B
IuFum9_vssFU8miUoKlM_6Nu0Qxu-36SNCPoNFLN_mNt7eRGBpsXRmYGRT8iZPnjY
Q4fbzbGcCUsFTOBWgJL4WSoO2jr6vTaDDgkOTMBd4IqcovlovQVLl3WMTsQ_GnMkZ
Iw6jh3xHdFfDoniFcAS5OVsVbMuxYZM39W6diQT9lPjHTH2m-XGxRJFvoIhrxAXEN
CnjqsUGXe0_S7QZ6gAGKWJbFZvC6lwAA80IYJkv9ZbeDOeUSE1L43EXJdqr7srRZM
RkSns11i3BrOajwnlcj83nGdRRE21xxTn0cBI0sWfG6jw0-ButsTAKfSgzxrqt3OI
oE06KL4Ero895DdWlFENngi3GkRit0ScpSk1Ba_qmCSkvs5RsjnBSb5No0myzjeQ-
-k7tYD3XP_AUdph5K6LUJgsis_3faSoOiZq4m7NMVR25gdLS4Im4YCxevS23zjnbj
SrXX7KrmO7JZZKE5CpaJNK9LBF2wf8Z07rLoWRzU-XKFlwZaTS_G0PA0CmvTTiiCW
-n3ZT7RS-_85N_zywfbeBK84Hr_Asqxh5_tCGNLnrCO3gfu77FczdVkI0IW0UzrHE
FYIXq7qTdQY-tlyYm0opDsZVXXyFdhqv5rAVQfdIMv7VI3IU_nmVv5AJROqRRZbCM
eQaARj8KyNW8f8S0JQ5agWvoiVz92DoDSi5yBSRCIlGUfnCtOmz6dL_QxupjOeZTs
Uj-2--ADzyGQAm1ohd04fWC9fVgYbcWxsQ97h6D56efGMUuAdxD5MN_OtnvncvA1y
khv8FmQkK5ZzihvWkKxuK4zuMRo1uuqAFuVHHj7MBRq-IrNj4YSwklBd-1aEydu9_
fKx5ybzz30aXl7jz9skRDrkOGhc4mn0f5dRD_b0il3oq8nmGq0c2V6Bzim1B8AcPz
qnHcHuBKLHC56KcfpiifRyUXMnXag8R_BSLNRvTVx4lhqjODVY918UKUsQ2QukanW
q62zBiJqCBP-I7ybMQae2CqizQye12ADqGjGu6H7U0bAzwUV0TiymaFE6kcsZ74Kq
BhPHqHU0EBoJV4o1vcAzaJauNEjZbjsUlQyYBH_FpMMJD26VGbR6sjEX9DEQSnnNo
3Eq2lzoRW6o8IJ7VqFJY2u_LAeS-IIyoNb-U_9xCY3i0gJBnAaJ15-Orz0GLQEp6e
NeGxX6TjGrGGM54LoBpzDdo_qzK1OcBfs-5S0WTpBIXwcV85mhhPAH8056fOtzGP6
Hallam-Baker Expires 30 December 2023 [Page 33]
Internet-Draft Mesh Protocol Reference June 2023
M_EJ45mkHA8cpTMHxnLx1lzcpDcaCFKC6Epr1vJazYx2GBwcEso9i_IixWOjdiuIF
qUX_FbrSz5rz1nIgTXa9R7LNj7TurGNbsW6kvdMe4ttaTFQqFp8I7Pvpz8sOC6-mP
reeXiKq5U6uUrbHUFhHoRKbqnYrjSxsDMf0sR0uS8ddtdDpl5Xp7OqnbrS4B1eOv_
dkW_mH_uG2nEg81cn_t1XiS5PhtVXLtc9EHH-Qr9tquWx_JNUyXfk2kQVOncTq1of
ACMZ_Af3FX0rtZNRgpWN4QF8x3UZxlN-R_BIWFwrPGri2926SsCQUl-JBrXeUljWE
5ivi50cTBOhl-nXqtSpGzCWpT7abikQB9myw7fKD99WTEIfPAOCqgu1NlQCbgdVvR
U0qtECXUQts3x2n9v87xd-fAvrJ6C-zsH2-euEhmjGRYAkWjfdfowTuLGZxJ34Cp6
-65x8vy2h7eQtJGCWY1Elo1Y17YGCaTaaYCjBwmat3Gcn0TUMayR27K8q1k2qW75N
fr_t26xcIAeK1RayYgMzpyLR5hbfhU5FHYAVdXdpycfgNoF8Cgff5lRoFpgzuocGk
pcJSjFiD3iWT-RdwA2rfwtAIzI1FvHF1wf4qVYe8P2VHiGIVJkWrsrJm5NXRdVcSr
Xc0wApayb11XLtkDiBXzpt0TXyCitbLNh4iwjkVzjf_XfegBYMZdQBYCXQBZG-GeJ
TDAO8SY5skKa1PVfDGBNA0LcL9AkAHfCykw8naFNA2XEOX2J_WuuCfFSIlwxY-omB
TNRynAvsXf79-IovzHWSMj1fcpucxd9KQ6mJi038pUDVFg-qOigfzI_QjNnUcpFmH
v9iT9b5-y_xitkeyayH2EwJohsqZFjX1jnCWj0-lwaiEuhwYgoJ7xVgScJEUUyBkk
fQKMSp4r-6zPAPl11L2iUm0WilvGjM-IXhpburbvAIvONf5TVuhHpuDnzQhOiDR3R
fduLCuYakZovNZuYa0u_79DAC8-AU4veLXqOP3hkAmoEMPx5DGnITiZizBzHs1_Bf
aB0olavBzbKoZL-cuQeHJMRx5EjdcnTrz37Z7YllIG2e7e8W3PySnCoQS23rjIPPH
khWUsC4XfCic0dgS_UTpDXKvNC_Ex8nred0zcOhl0k4WEgj3a_lSkkdHquyroE54X
5H5Wo-tRb0Tw8bH0sbajui42t2TH_oSDB2Ch5gbL_bGMVfr-vTi9KwyJ_XLvZuO2W
TJHfM9dbd4OY4XwZwAPUGzd1D24F6o8wXHWF8cH6EFw8d4-8n4dVaZ1FAN2cDrJvI
TC63PjhfOc9NptlXERmVwmB4XhmPjmP928pOZrT9Zg7eW6kkZz2AOQUKq98TPUHuy
cJs1gL5qDm1StVFLaqf2jczBsKjRbzql-GGbsp0nBRN6hn9VwKszgkLrWf4807gOo
VxM4CnuD7u7c8uWfm1MWMXCTuhPEqv__uvaQjaPcbCRYJFeq0wNX86T_VYIQkFINf
eTxUQQCrpPg6LJtUCqpgVLu_4kT2NN9BfkEjqb3_AdWFXnsRWQS3J9CxB5ViU5H8g
_CuxM5wLmka7xa6RSHUfoGtN1WUDK1A9yJ36dt1yvdIc1yphD1Y1HEueUobHJ19HG
decnXuTecqE5vxV-t36nRN9nXIqIZf7j3t0kWHCWnrL9uz623Sq54JZJb87klmaiX
8THF3HneXsadg2MegugMOpt_0KBWLm5HR3O8AYiAL2Gj9LZ8T3OjetfGbBqEcfqW1
tKNZhBAv90LPMN0Kf3fUcvYHVZQ0nBUXECce8PfbcVh58sC2jcii_o-me5BPZ9Iud
Omdh1hkOaOo_U2-lb06YXU8kIo36f4KGv2ee3PDTvH-uk9wyuEUpm3-vB0wfusSTj
j1bnqiQYsLDTtwJmU9zfIRF98tz5WBe63MtkAH69gkgaaaUO6r6zicqCnQkL9KX7L
KhowYJj9AUaicxV9gbdQN2vH5UMImutmMONHzrQUv_HLwxdtNaA3EDa2iXkHWbBeB
U3NdjQulYsZWlm44ByRhnVNyRRQQi7l1vQL8lSqsv7zXndfGrf8bBtX8aCgqa8XSF
RCUftM1me4T3ty_Axl9Kj-37Ys9O2Hda4FcEGoBM4Sa1HQVj6RJxctOsHpCRA_p_q
OPcAXTFU4Nuyy1pe9vs_IobRvSTrOzYrFsT2Pix_Do1SNNfrX4ybSRcdF0Iq9LDuW
sv4DYmj-3-p_xMspgpkU1BH8b7C9GWvzHxfCAiLiFyYYFO0WXpPLZAdnrsUL3Iygs
d6pis30QdF_Hy_FXWnhGnhpTAe6RPpWOU7n33b0I-Qv-y_cDeekqul1PXXq5lMjhi
ZaqCkn0rReLXBd22jg1if_k9MownO3ibtF10skqiq_opPg-j6emgcbmNfsNPj5mL1
Ln_xqKBudUEfgfLK031LOHtEBdU5KdTTB0nJfp05Yu8zT4FJG7rLueGnKhmt5PzUb
sqBC1UD83zYi7AQys0hUqJsSWRAaZR6VB3ff0lXSdxy_iXd1r6udjhJHH5gaSrsII
MO26I927zOvzUy8uNgRxy0hcw2o6eL1CUgeSLdO29TUrUQN9PM-HCSjpbi6aFmzud
bU0pYgy0d7RtIpnuj6gKDBAw4XxclxAXILE9lwQpUHWyuwDpr0QFQjvOaN2ay9hDN
PdkJ0jgLHW2EKWBg17PrBVawVUA4JQGycgFcfQpY5MwB9fFZISz6epwGDUIKsqm9o
-S2amMo0Yoi4XGbDo7A-sjdYqrdouFUGWNrXo4Qe95Y7MnyvkV2DpUTj1T9qeEmbQ
VmT7zfGiEmUaV9nDJgh77569Fkbz1lmZ0IWIwaGhQyu48SIuJCV2qs54nij73beNw
jXBHY87pMIs76lbrCgc0j1xN-mrf8Nrwluj7qLmoRUjTfDbE0whI10cu5RNjD1bd3
fuaeMc6aDnVm0IpD5OAAQuO-pxmhAfm9vGfz2aOLVMgOv92sNmSzSXtZhNwBJthcm
TWXnQK4VfJf_WP3FA2dOXkIqK3v0Xpb_-YAXbLQdfJTEtNe9Opq2Qbt_G9fZy_7Og
fBLCMdPCy_WCtbPMQ6LPyGvZq7_HhZVrmrvY7yfgyrk5TgVezzBrvfZFYKJXbLSQU
Hallam-Baker Expires 30 December 2023 [Page 34]
Internet-Draft Mesh Protocol Reference June 2023
5DOqGfDyOVLIDD7TrtNbYHemLKv4cl1gPHe6qDzen3p3AEuKfKtSP-RvRtj4HVo4o
eSLfZty2mkm_ccVSLTFfczDNCOmbmBPSotqFBZdSzGy1XT5DUCEJNb_UzHaQcIvxl
2l3lL47c3nOPySQ2np90wfil4cXc1bWRNuBpDofRQxBRwompPZ0YEa1Y21wzNvJ9E
Vu6WRHuMidtIo6MxyUgIhej_mSvQIuTwntL247eo3JplTUzl4VQ9SDK5UsnMM14cc
5GU5-SQb7g7w-4VdkKN-sSkE0VHTQlTFzW1abz26ZTpWb-qqg_04MrDj8M4k5UzPv
QDe2hNrrn20THZQBCC-1toE1ZPS71P3ANr7bekOdKlT81mtEOdm92_awxnIJw5iI4
cDOHAZhg43zLiujU8SF6Z4cTfrfALGKHBlKwC1SRDFDDVAvO6_pQaAXRD8E6VSNSF
ccsB4JWkatFQySDO-r9SHStA-KcDaejJo2EiQ4PnhQ4UnlNIJ_cwPZziVOBZyXjB7
Xj56KzsqT9LFK5doK_zqU9Wcs0tXpefLZ2oFXWFb6UvtV7xnjPUvTvHOTWrXQ5RC7
RIsyQgX7cI06kLfaOALsDhMB8aWqaMUOaeQwaheG3CjCS8vxp9eWAkPq3V_NutFSn
HgiKNixghh8JaM99X1lek6l0gmTfPxPAo8SJ5hGe35IdPa3gNqa6DPPviCRygZJbz
n1R45yKgsjQSrjxl7NgEehGeE9Jctt93OmnlY0kvRwBD0gC_ks6-k2txw3STCjfhR
KJmVKI4M_qc48uXdkSA3zL-saruefGYLjzkBY_fLf2VfoMQUaOFfvMXYcFv7NS-vZ
B2kURgqsWNq1tk3pxEsNGg7CPUBV2dsqdN9UuyuCNZWO4vQ8-NOycGQmtLKanf8bt
9wUP9YbR8p5PizGgyBeJuCm6yCT2Q88Mm-Wc_MdEf8aKcp0yAjyqmzKAPCceKuTL6
ncEaF5zofNI-Sz-ZyjeRpaUyAu2I8kbk-XdgVyymJz1PtP_g78RC5QLuF2IQrL3Qj
iRWKqD5qzNxI6VnISKm3_Y1sGleYs9q9hF3GLeydQjtcWjepRl-HNKbWhA0-LiLTL
ELQenkOIVMs5hxxYw93E3xOa4qTe1GomnRjFTLB2YEfFxV8E-EmS2Tmn0ImaFdZAR
F4OtbW0XTbMNT0pTygCXp4GaQyGJe0eZObwcxfF6Do6-fjWgG6WXOT8nAHiRnEKmr
3qaErhmfOWSL00xt6R0KGuNb1c-ohySLPlRcbFgU8zEQYHLyTVgWBwTinmaNWvCuc
ruCqwnMbYqPL1CCJtSmj66QrdY6jaYv5k8-yabSXN7f5Hp-a7SQ-8RZAZYAwyfFpU
PkmQEvBbI38lbS-GhjJnEiOGIz2KWf_kCB_fhObDdwcsv2VlHtBzp2Y_CUREzvs2S
87U0oP5xIld5sdV4d8ikNup4L_1_J28foINDviHRIN_W8uiUcJTjInzHPJqWbJfcg
Sis1aCDMnZnpt-mqbq8HX86cyPY7NkHJanjcsQC1BbkDOeAnK1-3CeiX4Y5I0f6VO
Wq8wc3JHDCRdZMWHFyjk5wPEsRjEx_HfmEuPwbg_7tRJ9uju6Lu-rnxkK3xSfAnNa
zfoPbMSS8dCv8RXDMMUe-Afnb7KrofHgQm7oxSobd-mJextv30_OW-22W-qBhWRk3
EZjFWzz58ZfGkrfo6vs52hHjtGlHGtcXsaQpaOl0DTv0o4Eg170Gwk9EIWNc57USB
HuxdSaoZvDVAk-8kk78pnFwUtb6sVjrY3_jlfaaWFadaeVvN2Tkwiobs0aymMhuCo
3zWwWFgxloln3UjcGhtzRdLKt4SD9txAqv8JOGqYHOUg03lEXqZuA8RMaE6611JKJ
MRyIO3dP8TVw81BRFnmi_L82C0qSh8CDt0_cC4W9RFMq5CGx7LInHU_uHoF9XYeDS
wZNB6DGBi6C16lWL9yJVw8kypM5ResGskqc-ktbojb93W-1el0IoC_lH51krmW4cy
ZB9qOgUxFXoRuLLJlkk9eKeObFGYE2ngQumLBIhGSEWz7OlKd8z4lNblWPBDC77uM
mbns7WMso_tpgoHiLCSaeGFoheXuZoTZp4IiLAEUM8udkRIqOIvlWNcORg1UF9szp
u72RWcjDLNSGqNi675P1lmnLh1ppY0T7OtVdFOYTl-xkLg2UN8B_ijuXD6eG36Fu1
hY7_zqmnS1_7nAg3Btxc3VjdFu8caQZujx4NayKHjMb9zQhaRy1e9v0FZVg8I1IKW
UEzOQb0dweZHw0y6NWRuYViWYNIe9hw9iHM8LMaVLwuIVCaIErkyNCcfcVoVNPhOp
yWHrDO-WHArbyJtD1J2gZpQsBkFUoOJhuOy_gii--ZuRlJGuJBmji_2wUIgSu4zlD
vHVVUVbjqHu4E6CPbn1kzbLulgg47xKn1o8ITlTGZUFjP_pkHFRZc4LU-jPE1RAth
52VZD8lcxfhV_8Huii3s_sso9ysGPps1xKzyGpc8zFgurtVJXxyfgATEpFPaDaClN
NKqTBcTaC7YUGMssZWrrPgvUIxJlI3d58HuzkLbCC6SB1kGHPUVP0kIHz0FFCCJx-
VfZXmne_-RCCW6F2bZc3MxRa98zT4PRU4TgI_ReK1aS4Laf_bKE_pxFeArX0opa__
pOUoxbLYaFw7z-hgCRVBy3l8nKCAgQmBEMFrnjhOm6qT27OFgQL1QpiBdYhzdjWdS
Xqo9VRr64pw4m1gvIjHnZVHJkCyH-mxdnV6SmRBtVudbYWoRgYplB5_oSn2_UhIGi
OnBm8mrAY4GjI3wU5n_KXQksBF7C2-afIymxDDnVw8Sd3wdb7IgAm04w03urs_xnD
OjNEtLmEBF47KtYEdhyVpMIeyaEs5Ww1inrNlQh2gQ_CUTdCo8JWPaMrQRfwF2mCQ
WiIMNDXUWiL2OWVhfhBMPxFlRNHathY5VvOZ99d12VBUl2jyvnP5uAVEdxYraymF0
kG7d3Cz7DNgdGCU6TW12Tdd-2e0prff5tTbO1bFn5NgPRCCgT5lPkrPNUL1j7jSad
O_mE59L2oTLTr_bjkLffcfUvQy6WEApw5M71t7VlF2S6HzZAx-G-ahRZOVDwCPRVo
Hallam-Baker Expires 30 December 2023 [Page 35]
Internet-Draft Mesh Protocol Reference June 2023
m-U0PPOIbQyhATbySyWg-oM7S3I0yRBYpInho5r64wHK3Y2CYHQpHzlaRnXTAdkNS
h_mdMYus6BU-slJZ1t3FBhNx0IuLeyF0G7OI-adAEqXAywUNOeeGIruRO79OEbWcd
unafTh1a0xgKm8FAuxz__0EU6HJRSJZPUDRkZ6Gacvh6yhBUfcsJv31h0vbGMMoVA
0-1FwoSH3SjTmV2XQ3foW2-Uj5s6FLWNST_aRtVDLwE_diHxH6eq26r2UxKJeC8vK
In-mPBWYpHDffO4Dk-Bwr5fsItDm4Jq8IvpnioLt6G7rMKzx-kS_eB_av5v0es7kW
V-SLcOSgZNsSIdaGZQLe02Y92R-pNDhOtoRR5sZfBdna5t01LFhVvSTCO651527lH
1a3C9t9AfrzKwkkAnCr35d5T-3Ty4JLDsreIr8Ep_ukJ1WhPC2MhZGVFRppXTOEQJ
Y48RCceb3Qvy3s9ajrXaYtbijHNr0EYLnNMuD_6HaZqh3fNtN0lBDvOb2NeJFy867
aRtdwGVFfxqE9_UHJkrAY1IUSqJZ9zPcNn-X8-h5ySzX3RcT2wWhFf-ezbEAcqbT2
M9TDXUgs9jrwqBj9RpBKldi4SXVCChh9-htCZ09xkUChqdYP8LscEWg5QOlK8j74L
AsehDWpGbD25FtlYTJNMv93Lz_di6MozoK0JV_AJAPSkC_EiDSkNIzHOU8UQruM-B
C0FG_fTa3Ex-5zf7Ahe0DW6p3oADVMuJigqxu8G5gcy3m8fByjbuTDeNU9gpZy6N5
g6ymzXhdrTbdFBQ8riYWeEehXJPnqRBasD2Lrps7QhTI1IFidQTJOIcPb42FmuY__
aQT2pcWjC7HJI19pNn88T-0JOGz08hwOTZq8NLYwzz0rFy6sZjpDpJFAD0ZbxPnSj
8dyPflgeWNlFFBbhZ8RA2xnD_npAwAeTnmlRKEAtkKC6Nd_s4VqsnAOWswCa3vOY0
UZII0Q8eqSxa-X7ysFz0avX_ReaWeoO8oOhkQsIaV2HlRRMupL36WB4DRclHuVkY0
Nrm2iiU_bRrpydgnjkpKiEPHOfl77k0EIl1287tAEplBIOpB3vVb7gnlSQW2eC6Y6
42VjTlVX8y3uM0ynKW4pLWiNSBCoAxGnyUCjJO0NZ8i8LQ3szlavKrqww0QqBKlX7
hKzW_3DsK42MYrDeF1-EWMQmJnGXRkp0stqCCGLJ7ICELNXO8-lZjiPY1aHenetg-
4cbW4B5MrTim4VvuKFfyOrhzad7n1EVcnWkDlIuKGPHXQEqRBdlJ7sE5KS68tHGSL
kEuU60wpg2LPOfiqKwLfS3gCJtK1llqqdEUHxbiZrcRa9hoQEt5ZWED5NiGp7AkpW
0kMEbvuXLGD2QSmgZJZ4jDunoYCz_qmKh0BwAnJGtRMcn50COGAUYyb0KbWQG5Hsp
qG5r7is1m9rDPh9OmxJk_y6n1wrXRdN6eJcBtODIqZ_i9OuEW3s9LyFLntGEvEpEu
nLOvKvfmCdmGcUi58JoVTfpiRDMGWwmIIZvDw6f2kU1ssQ9jDqF92YuMKIeJZg1mE
iIWIPK3pG_WKlAXRWMbey1BfEt-282sN-nuY94tCTfRWfSu56tG9g1eJj9Gzf5AJm
mGJ_kHZQK3Ekq_v3xpWFF8BGTaZevUlACDu72Uds3Goj1UTXJWfIAaIJtbb_64EgY
XiGAyQ2aiAXG14SV5SJCkDYhy2PLRpp0WUQ6F93rQB2a9nl8zMKev0rM5v23HugEw
0GYEE8FhAjcv3zC1ncTw2VI0xNfYzW3R4Mw9qio6A4adV3tTbpGUqwWke3UnXgejg
0qxe7oJLXp5gDm0MYzYmd9s2Ur_yZqPrOxOtXUYPRmJxXZaoH6RNNp3PiusN15Vty
g1jpUDczPAqKLfFprnaFdfpu6_qDyBGyJFutOaTCzEpd2EPIy0jb_qvjsHL3B3LWa
QrIbEJpR6e81cgzbs3PS0nanis6ylYpWIWIdSWI_pXE2nWhbdJdBiHUNFvOzLY4LC
ZqHAV1m07vyJsGvi57417ttHl78baAOtv8BbLIqTO3-6o5_wt7Hkt4ttAXHBQWBy4
GN8xzBFu5giyLJOebKzVGZTxgEvQxwyioUvz7_VI2woDXrJpXspod1laId5zTEGPz
FAHkLZVEBvX-Vb3c9ICeTL4-St8mdMuT-c6GPbfDuqCYsn-e59OLKn8jCJsbfgMTX
ekB1Dp0FRVNCOVN0HfEiowJ_DMBP_1NcAgFpUlIwR63zPlrkVoCZ9Fn_QRE5ThpAk
wN8i5pERkm_RhU9Z--wfuaJfEzufZLGuB71IwRvzTNqn3lDL7h3ADdX_1yMTREujH
5LWQ7b4NVaTpcSQL7bskzvbeUJlRwGf4Qo80KWLU-UwE_kANCNSroqhwZN_hnx9C7
UlsT8sHaeqAFDa9hicQphwfqGamT0vWe-eq7ooqVYkWPCTz6EE06IEiyj_pbN95eC
RBRPg3uhT18hkvqqvhF51HOeDtpzN4lzJ5y3W0S9ncDoIIJEial5tSaeMKOgZJDIc
BG3MKHO5nFLHHeYS4imdQg08RgvUZ0Ln4Jj4Pul8_7420x99c8lhoQxWAt1DWqZ3b
AviL6KOg4cm0kj35-TAhItBvhKDNvtHIJguFUn06I0sHpayxTo7D-Oaa6dKB1pUvi
Y_9NRui3RQGQ3HL4RJPgy4ImzMCkfEmTIpbG0IA11CrLEEvELuaEJjO09z08Utfzg
woFgkaHj88N0wdcbVNL7zxxlLkqYAnZjSBbbrLe5MDJn6Q83JRLs-O2fDRqIoiof5
U4v8kFRV7tJhyzGvCFZ6JcRi7bg0uWwzHKygoBYgzhfWF27TVr-p4ZoONT0pOcddk
xb1hkz4B6Sa_VzXwVl8fSn0Nn8GIohZUQweENTwZS-_w_77p7J8lg0P2HoTYMR99B
Er5MFi7B_TP8uMCqKAR28aQEpbzyo1l592ZK1OoOScLS3YJd_FK4TNshIUuqgz4rr
olD6aBr9BhfK6F8sjKbQnvt-Bx3p1JpfBKaMxksJ3qpTB5LGw9hENAC28AAEvF0Fa
Chb_ebujvkXd7fq3U6DqNmIacM10hEYK3XBH2vqojWfLrRxbpzCn9pEuq6BH-pMBp
Hallam-Baker Expires 30 December 2023 [Page 36]
Internet-Draft Mesh Protocol Reference June 2023
_PySC7J8LjQ3Q7_sx8pZKGc_0ZVD49P6af9D8xMHOTWyys0VMXaC-SxdJUMvBb_J_
yNkl1_GmAHlay6cMlekpKTJTqW8Ma2dH5ESzaKKj6211wHRuVLgbZopszSAQDOqTH
NX-1R_WtH2vxfY2VBORV1GODF2IEr9sme87dK7K9ls7GyX4KPmizbWgRcvXzIkb0-
KyD2QzQxaJWQBiu9mFtdyiT4JkTrGVECNE6SEayQd94oVRRt5pfqP1OPRiF7jmMZr
NEovnvCQ-_PbExysH72Yunk7cJXaxsdZFdg5A8_TDjxy4l4I_6-6AdTx9LnOImQPT
hx8nlootx5kkXHK8CDqOBHWP9sxbGQcjVBlvkEqQOPfJiOQFZa2lPObARq7a7fVMw
xqDa76wZ7khAQ1wwdCjCYQK4vyU5gWJTBOLA5tluN2LJ3esQy8gyuvcw7HtY9soeM
BZQODC4sK2lQNsM8Z-_H2lP5b0jrPcQJHM404Qpbh-xGg44Rinir8YxW00_lWtEz6
lB07KW4DDSq4-jjuV5KpCCU1xRtvF6hOs87ogVDNYYhZOID-o2y6NrdcI8ok0ujhW
8wr55yPHUtP2PME0QNRv9U7FpX5d7FxT7crB1mbwdyiy_5sY0HQOyr27leqkDyiHN
yq_PHVI1dw0vP3TrQr6MbW8KDtK6Q6v-xK7Fre3VS-YDArinJUQ72fDSn4G7BT8q0
LVJ1b6tXbYZmlkfdMOoOxNgnVpJ8LUCTK4FIdYmAjgTy1-H25xWXLD9gyrzd0ahHQ
WMaiX8raaiV8hqEL2_FZfUWQFTmfLXSgSs3epOwa7_MJJL6DMdjmiRCSFE9VpklTA
kWu8sJNsw8B3V5ULjHetluTI1QgYirxpT6W8Zbv_W4wMy2qP75YXVNFKh7zPcMMgG
mcxGSps9PKVqg4U2VZUqsDU0o_v0OHb0-UqYZS1G-IxlL7f_IP1E9rNPKyK3M6XQO
7zlTECZbRBb2p6jbD0KgYpTrGZeTaLMLOq5qs3Wydx2sMQP7WPu7kpQV58gpK8cDV
XEQ8pG6B4TCkRuK77CkYNzRzF1VltpDqcIt4B3meLWib5bKUYKCGR8n4F3nfzMcZ2
ORZIxwbuT7ZpgSYblLgmOVoAMDwNKZI6YIl8C2aUDymJ70txzTqKUJxQw1s7UdGyk
XP-0u2HqMB1zXcu1ztyZqXBFef2q_moEpJNdRRF6KzFbiQyeSjSXS1pLDLNwudnN6
yxwwAYabmDGQFsMwTCSaBd3aq8mJlgvHRFdbEh2VH582d79IDuAZSFZ_Wky8ubmhI
r8D-I18a9ez8PmCkIAJEGi0DtKh84HU6axby9qvjRBdXTq_0SlvD6yE3lxtk-uO1y
PX9jPveLES7ttHmPHOwPFWL5r50lXWr7F_1L7jge9KyeV647Idr-Uu2A4KzJT13qY
JF19sw-RFg5h6_TqszrKz-rJ11ogIgQDhm9xNt9MR6J7j5n9wEQrahIP2_cmbHFam
Hs4zIIyD5EPxR_GPw1lZ9A8z9ABLs-ZS-Ha0xLuEGkHS0By92VM9LW1E5jgWJgLm8
cDWByxglnJZ2BrrjgEMvHKpPDJ1CiCjQktOd4w6nwye55HX_tpjMS5gFiAOMyeGLA
U3AHUUjDYE9LRFfuGVzw7wgmkjlBkfJYrJDC5QN1fEPAvcooZh9xtVXU3ECmlQ20D
wKtm27xvcg1UIGSoWS90MPag4bNOeW2yfmeRcTtu1C_0nIN1iak3T9_mtZL-v0Yd4
ul0GFzNf5CBvmTw1Ws9nwOVmxmDp5goXF0C4jxtyDqHaj3vagtxLFdLBQyau3OKGO
0skr5MigqqvHdjFZmFJ79MhEPQ7akdq63_WVFN05uQAHIT45hEf7TfVi6KN04x0cD
lPq-9t3WYy3DSBAgpD7gM59-cE6pDW2UuHhecMLGXFUycN05DRMqHecbh2Uja1o49
N3cuk1fnqloiJr-mSI56HwtlCyE7EMU5BmtW6_SWZ2LPbSH3N7VJe1jp0CAmwthne
hoNbVgyN8g9MtDzYgHtSAe6-45jaNxe7kfc2dsFemgPEwTdksq2sDkFKnn4onE_O3
2d6LsTAISaboG-dc2htokUvq1KVRxSze932wah0HKVK0W1FocTwf2Cqr2498bJa63
BxV_pKSLGnv_2q1g-eTvafuPjEJp7Mxo9HSVU7wkZZElgaaY4iDuXZCTjCJonO4Gw
Q6lmWLIRX7cf0sZBpM6Y0oTMLUJegayBVnriwfHnoD5bJJctI88IpkcT9BEoR-AiU
6h-Fbo8iaXYWWzftYJ3rNsF7RazK0P8-596uQ0xSHnDzqFnpri-hEbNFC6JQEMtdB
XR-ytTZIUGQ61NHHYWT8H1sooaaIPbtKJR-pxGF10RUiq7A1fHbEjXZBsMD3vwaRj
J4iuIdmijCCxX6UwexxgvVRTNHVegp5wgBam2gJEMUuNkf7NDyfjzSptLJEBfWW8j
PGEzlR_hgHcVw3fhb8-8bYLYzc5u-Ve5MXTrMdx0wK1_vLhjfQDNmMgYhrEhmoZtI
L7YAdo7JkOQ8cLny_4zn1YWh3KL-mtUefV-qcmXyVpHn9tCMum53NJtWcjO2A9zu5
rj8ay-iWHpZQx8oYY1P7wagAf4JtTYVQkE4XRq-GgJYDYmadj2RFEGVRAQhrLKlOk
waJmXcf5mUTiZP0rXhKu2_HkOVBTT_ohK_zBJ11WON9pGce_EfeX6vYa2F7iAExWt
EAIFvjwjIri3wxu35iGnesn2FxfjzwcDjDZp94NSOeqZMIr7SwVIzVg1wF1QzJl_m
KqofSxqvBSTOtBmuUmhEkdMdrctyCsmBuddzOfKdlhwVNDFPd5o1EFspYtzns-kB7
NOPyr5njlpPIHnc_Te8npcozEWJO3O1mTl6WPi5IzK_gpAQ_NObcmI_G0DDiiEhlx
WKVC1_j7npPfhUq7Kd2SSnt0G07q7HlidRJE4XXsJj4-eE-kIddMXGp54mW3U03g_
3TprvN1Y99coMr1n0DGN_y1nhIxtCUdeYyi5clVPj0EezyNvRkAMsWWRci9x9v3kQ
zCu9aSBJbTY1iWKvcjdWZl3IkyZYuunZokVy4ULxEHIlHoCBvrSqEqyGje0PoLfAl
Hallam-Baker Expires 30 December 2023 [Page 37]
Internet-Draft Mesh Protocol Reference June 2023
06-9F_r8tlMcin5vrQ7crR_6orOHPnT3iz5NHpvPL26CBiAwhM_iZfHBcouAzpbig
66irGhahPnsxFmn6b_x5E82Yyao-3K9P4usBZvH3dmbvwNhgCwee-31NMqkr18V_w
5XIHEiQ4TJkNNO6pdS5FiL0mA6OgcBMOcXfuOglg7oSXuCw1qSTo7f6xGsEEDPK3d
qgQzKKuez8_STsbOjYrKGdpTXqxD4Kt8_CpV5mHU4aWOyT_Qn57qi16mEIOa2S1u7
Iyxnmke8QewPsWKRF83xrOJDBuY7AaXXjK005m5pJc2hYQCMCI2PinjcCWsOtBqMO
AnXPKjlUFSjamgqpMVFxUVHapDHyQ_-owm2CEiGS8ikEkYywtWg4XV2YnHNepG-kB
s3ArcsDabIRShj-pxHZWO62No6Gm5-_as6y2nuHi-ZQEGAD3LjGy0hWJ_xCn6VvvD
dnntGY1Se3VgT8nChTcKKoKv3vgD2_7hvHgz9olstuZprrjn3zIIZCeZs0NqBmWYx
2hxHKmM2cty0sKc8jSwiSfLlUBQzVcRkcsACPI9mCwAZD2CiF9gk13nL2y_X4NY1K
9LrIe1DYJ9fTqOiLyUV9OVi0Ha0thuVmJALKFkiiEYCst5q9WHKl9koTFxFH2zAQi
Gy43GuyRyVu0fyxViS70ffpTf8-d9bBSmlkAYPzkdg25iNqHuFWycIplLDRI0vXYq
zCQk8NtWxVw12psdFwFwcSEmYSud1Dbj8PdDTPDSLPEIYd80rZWxs-FDhcCPWRYx-
hlcaIywKfybjUjH6FvB70OiM-EAIl-AZHViXt-ZjVrF6JTcLwK9ygbaaUFjTiKowD
tuGAeXRSuPDiPqnzvpWQzzAdiJ62nthWJCBol7Ub8y-I9CHcTQTZj11M6_3tS5VqN
x5XzVQKOAZO9y-phXSeaFe0o77eo0GXDkaBsZlDvTmuz7F-3PYH28umz98BxKuHoF
130gtQOIRZFynA553iAMWNVBAFAYkzGeSNU9BY_CdPH5LsTs_KZ_7LUx8mfxOMvbu
0lPZISmVCRj2sQS46CGFngTCsqJ1p1nBlmw80z7G5XWUSjfLigvcpasI3GZaIbpV2
HsiGxUmuRoOqpLmbET6TCWbMPJh7rNyIJVc6MOtWd5ZHZOcRS1QKLnDOwn8zkfl4_
plSWQR0dh1GbJRG9nEHhaoX0-XD4tiBXK3EY3gDeySu22Kj88x_3hOXFR5BdQiOZ7
Ymi2Hr4962PHC2mVzhhGT7VO4kbzp5hNmhy1pBJcwNhw6nFeFko4lkPHr-9FL4Cxb
F4NPOluGfD_ouGgsi9ZAzRF5R2hErY12fTYwOqrPx-Wg4ogH-9qINjEzsln6meLyV
m-Wi7Ql8L1w2iZACShEbNC41IaP-x6emxbLJPqXX27LmGXR57zo1iHLzA7ljwHaau
y1ItjrhGKQhLUOSbRQnSbB2jlI9nGEkpyzGZ7GfKGEVlUmNz6lC1SuHHsHJ8VeCsB
I-wPit7bG4zHS0PiH0rPnvelDLGpJAvah6amAf1pDF2LgjietluG7X56DX5Lm6oc-
pJFFgV_6Wv4IgvvwWnVXQ5E53kjwyqs1MwoAZW8ml9t7SibWSMSd9--WV8D8N4gsl
WyuRfBaXTx9CTrZ2Ty2V04ce7jygRX8TMcJUscxpz9Na5UMWqM_kRF9R-Nxg5Ucr-
QMeDNc_TpO9FUlfaJAlOB1dfQ6OkQpsYK6Sa2Vc_Hu7mflUPmRq2kLlfNaDUdrIKY
Ujdsk_RBuVkMewUUOBPebMYEV2UoZvlMAIk_7D9jFiQjzOyOJcFqSfGCoXSxLPNrX
i9Tji8rAMZtLzHQ7NAG_CqrwCs2IDNCrWIIU8dTD9eR0L7CXKdCdc2495YxvcNMhx
fmmO8C3pQxZmdolGShO0MKXruGyzJngSb6bdPflpL1aDtyjne3tHfpTax_dJ602UU
iW5hJr485lgsE4ePpHqgtvmjYwSSRTJor1MEYh_unZmyCc4QmzYzxr67EButhHe60
h7SKCbDLdqLHAJI7HwvqMYNJr3h3dZy_9ZbKcu15_WTB3Vx8rjiwk-RJeUWD0LTvB
IlzZiyF1XDNolAmmGnN6j3R4aqkE5qqp6XY-OnAORFrh0A8MTtKU0J4JBX6sj_TZE
vx-c5e76tEgdN84Y40wNVugoP7MjB5myccXcr7HFMfQjzVz9bdbXmbKoS6y3NSGdS
ka7-NJLJCLbw12YJ8wGr-D8hfWiMP30KAqK2hFtLzeggNXN7A9J2iyl-B41GLCExO
zU8T_NEANClA3yuIcLc8AAceja85Nt3bj7694ooo7_kglcuyYxouhEaBxlPpCWfOV
cKZ5Rgpn_kYpyZBtCFLsCrA4-sronSo4kkeUQ3Tn9j4MtuW5hc1EQc3KPsnjC9cv2
0vLZbxG4KIUiC8D7Npvdou_IfirLNXcvgw22KrrQtuGPxMIOicco517X00K5Tunnl
OcdVRDhUEyzY1j5KHOimo43UftbMNXkYxogjaX8rYa2BKr-geqRbOCjvuVDjSclyL
sMFPBt9lkCo2NcBZ5JVnGaS8OD1K4aAZTyXaTzN-dHJKdy-HbWpOai5Afo0x-wKHi
EneDkOpSWDAkO-U_LsEvgLeKn_BKu6wz3ZUdmcqHJsKZ_W608-qbJ3OgQq5shEHjH
fP7tgfUnQlE29cAH7SRcaqvxb42RFcCxt7FJPHp7lMQ9_QRWFq45h6hmoEN657u4S
InjR-7dwMVgNki1EwSy0PjYedoC6W8jLmDhyTIqikhKVGVV-qCwKW3nUA5sQzzPZF
rqok4Mgevcntjd2d4uSuASdLNmxjeYkybv3ibh1JKex1kyMZyr_71EtlCMcaXoW3Y
RkoPHAT_qTCTkmeFYiHjcg42-2nEY7XNHKmaX3CgXNM_aLo4bvBvxBKjPJEFxdrol
hA71Bm6DXDNkis21lvnDphJsdJIRdOc6vfYkWSA8QCCBBHDv43cxvqXHM8HAWgbQK
4_FdrKnT20IQCArNGkVthA6PyneixUdzHCceARhvM12yrOS4EU88hxMhElDsSXTBg
IblWQjbyY-94n602WQ_F49XQ_84RspZffnGVWotRXAr4PxhYn6CTeJ0jy9yDYBmh_
Hallam-Baker Expires 30 December 2023 [Page 38]
Internet-Draft Mesh Protocol Reference June 2023
Uahfu2hHrXDnW0kxsh698CW-gQgiUf4_eK3z8s92a4TdTSkoNJAMlM8nZlgqofhVC
Fh4UVWAxX2c-FrdiQTzxua6fCylEVtTWb7bg",
{}
],
"Status":201,
"StatusDescription":"Operation completed successfully"}}
6.5. Publication
[Future: Consider eliminating this mechanism entirely and instead
using messaging flows. The means of achieving this should become
better apparent when the problem of publishing large messages via a
pull mechanism is considered.]
The Publication mechanism allows content to be published through a
Mesh Account and retrieved by means of the EARL mechanism described
in Uniform Data Fingerprint [draft-hallambaker-mesh-udf]. This
mechanism is used in certain flows supported by the Mesh Device
Connection and Contact Exchange functions. There are two operations:
Claim Post a claim to a published document
PollClaim Check to see if a claim has been posted.
Content is published by appending an entry to an account's
Publication catalog by means of a Transact operation. The content
may then be retrieved by issuing a claim to the account specifying
the publication identifier that is authenticated under the value
specified in the EARL.
Use of the Publication catalog to post content necessarily requires
that the content be smaller than the maximum message size imposed by
the Mesh Service so that it can be uploaded to the service by means
of a Transact transaction.
Publication of large data items will require modification of the
protocol to support use of a detached message body. Transfer of a
detached message body is outside the scope of this document.
6.5.1. Claim Transaction
The claim transaction is used to post a claim to a document published
by means of an EARL. The claim interaction is used in the Static QR
Code connection interaction but MAY be used for other purposes as
required by Mesh applications.
Hallam-Baker Expires 30 December 2023 [Page 39]
Internet-Draft Mesh Protocol Reference June 2023
A claim is made by sending a ClaimRequest message to the service to
which the publication is posted. The service responds with a
ClaimRespose message specifying the success or failure of the claim.
A device is preconfigured during manufacture and a Device Description
published to the EARL:
The client claiming the publication creates a claim message
specifying the resource being claimed and the address of the Mesh
account making the claim.
{
"MessageClaim":{
"PublicationId":"EBQC-OKCE-7PPE-SQ4J-IY6Q-XGHA-OD4J",
"ServiceAuthenticate":"ADIR-QW2Y-YEDT-AXAC-LOWW-MHK2-VROC",
"DeviceAuthenticate":"AD4N-2ENX-A42Q-PNOT-GVBS-DDYD-7SQD",
"MessageId":"NA2A-OY2I-OZGM-Q2FP-RI2C-BI2V-I2CE",
"Sender":"alice@example.com",
"Recipient":"maker@example.com"}}
The message is signed by the claimant to make a RequestClaim to the
service:
Hallam-Baker Expires 30 December 2023 [Page 40]
Internet-Draft Mesh Protocol Reference June 2023
{
"ClaimRequest":{
"EnvelopedMessageClaim":[{
"EnvelopeId":"MD54-PJZM-F6UL-E5GY-X2EZ-ZPLV-NH4H",
"dig":"S512",
"ContentMetaData":"ewogICJVbmlxdWVJZCI6ICJOQTJBLU9ZMkktT1
pHTS1RMkZQLVJJMkMtQkkyVi1JMkNFIiwKICAiTWVzc2FnZVR5cGUiOiAiTWVzc2F
nZUNsYWltIiwKICAiY3R5IjogImFwcGxpY2F0aW9uL21tbS9vYmplY3QiLAogICJD
cmVhdGVkIjogIjIwMjMtMDYtMjhUMTc6MDA6NTBaIn0"},
"ewogICJNZXNzYWdlQ2xhaW0iOiB7CiAgICAiUHVibGljYXRpb25JZCI6IC
JFQlFDLU9LQ0UtN1BQRS1TUTRKLUlZNlEtWEdIQS1PRDRKIiwKICAgICJTZXJ2aWN
lQXV0aGVudGljYXRlIjogIkFESVItUVcyWS1ZRURULUFYQUMtTE9XVy1NSEsyLVZS
T0MiLAogICAgIkRldmljZUF1dGhlbnRpY2F0ZSI6ICJBRDROLTJFTlgtQTQyUS1QT
k9ULUdWQlMtRERZRC03U1FEIiwKICAgICJNZXNzYWdlSWQiOiAiTkEyQS1PWTJJLU
9aR00tUTJGUC1SSTJDLUJJMlYtSTJDRSIsCiAgICAiU2VuZGVyIjogImFsaWNlQGV
4YW1wbGUuY29tIiwKICAgICJSZWNpcGllbnQiOiAibWFrZXJAZXhhbXBsZS5jb20i
fX0",
{
"signatures":[{
"alg":"S512",
"kid":"MDE2-MKMI-773P-GJ3F-YYAI-UVCK-OMKS",
"signature":"AVvfeF9kk8VekNI1EIi0qISa7yRvOWccRXxqf2YJ
zEotsx4ARBhGJ5GGI3KCWyy1Ejq1ZLxW2xMAcypvT6OxKRhscsvdphabQRSJdztgc
9SYCxbU5q8N4jQ-CwMlYLQssQVi6AiKU0pOh9DzPeUiKREA"}
],
"PayloadDigest":"A-z5xIvCyoCCIcWvFZGshgLRFxI6SHPXgRdYidy0
CHfIQSh0gShhJQPm0IWemu7IdFr10Q65Qj231ngp78TK7w"}
]}}
The publication is found and the claim is accepted, the publication
is returned in the response.
{
"ClaimResponse":{
"CatalogedPublication":{
"Id":"EBQC-OKCE-7PPE-SQ4J-IY6Q-XGHA-OD4J",
"Authenticator":"EA5K-OOBH-7FV3-N47W-JOWD-YBEE-676U-6CRX-NW5X
-HL36-H53W-AS26-CQ3L-2",
"EnvelopedData":[{
"enc":"A256CBC",
"kid":"EBQC-MPUZ-GTPF-CZVW-LZCR-KJRL-VVJ6",
"Salt":"UGfYaamJakLw9-AxTE0aGA",
"recipients":[{
"kid":"EBQC-OKCE-7PPE-SQ4J-IY6Q-XGHA-OD4J",
"wmk":"07bXydiQxFJzzC7ZdXvIL_xNPYWA__UKTTscClnl0JBm
Vlw5QHNCvg"}
]},
"1q7hYMf_-_m5j0skBvC8oKHay2R7vUFaLOU56SXST7mD8rYBUkKFDf84
Hallam-Baker Expires 30 December 2023 [Page 41]
Internet-Draft Mesh Protocol Reference June 2023
Andi5cOshdy7w69yEkPETyECcTVwQynLm1LWmUE6KXbvqULb3BGPrGBqiOHAbUCzk
98iwd4E-ZrtPKkUykDc_rjp9z4Vp9HA--yaMXDqAOHuMXzcUmZP-7UL1vwgL70CwS
POVjvbJODUhshAO51AMwFbCOvajfrc5Xzt8XqFB3LAvFtEh9DLdZ7pmLkscMyv3Hu
gEvIUqSlbqF3-wNE-a0aHj_WFZFqMe6DrjGHNYYY5HCLikXwivS94q4RU2E6r7FHA
gUUdrU6cioH41BbBpc461GjhwtJIDO_tNWRqKuKbiubSaAa8tkjUJCjBncNK3t1X8
mtosHY7ea2O9qgPRPis1tvGadPmEF3DYDEU4O7O8Do7Jk6zK6CNPDdBlZWleuy9gQ
QAbucEnY-OeP4Gd12Fcx4FerAqcrpxtUc-YdKfhEdVmNbq3-twa61x6XCJswArR1K
rvrnWg89xg-MbVwpWHM0tOSMsChE0I9YQ-V8Hjd-8mYC_SSWMnWhfaO4S2TCchphK
0EswzSyt_yR-0WQNAWk5Gnx4UdY-O_xz5btm9QyFVjlMU3m5JKTm4G7OsCUZdy-IA
QG5bv7ZXgiGnUvKZp3Dg413qdOrbwNWvVBW27TDF4lhfzoSWfAsVM6y_1EAK95doC
0GWEjTB0ShACb7H0AgwkUNuxH_Xr1annGO6z3cUdJ2Pv6h94wpFWX7tcL3u0j6Cts
N9GMzKU4098YGE6G9XgEgsqHpbTfcS17iEMtwmWrpxGXkp0Unau7E7SQlbkXrwak2
DSFqUjh1N4BnB4DNmZ1KX1RS4wQPfdPjpReAalWn8obGTOSZ0As1JkRKIOYfLMlTt
BhOUEyp3152fn7MN0KvFrCd9CyrtufAxLThnymkbJAwaMwSeIK0GPfo7EbeRiHAo0
ECbnsX1KpjLE6oOuWkgWqE19-s190NlkAQfXLBjQWW7bfaHxLves80_GE3k6mN1Ku
vBALWlDe27TxehT5x_0Q0epFYfXtSsCbi8ZP5_czEJDqg5ECv4fXOCJEEn0cV37K1
yOXBRUotwfw5Yi5xSLWqChE7wjdmcmB75ABBBuCrw4zkccckTAmCumaAsGSZQI8bW
8dt7-JvQ7uExI6TdVNMfeAITyK8ZotrOHpr7j9DgGqX_QvcLarjWuurG1-_IL4Pc4
0FaY0bx1MSqAhJmK8tNMQMO2lu4mts-1o6txpVEhY7NSdw-8PNGev-Bkgy4OjzS8g
ymkfDPYrLnrKF15QYpS0FwGnkH1lLSgvFx5PHreOKvR86L0soFSuRCpREnE29dLr5
F1Pvg5fXSJ1Ikw89pTox3v6Gp4H3IvCGV5RWoaqNERY6CFHV-TnQbTIlaJItsLdFh
exW_jutigHHiMZosXTw14QcUkZqTFJx5klcZfQ6EsKede30HcttBKWcGy9ljGU_JO
HJiBXR6aRwyCBLOAwES9FF14nvHrH5L-i57I_KabWxwvNWMsDNHcKTmN2T1-IrdVt
9STbk-_PI5Z1mZnAWnff0HgKikH6dXg6omsQgD8ej4G87nGAJs9amn5T9pe8wslt2
8cEtl_9AV9Xbp6UolDtRtYae0VArGneS-nCcVYVxtaOOswdyTMTWcrXKh1bMIYeOf
zLfCIm_FdTjHIcydu4lbHZUiRm6GLs9OT_irPxkhera0r7JWjnHAu8J1EbBlhgyig
GvqgbBmjdhJMr4elQWGxGlEaG9QfDKs4xKas6OSOGLu8WqQQ_hKIoF8rluiYLz2q1
SVDlNAD4sEwQveUvB2UM8-jIgAf2WyWfgz7ztR3lzDqTw8gIvr4GE8Mw0jDznolAW
NrA-LymxP1_V4ptXpNOphNr_442U03LiUeyY5w8q-IY6VJYpWIwtHGvxSeGrJt-b0
P2amInoEpPChRofmt07cSIYW1jDljdoZ0KPZi_YJKsB7l9xiEXQQPvPZ-gI2yHF_8
v3oNP8X3r7wp1E8AEOhYzOE0Znsvc68Qz8depNdjSkMQtQCQqnjIfcBxG3t3K48YH
BCUZHkiE5WNzh5iq8oHHXrKx4RPf3KxQ0ahSpxE9mLz-y3-n_NnSIA634nBRnfgxN
tfCaKqdEj4zFYv6vTlRBBzJSYw9sIpp8eusT6048UBflxyWCR-C3LOKw5Wski31p7
Q4qvO0_cFv26pwaNnAIlU8UR-UzdPpaiwc-pj3R_9fQqK3PLqiYN-N9xjIvhUd4Lz
WE-WVzPWEZd3BxmV98rKv-Zm3Mu4ehOZ2nH0WyrweCm7jBTdcPKWRrhQ4toh2wY7j
ijEkDzUgfVAD1-XhTDoe9Rav3L_TLI4T-6c12LhgbB0BLuVALH8xh23CnU16fj8IJ
RWKcc1gtTxfEqbfimtX_nvok0bWyfgr_n4kGXtCeS6Vg1csS8zT6F1bgecnHi-pxh
swQ-KG3oSEeKCB8L3_M4nybYphwLw8GMFX6zXArm2PeUZpzc9Izec5z9pvwiRzsM0
FKP2Yg13qxC85t9UCFWPSupvRZjHIfSK7o9gOrh6Tb-MJSgsjjHWuwipKaAf2oy2k
KREgyyPyv0HY2O8po2kPZAVDLRU6Kgh7aymaIurR3EhHrgz_wZfcXei5GbTkLV5So
-2PEhfJ75ayqbJK977xKtIrKy0tugcud7uFvhn2dEwQi4OEDGFThGHKhdOI-eyu4X
xUWQyPKOlEQ8IMc9S_V3OA5z0IiwtNjwU8eIgsjVrwupLdWnSlO5UClDOrkSC9clN
vFzYXsRo4XDT3gxrb9AsObNUc-Pk0jXz2avuTr-5rqoJV1zfTmQPNiLG4wwC4gkBW
_3R9KqArQ_YW47cHdX8Cyd2lzubSxsZzUbn1nK1GBIE7HmE8eDM1Gd93VRrRwM0k7
WfUCp8A-TGV1GE-3yuaWDQUmdYWSpnVQaVsdcQjDiuSSfU93n-NEP_jRrpxVYjE_n
PKoLmpHOjVMTY-nTYivvGt0Ssqr1siwxGZiyFlni6eiuBlkhw"
]},
"Status":201,
Hallam-Baker Expires 30 December 2023 [Page 42]
Internet-Draft Mesh Protocol Reference June 2023
"StatusDescription":"Operation completed successfully"}}
The device waiting to be connected uses the PollClaim transaction to
receive notification of a claim having been posted.
6.5.2. PollClaim Transaction
The PollClaim transaction is used to discover if a claim has been
posted to a published document.
When an authenticated, authorized request is made, the service
responds with the latest claim posted to the publication.
The device in the example above periodically polls the service to
which the device description is published to find if a claim has been
registered.
The PollClaimRequest contains the account to which the document is
published and the publication ID:
{
"PollClaimRequest":{
"PublicationId":"EBQC-OKCE-7PPE-SQ4J-IY6Q-XGHA-OD4J",
"TargetAccountAddress":"maker@example.com"}}
The response returns the latest claim made as signed message:
Hallam-Baker Expires 30 December 2023 [Page 43]
Internet-Draft Mesh Protocol Reference June 2023
{
"PollClaimResponse":{
"EnvelopedMessage":[{
"EnvelopeId":"MAFW-3V3U-3EQO-GEQ4-RPIJ-NPIG-OZLR",
"dig":"S512",
"ContentMetaData":"ewogICJVbmlxdWVJZCI6ICJOQTJBLU9ZMkktT1
pHTS1RMkZQLVJJMkMtQkkyVi1JMkNFIiwKICAiTWVzc2FnZVR5cGUiOiAiTWVzc2F
nZUNsYWltIiwKICAiY3R5IjogImFwcGxpY2F0aW9uL21tbS9vYmplY3QiLAogICJD
cmVhdGVkIjogIjIwMjMtMDYtMjhUMTc6MDA6NTBaIn0",
"SequenceInfo":{
"Index":1,
"TreePosition":0},
"Received":"2023-06-28T17:00:50Z",
"signatures":[{
"alg":"S512",
"kid":"MDE2-MKMI-773P-GJ3F-YYAI-UVCK-OMKS",
"signature":"AVvfeF9kk8VekNI1EIi0qISa7yRvOWccRXxqf2YJ
zEotsx4ARBhGJ5GGI3KCWyy1Ejq1ZLxW2xMAcypvT6OxKRhscsvdphabQRSJdztgc
9SYCxbU5q8N4jQ-CwMlYLQssQVi6AiKU0pOh9DzPeUiKREA"}
],
"PayloadDigest":"A-z5xIvCyoCCIcWvFZGshgLRFxI6SHPXgRdYidy0
CHfIQSh0gShhJQPm0IWemu7IdFr10Q65Qj231ngp78TK7w"},
"ewogICJNZXNzYWdlQ2xhaW0iOiB7CiAgICAiUHVibGljYXRpb25JZCI6IC
JFQlFDLU9LQ0UtN1BQRS1TUTRKLUlZNlEtWEdIQS1PRDRKIiwKICAgICJTZXJ2aWN
lQXV0aGVudGljYXRlIjogIkFESVItUVcyWS1ZRURULUFYQUMtTE9XVy1NSEsyLVZS
T0MiLAogICAgIkRldmljZUF1dGhlbnRpY2F0ZSI6ICJBRDROLTJFTlgtQTQyUS1QT
k9ULUdWQlMtRERZRC03U1FEIiwKICAgICJNZXNzYWdlSWQiOiAiTkEyQS1PWTJJLU
9aR00tUTJGUC1SSTJDLUJJMlYtSTJDRSIsCiAgICAiU2VuZGVyIjogImFsaWNlQGV
4YW1wbGUuY29tIiwKICAgICJSZWNpcGllbnQiOiAibWFrZXJAZXhhbXBsZS5jb20i
fX0",
{}
],
"Status":201,
"StatusDescription":"Operation completed successfully"}}
6.6. Cryptographic
The Operate transaction is used to perform one or more cryptographic
operations using private key material recorded in the Threshold
Catalog. Such operations typically represent one part of a threshold
key operation divided between the service and a device connected to
an account.
As with all operations involving the Access catalog, the request MUST
meet the authentication criteria specified by the catalog entry.
These typically include the request being authenticated by a specific
key.Key Agreement
Hallam-Baker Expires 30 December 2023 [Page 44]
Internet-Draft Mesh Protocol Reference June 2023
CryptographicOperationKeyAgreement is used to request a threshold key
agreement operation on a specified public key.
Alice added Bob to groupw@example.com as a member. This resulted in
Bob receiving the invitation described in section ??? and the
following access entry being added to the Access catalog of the group
account:
{
"CatalogedAccess":{
"Capability":{
"CapabilityDecryptServiced":{
"GranteeUdf":"bob@example.com",
"EnvelopedKeyShare":[{
"enc":"A256CBC",
"kid":"EBQM-SDBL-2FII-4ZEO-XDZK-3ZMX-IGPU",
"Salt":"o5MMIhLjNAF69Olax4CPaw",
"recipients":[{
"kid":"MBJA-SIGD-FUNB-PAR7-EBPB-WAPG-HHDF",
"epk":{
"PublicKeyECDH":{
"crv":"X448",
"Public":"V_Q7ZRiaZHf_aFJiMZRIqxclvTbV-K8nJy0
C8Hv8eC8bTSZ4mxj9yoCq9rGWS3iZJpnwVGhRW7AA"}},
"wmk":"gbw5UOsFlyZgKYLkp_F-N9S-UQwYxi7tARS4UpDgSa
tznboopHoz4g"}
],
"ContentMetaData":"ewogICJNZXNzYWdlVHlwZSI6ICJLZXlEYX
RhIiwKICAiY3R5IjogImFwcGxpY2F0aW9uL21tbS9vYmplY3QiLAogICJDcmVhdGV
kIjogIjIwMjMtMDYtMjhUMTc6MDA6NDRaIn0"},
"Vq_0YOMoVHrh_12ZfRAh6IEucnE940F8yrBwaDJ3pgbIb_Lg-ZuBr3
taOfL1Y3EqG6uAo3SNOpyLwLpAuQlKoyj3ARlD6dKqOLweJ08p-ntNePRseexnltL
H-ZzmD435w8xUq0a0u-8exOhiTM8Ews1_ger8Ca-J7PILCoXBMqaFKnY0gYNqoDps
3L-DobgCXKahFUvS_m2QMjrZYgb0MJsytbhD6KIQbsUvbKvv-m7O84oV0ZWkuR2kN
0dvN3PRjfEkMtXdCqticFaji-h9W58qH4EttDtuKgwimIRI990kBulZXerH1M_PZ4
ey1VaBS7vR4c6AE5IkorL0ZWm-SZKBX6oiXTU4jPmfuerThRPZIGSbbrIaCVMtxdU
RufhOrrXq8oSTwSbT-htVlW_5tkiOyhX_xkSDDiouTuOJ9U4gld47Ovs04KOSDCfH
EXc-DlGK7GO_D9HAxPsHcIA8ICRheJyGhieyrOmImca3Mb9ukKX-Tt9JzrKOnap1J
4pVwANgVrhinmji8l5O1DHtoECxtSz-UDObszOTZWQlmXgdXwRpFEaIBrdMDuxTVK
d_vyypUv1Grty9nwV8IWYp9rKdDYK4lVfmTzR0fPhgHVYgBKDlrUuz8ncszmoSu9B
xQ6GcuUlQSxWmykgnfwGvdB2NXmH-PXfmvtfGW08BkTzVD3ShoJY10VcKnnPhXgI2
QxZ9oQtggCVzNnWk10Caqw"
],
"Id":"MAOA-XEIS-6KM2-334Y-7M3P-S4U3-LCQP",
"Active":true}}}}
The private key (in this case a key share) is encrypted under the
service key.
Hallam-Baker Expires 30 December 2023 [Page 45]
Internet-Draft Mesh Protocol Reference June 2023
To make use of the access entry, a request is made that specifies the
key share to be operated on and the public key parameters to perform
the agreement with.
The request payload:
{
"OperateRequest":{
"AccountAddress":"groupw@example.com",
"Operations":[{
"CryptographicOperationKeyAgreement":{
"PublicKey":{
"PublicKeyECDH":{
"crv":"X448",
"Public":"6mY-euLujNnyO12hdczFv4vckjk1FGrQwXZeye329
U2FtV7i3PLLbxIwOvkfEJOtp7zUtXdc5DMA"}},
"KeyId":"MAOA-XEIS-6KM2-334Y-7M3P-S4U3-LCQP"}}
]}}
The service checks to see if the request is authorized and if so,
performs the operation and returns the result:
{
"OperateResponse":{
"Results":[{
"CryptographicResultKeyAgreement":{
"KeyAgreement":{
"KeyAgreementECDH":{
"Curve":"X448",
"Result":"ODcTzgThPhguBD0DIbx6IwIuHRml4ZD7XI6x4NeXt
WHlbKJvFJC6empaS2fTxmxCoFMCH9vDLOmA"}}}}
],
"Status":201,
"StatusDescription":"Operation completed successfully"}}
*Future*: Currently, the access catalog is encrypted under the
service encryption key. It would be better to encrypt the catalog
under an encryption key specified by the service during the process
of account binding. This would allow a service to assign a unique
encryption key to each account and limit access to that key to the
hosts servicing that specific account.
6.6.1. Generate Key Shares
Generation of threshold key shares is planned but not currently
supported.
Hallam-Baker Expires 30 December 2023 [Page 46]
Internet-Draft Mesh Protocol Reference June 2023
6.6.2. Threshold Sign
Threshold signature is planned but not currently supported.
6.7. Messaging
Mesh Messaging is an asynchronous messaging service that allows
exchange of information between devices connected to a Mesh account
and between Mesh users.
To enable effective abuse mitigation, Mesh Messaging enforces a four-
corner communication model in which all outbound and inbound messages
pass through a Mesh Service which accredits and authorizes the
messages on the user's behalf.
(Artwork only available as svg: No external link available, see
draft-hallambaker-mesh-protocol-15.html for artwork.)
Figure 2: The Mesh Four Corner Messaging Model
The Post transaction is only used to exchange messages between
services. The client sends and receives messages through
interactions with the outbound and inbound spools of the account.
6.7.1. Sender.
To send a message, the client creates the Mesh Message structure,
encapsulates it in a DARE Message and appends the message to the
Outbound spool of the account using the Transact operation..
The DARE Message MUST be signed under the account signature key.
The Mesh Service receiving the message from the user's device MAY
attempt immediate retransmission or queue it to be sent at a future
time. Mesh Services SHOULD forward messages without undue delay.
6.7.2. Outbound Service
The Post transaction forwarding the message to the destination
service carries the same payload as the original request but is
authenticated by the service forwarding it. This authentication MAY
be my means of either profile or ticket authentication.
>>>> Unfinished ProtocolPostServiceService
[Not Yet Implemented]
Hallam-Baker Expires 30 December 2023 [Page 47]
Internet-Draft Mesh Protocol Reference June 2023
After the message has been sent, the service updates the message
status on the outbound spool.
Services SHOULD implement Denial of Service mitigation strategies
including limiting the maximum time taken to complete a transaction
and refusing connections from clients that engage in patterns of
behavior consistent with abuse.
The limitation in message size allows Mesh Services to aggressively
time out connections that take too long to complete a transaction. A
Mesh Service that hosted on a 10Mb/s link should be able to transfer
20 messages a second. If the service is taking more than 5 seconds
to complete a transaction, either the source or the destination
service is overloaded or the message itself is an attack.
Imposing hard constraints on Mesh Service performance requires
deployments to scale and apply resources appropriately. If a service
is attempting to transfer 100 messages simultaneously and 40% are
taking 4 seconds or more, this indicates that the number of
simultaneous transfers being attempted should be reduced.
Contrawise, if 90% are completed in less than a second, the number of
threads allocated to sending outbound messages might be increased.
6.7.3. Inbound Service
The inbound service MUST subject inbound messages to Access Control
according to the credentials presented in the DARE Message payload.
After verifying the signature and checking that the key is properly
accredited in accordance with site policy, the service applies
authorization controls taking account of:
* The accreditation of the sender
* The accreditation of the transmitting Service
* The type of Mesh Message being sent
* User policy as specified in their Contact Catalog
* Site policy.
6.7.4. Recipient
Messages are received by synchronizing the outbound spool.
Hallam-Baker Expires 30 December 2023 [Page 48]
Internet-Draft Mesh Protocol Reference June 2023
7. Access Control
[This section to be expanded in future drafts]
Access control is effected through the usual division of
authentication and authorization.
Authentication of operation requests is performed by the RUD layer
[draft-hallambaker-mesh-rud] .
7.1. Direct authorization
Any request authenticated under the profile authentication key is
authorized to perform any account operation without restriction.
7.2. Access Catalog authentication
If the authentication key presented has a matching Access Catalog
entry, the device is authorized to perform operations as specified in
that entry.
8. Message Interactions
Message interactions are asynchronous interactions that occur between
devices connected to the same account or between accounts.
All messages are signed by the sender and encrypted under the
encryption key of the recipient if this is known to the sender.
8.1. Message PIN Interaction
The Message PIN Interaction is used to register and validate PIN
codes used to authenticate certain transactions. This interaction
allows a PIN code issued by one device to be consumed by another
allowing for greater convenience in managing devices or contact
exchange.
For example, Alice might delegate the PIN code issue privilege to her
mobile device without delegating the administration privilege to that
device. This would allow Alice to use her mobile device to initiate
the connection of a large number of devices to her Mesh as her house
is being built and approve them later using her administrative
device.
Use of the Message PIN interaction is optional. An application that
issues a PIN code to authenticate a message MAY store the PIN value
within the application without persisting it to external storage.
Hallam-Baker Expires 30 December 2023 [Page 49]
Internet-Draft Mesh Protocol Reference June 2023
Derivation of the SaltedPin, MessageId and Witness values from their
respective inputs is described in the Schema Reference
[draft-hallambaker-mesh-schema].
8.1.1. Registration
To register a PIN code to an Account, a device:
* Generates the PIN code value
* Calculates the SaltedPin value for the specified Action
* Calculates the PinId binding the specified SaltedPinto the
Account.
* Creates and signs MessagePin containing the SaltedPin, Action and
Account values with the MessageId value PinId.
* Appends the MessagePinvalue to the Administration Spool of the
Account.
Note that this construction provides limited protection against
forgery attacks by a party with access to the MessagePin. A party
with such access can use it to construct the witness value required
to authenticate a request.
PIN Code values consist of an opaque sequence of octets represented
as a UDF nonce value. Codes are presented in canonical UDF form,
i.e. Base32 encoding separated into groups of 4 characters. The PIN
value is converted to binary form for calculation of the SaltedPin,
thus ensuring that the canonical form of the PIN value is used.
8.1.2. Authentication
The PIN Code value is passed out of band to a user who will enter it
into a device to authenticate a request made to the issuer.
A request that MAY be validated by means of a PIN is a subclass of
MessagePinValidated and contains the following fields:
AuthenticatedData A DARE Envelope containing the data that is
authenticated.
ClientNonce A nonce value used to prevent certain replay attacks.
PinId Digest value binding the SaltedPinto the Account.
PinWitness Witness value calculated as KDF (Device.UDF +
Hallam-Baker Expires 30 December 2023 [Page 50]
Internet-Draft Mesh Protocol Reference June 2023
AccountAddress, ClientNonce)
The device uses the PIN code and Action identifier corresponding to
the desired request to calculate the SaltedPin value in the same
manner as during registration. This value is then used to calculate
the PinId and PinWitness values.
8.1.3. Validation
The PIN code is validated by performing the steps of:
* Calculating the SaltedPin value from the PIN code and Action
* Calculating PinId from SaltedPin and Account
* Retrieving a MessagePin from the Administration spool with the
MessageId PinId.
* Calculating the PinWitness value from SaltedPin, ClientNonce and
AuthenticatedData and checking this matches the value specified in
the message.
* Performing the requested action.
* Posting a Complete message to the Administration Spool of the
Account marking the PIN code as used.
This process can fail at multiple points resulting in different error
results:
PinInvalid No PIN code is specified, the Pin code indicates an
unsupported algorithm or the calculated PinWitness does not match
the one specified by the request.
PinUsed The PIN code has been used previously.
PinExpired The PIN code is no longer valid.
Note that in the case that an attempt is made to reuse a PIN, it is
not automatically the case that the first use of the PIN was the one
that was valid and only the second attempt was invalid.
Implementations SHOULD alert the user to the attempted re-use so that
this possibility can be considered and appropriate action taken.
8.1.4. Example
Alice connects a device using a QR code presented by her
administrative device.
Hallam-Baker Expires 30 December 2023 [Page 51]
Internet-Draft Mesh Protocol Reference June 2023
The administration device creates a PIN code and records it to the
Local spool. The message specifies the salted pin value used to
verify attempts to use the PIN, the action for which it is
authorized. Since this PIN has been issued to authorize a device
connection, the roles for which the device are authorized as well.
This allows the connection request to be accepted without asking for
further input from the user.
{
"MessagePin":{
"Account":"alice@example.com",
"Expires":"2023-06-29T17:00:45Z",
"Automatic":true,
"SaltedPin":"AA6H-GDQF-3QDF-B7MB-GBAO-RJ4O-ZTPI",
"Action":"Device",
"Roles":["threshold"
],
"MessageId":"AAGD-BQIW-ZKOT-UAIT-U4EJ-XSKW-AWMK"}}
8.2. Completion Interaction
Completion messages are dummy messages that are added to a Mesh Spool
to mark a change the status of messages previously posted. Any
message that is in the inbound spool and has not been erased or
redacted MAY be marked as read, unread or deleted. Any message in
the outbound spool MAY be marked as sent, received or deleted.
Services MAY erase or redact messages in accordance with local site
policy. Since messages are not removed from the spool on being
marked deleted, they may be undeleted by marking them as read or
unread. Marking a message deleted MAY make it more likely that the
message will be removed if the sequence is subsequently purged.
After using the PIN code to authenticate connection of a device in
the previous example, the corresponding MessagePin is marked as
having been used by appending a completion message to the Local
spool.
{
"MessageComplete":{
"References":[{
"MessageId":"AAGD-BQIW-ZKOT-UAIT-U4EJ-XSKW-AWMK",
"ResponseId":"MAQQ-DQZI-2WLP-3E5Y-IMGT-PLIE-MJ2S",
"Relationship":"Closed"}
],
"MessageId":"NDEO-PW6N-VT6V-ZLFQ-JIBW-VAU4-ROHO"}}
Hallam-Baker Expires 30 December 2023 [Page 52]
Internet-Draft Mesh Protocol Reference June 2023
The completion message is added to the spool in the same upload
transaction that adds the device to the device catalog. This ensures
that both operations occur or neither occurs.
8.3. Contact Exchange Interaction
The contact exchange interaction is used to support unilateral or
mutual exchange of contact information. Contact exchange has three
functions in the Mesh:
* To exchange public key information to allow encryption of messages
sent to and verification of signatures on messages sent from the
contact subject.
* To exchange contact information allowing use of other
communication protocols (e.g. telephone, SMS, xmpp, SMTP, OpenPGP,
S/MIME, etc).
* To request that the recipient grant privileges to accept certain
types of messages from the contact subject.
Registration of the subject's contact information in a registry
service eliminates the need for the first of these functions but not
the other two. To prevent abuse, every Mesh Message is subject to
access control and a Mesh service will only accept a message from a
sender if there is an entry in the Threshold Catalog of the account
that expressly permits delivery of messages of the specified type
that are authenticated by an authorized signature key.
The communication of unsolicited information afforded by the contact
exchange interaction is deliberately limited so that a majority of
users can accept contact exchange requests without prior
authorization. It is however likely that some users will receive a
considerable volume of requests forcing them to require contact
requests be authorized through some form of third party
accreditation.
8.3.1. Remote
The Remote Contact Exchange transaction consists of a sequence of
MessageContact messages sent from the initiator to the responder,
responder to the initiator, etc. While there is in principle no
limit on the number of messages exchanged, most exchanges will be
completed in three exchanges or less:
Initiator to Responder Contains Initiator contact data without
authentication context from the exchange.
Hallam-Baker Expires 30 December 2023 [Page 53]
Internet-Draft Mesh Protocol Reference June 2023
Responder to Initiator (optional) Contains Responder contact data
authenticated under a PIN challenge presented in the previous
message.
Initiator to Responder (optional) Contains Initiator contact data
authenticated under a PIN challenge presented in the previous
message.
Each message provides the recipient with additional information which
MAY motivate the recipient to provide additional contact information
to the sender.
{
"MessageContact":{
"Reply":true,
"Subject":"alice@example.com",
"PIN":"AAAZ-RZSW-ZMBI-A6R6-WTPY-INAA-OZLQ",
"AuthenticatedData":[{
"dig":"S512",
"ContentMetaData":"ewogICJNZXNzYWdlVHlwZSI6ICJDb250YWN0UG
Vyc29uIiwKICAiY3R5IjogImFwcGxpY2F0aW9uL21tbS9vYmplY3QiLAogICJDcmV
hdGVkIjogIjIwMjMtMDYtMjhUMTc6MDA6MjZaIn0"},
"ewogICJDb250YWN0UGVyc29uIjogewogICAgIkFuY2hvcnMiOiBbewogIC
AgICAgICJVZGYiOiAiTURDUi1BMlVFLVNLUUEtM0hCRi1ZRk82LVZRNkgtRTcyWCI
sCiAgICAgICAgIlZhbGlkYXRpb24iOiAiU2VsZiJ9XSwKICAgICJOZXR3b3JrQWRk
cmVzc2VzIjogW3sKICAgICAgICAiQWRkcmVzcyI6ICJib2JAZXhhbXBsZS5jb20iL
AogICAgICAgICJFbnZlbG9wZWRQcm9maWxlQWNjb3VudCI6IFt7CiAgICAgICAgIC
AgICJFbnZlbG9wZUlkIjogIk1EQ1ItQTJVRS1TS1FBLTNIQkYtWUZPNi1WUTZILUU
3MlgiLAogICAgICAgICAgICAiZGlnIjogIlM1MTIiLAogICAgICAgICAgICAiQ29u
dGVudE1ldGFEYXRhIjogImV3b2dJQ0pWYm1seGRXVkpaQ0k2SUNKTlJFTlNMVUV5V
lVVdFUwdFJRUzAKICB6U0VKR0xWbEdUell0VmxFMlNDMUZOekpZSWl3S0lDQWlUV1
Z6YzJGblpWUjVjR1VpT2lBaVVISnZabWxzWgogIFZWelpYSWlMQW9nSUNKamRIa2l
PaUFpWVhCd2JHbGpZWFJwYjI0dmJXMXRMMjlpYW1WamRDSXNDaUFnSWtOCiAgeVpX
RjBaV1FpT2lBaU1qQXlNeTB3TmkweU9GUXhOem93TURveU5sb2lmUSJ9LAogICAgI
CAgICAgImV3b2dJQ0pRY205bWFXeGxWWE5sY2lJNklIc0tJQ0FnSUNKRGIyMXRiMj
UKICBUYVdkdVlYUjFjbVVpT2lCN0NpQWdJQ0FnSUNKVlpHWWlPaUFpVFVKV1FpMVp
SVkZCTFVwUFIwc3RURnBRUgogIFMxUVMwZElMVUkzVEZndFRreFROaUlzQ2lBZ0lD
QWdJQ0pRZFdKc2FXTlFZWEpoYldWMFpYSnpJam9nZXdvCiAgZ0lDQWdJQ0FnSUNKU
WRXSnNhV05MWlhsRlEwUklJam9nZXdvZ0lDQWdJQ0FnSUNBZ0ltTnlkaUk2SUNKRl
oKICBEUTBPQ0lzQ2lBZ0lDQWdJQ0FnSUNBaVVIVmliR2xqSWpvZ0ltaG1VRWRxVEV
4SFVrTlhhMHRyVEVKVU5uQQogIDJPVVpoWW5kTldYbzNOMXBmUzAxQ2FUWXhObEpW
V0ZkWFIyNWxlWEJNWlVFS0lDQm9PRlZLWkROQk5HaDFRCiAgbGN0VVVFMWN6bGtMV
Fp5YzBFaWZYMTlMQW9nSUNBZ0lrRmpZMjkxYm5SQlpHUnlaWE56SWpvZ0ltSnZZa0
IKICBsZUdGdGNHeGxMbU52YlNJc0NpQWdJQ0FpVTJWeWRtbGpaVlZrWmlJNklDSk5
SRE5GTFVaT05sY3RNMGMwTgogIFMxWlVUUXpMVkZZV1ZJdFExVTBXQzFTUzBjMUlp
d0tJQ0FnSUNKRmMyTnliM2RGYm1OeWVYQjBhVzl1SWpvCiAgZ2V3b2dJQ0FnSUNBa
VZXUm1Jam9nSWsxRFYxTXRUVkEyVHkxYVdWQTJMVVpLVlRVdFFrTlFUUzFGVkVVME
wKICBVaExOalVpTEFvZ0lDQWdJQ0FpVUhWaWJHbGpVR0Z5WVcxbGRHVnljeUk2SUh
Hallam-Baker Expires 30 December 2023 [Page 54]
Internet-Draft Mesh Protocol Reference June 2023
zS0lDQWdJQ0FnSUNBaVVIVgogIGliR2xqUzJWNVJVTkVTQ0k2SUhzS0lDQWdJQ0Fn
SUNBZ0lDSmpjbllpT2lBaVdEUTBPQ0lzQ2lBZ0lDQWdJCiAgQ0FnSUNBaVVIVmliR
2xqSWpvZ0lrcGtjelpVYldod2VFdFdXVlZKTVVsaU5EbDZlVXhGVTBkMk9FY3RURW
gKICBhYldaRVl6UndZMnhYVldOWE9VMU9TbXN6T0ZRS0lDQjFhbWh3TUdsaU5UVjZ
aVGhmVmpjMVIwUkNiekIyVgogIFVFaWZYMTlMQW9nSUNBZ0lrRmtiV2x1YVhOMGNt
RjBiM0pUYVdkdVlYUjFjbVVpT2lCN0NpQWdJQ0FnSUNKCiAgVlpHWWlPaUFpVFVJe
VR5MVVXVXRFTFZkUVNUWXRSazgwUnkwMldFMUZMVXBKU0RNdFdVSkxOeUlzQ2lBZ0
kKICBDQWdJQ0pRZFdKc2FXTlFZWEpoYldWMFpYSnpJam9nZXdvZ0lDQWdJQ0FnSUN
KUWRXSnNhV05MWlhsRlEwUgogIElJam9nZXdvZ0lDQWdJQ0FnSUNBZ0ltTnlkaUk2
SUNKRlpEUTBPQ0lzQ2lBZ0lDQWdJQ0FnSUNBaVVIVmliCiAgR2xqSWpvZ0lscFJhV
FZxYUhVd05FcHdkRWQ0TkhsUlkwbDBPVTlVY1dzNE16ZEtWMmRIY1ZGUVRsWlhWVk
oKICBST1Y5V2VHY3RZM1pxWm5BS0lDQmFOamx5U1ZZMFJqQkZhekZJYm5rMFkzbHl
RVkpxUjBFaWZYMTlMQW9nSQogIENBZ0lrTnZiVzF2YmtWdVkzSjVjSFJwYjI0aU9p
QjdDaUFnSUNBZ0lDSlZaR1lpT2lBaVRVUkxSUzFETjAxCiAgRkxUSkNORmN0VlVsR
FR5MVdWalEzTFRKVFRVc3RTbG95V0NJc0NpQWdJQ0FnSUNKUWRXSnNhV05RWVhKaG
IKICBXVjBaWEp6SWpvZ2V3b2dJQ0FnSUNBZ0lDSlFkV0pzYVdOTFpYbEZRMFJJSWp
vZ2V3b2dJQ0FnSUNBZ0lDQQogIGdJbU55ZGlJNklDSllORFE0SWl3S0lDQWdJQ0Fn
SUNBZ0lDSlFkV0pzYVdNaU9pQWljVTV5YzJkaGNqWllZCiAgMXBPTVZoaVVXdFZkR
2hyTlhCVlYzSlZWM040TVdkRVUwSnNXQzFFUzFFMExUTkNRalJIVkZSbFpRb2dJRF
IKICBqZUc4NVYybGFUMlJwUldacGFqTkdYMlpvZDFKVFFTSjlmWDBzQ2lBZ0lDQWl
RMjl0Ylc5dVFYVjBhR1Z1ZAogIEdsallYUnBiMjRpT2lCN0NpQWdJQ0FnSUNKVlpH
WWlPaUFpVFVJMFFTMUNXVkpPTFZSWFJVZ3RORTFLTWkxCiAgQ00wMU1MVFl5VDBZd
FFrWlVNeUlzQ2lBZ0lDQWdJQ0pRZFdKc2FXTlFZWEpoYldWMFpYSnpJam9nZXdvZ0
kKICBDQWdJQ0FnSUNKUWRXSnNhV05MWlhsRlEwUklJam9nZXdvZ0lDQWdJQ0FnSUN
BZ0ltTnlkaUk2SUNKWU5EUQogIDRJaXdLSUNBZ0lDQWdJQ0FnSUNKUWRXSnNhV01p
T2lBaWVGUTVhbXgzVVMxSU5FTmZUWGh1YlZKYVVFbzBRCiAgekl4TVdwdlUyeGZhb
FF4VWxod1JIUlRYME5qTlRSVWRtUTBUSFZMVHdvZ0lFazRORVJZWW5oRFRFdEhOR0
UKICAyTmpSUFRHa3ljSGx6UVNKOWZYMHNDaUFnSUNBaVVISnZabWxzWlZOcFoyNWh
kSFZ5WlNJNklIc0tJQ0FnSQogIENBZ0lsVmtaaUk2SUNKTlJFTlNMVUV5VlVVdFUw
dFJRUzB6U0VKR0xWbEdUell0VmxFMlNDMUZOekpZSWl3CiAgS0lDQWdJQ0FnSWxCM
VlteHBZMUJoY21GdFpYUmxjbk1pT2lCN0NpQWdJQ0FnSUNBZ0lsQjFZbXhwWTB0bG
UKICBVVkRSRWdpT2lCN0NpQWdJQ0FnSUNBZ0lDQWlZM0oySWpvZ0lrVmtORFE0SWl
3S0lDQWdJQ0FnSUNBZ0lDSgogIFFkV0pzYVdNaU9pQWlZa2RyVEMxUFpFNXBhMVV6
TlRJdGIwbG1iV0ZYVWtsdmEzRlJhalE0WVZVeU5FMVZiCiAgRzh4WjNsWUxXRXpkV
FF5YkZaRmJRb2dJR1Z3TVc0eVdsQm1SWG93TVZOTFIwUlJkMGQ2WkZKWFFTSjlmWD
EKICA5ZlEiLAogICAgICAgICAgewogICAgICAgICAgICAic2lnbmF0dXJlcyI6IFt
7CiAgICAgICAgICAgICAgICAiYWxnIjogIlM1MTIiLAogICAgICAgICAgICAgICAg
ImtpZCI6ICJNRENSLUEyVUUtU0tRQS0zSEJGLVlGTzYtVlE2SC1FNzJYIiwKICAgI
CAgICAgICAgICAgICJzaWduYXR1cmUiOiAiTXc2M3k1NmF6SmxKdWJZV2RLS3Vxdn
c1S0VkQUdkX1JCU2llRkw4SlgyZ1lBdWl4agogIGdwWmI0RVZ1VWRqY29rVFh2c2R
mb0Q0QkNZQXZYQ3hkYjNmUERxUWpVN2dRTjFYR2VCdXRzRmlIWW0tTlhTCiAgbE9H
ZEkwLVFSYlhuX1ZkR0g1M1g5OG5KRVM4OG1sOFRncGlMS3dnd0EifV0sCiAgICAgI
CAgICAgICJQYXlsb2FkRGlnZXN0IjogInJBbExNR2hvZExOZ3ZxSnI4ZjZmeUNXRz
lkZVpxcDRPckVLMDdCVzNQWTd3VwogIE9Gb05EN09hQ0xPVENidFNqcUhyQ245cmc
yWG9HWEZjRGVHMzNpRkRRIn1dLAogICAgICAgICJQcm90b2NvbHMiOiBbewogICAg
ICAgICAgICAiUHJvdG9jb2wiOiAibW1tIn1dfV19fQ",
{
"signatures":[{
Hallam-Baker Expires 30 December 2023 [Page 55]
Internet-Draft Mesh Protocol Reference June 2023
"alg":"S512",
"kid":"MBVB-YEQA-JOGK-LZPE-PKGH-B7LX-NLS6",
"signature":"z1ReikE82PgJmCqtZQVd-VIMRSlCXkXNcbDa_j3-
xgmf0GkpkPFt5d1RMhZ_9WmIm_m5RXqxsH-A_ik3lsJtZBjOZQ1sMirmnbWhNBivg
bjZfaOmKXYqfyF5jewLnvmpWd7ABocKR0KZay_RQquFGRwA"}
],
"PayloadDigest":"1vGosK3Xgx_S2PxOQbgyNPo25VTael1tW_cVtLuU
csywws3Y_dzMatRSyaN1xBaUvP_4SUc5AhPyMip6ERk7eg"}
],
"MessageId":"NAQL-6SJP-VLQD-7BNN-EB6L-DLQQ-K2ZE",
"Sender":"bob@example.com",
"Recipient":"alice@example.com"}}
The Mesh Contact Exchange transaction does not provide for validation
of the contact information beyond the binding to the Mesh Account
Address used to perform the exchange.
8.3.2. PIN
Contact exchange requests MAY be authenticated by a PIN code.
Initial contact exchange requests SHOULD include a PIN code value
that can be used to authenticate a response (if given). PIN codes
MAY also be exchanged out of band.
A MessageContact authenticated by means of a PIN code is
authenticated as described in the PIN Interaction section above.
8.3.3. EARL
A MessageContact message MAY be published as an EARL. This allows
contact data to be presented to the recipient on a printed document
such as a business card in machine readable format such as a QR code.
8.4. Group Invitation
The GroupInvitation interaction is used to invite a recipient to join
a Mesh Group. The interaction is essentially a form of contact
exchange except that a sender SHOULD NOT send group invitations
unless there is an existing relationship. Thus the 'first trust'
issues intrinsic to the contact exchange interaction do not apply.
The message specifies the group name and the contact entry for the
group. The contact entry includes the CapabilityDecryptServiced used
to decrypt messages sent to the group when combined with information
provided by the threshold service for the group.
Receipt of a GroupInvitation message does not require a response.
Hallam-Baker Expires 30 December 2023 [Page 56]
Internet-Draft Mesh Protocol Reference June 2023
>>>> Unfinished ProtocolGroupInvite
Missing example 14
8.5. Confirmation Interaction
The confirmation interaction consists of a RequestConfirmation
message from the initiator followed by a ResponseConfirmation from
the responder.
The RequestConfirmation message specifies the action that is
requested.
The ResponseConfirmation message contains the enveloped
RequestConfirmation message signed by the initiator and the
disposition of the responder, Accept = true if the request is
accepted and Accept = false otherwise.
The service sends out the following request:
{
"RequestConfirmation":{
"Text":"start",
"MessageId":"NDTU-IIPR-L5SK-L6CZ-JJGF-XA6L-565H",
"Sender":"console@example.com",
"Recipient":"alice@example.com"}}
Alice accepts the request and returns the following response:
Hallam-Baker Expires 30 December 2023 [Page 57]
Internet-Draft Mesh Protocol Reference June 2023
{
"ResponseConfirmation":{
"Request":[{
"EnvelopeId":"MBRF-HV6Z-UAXU-IUP5-4B6A-XIRE-UHGZ",
"dig":"S512",
"ContentMetaData":"ewogICJVbmlxdWVJZCI6ICJORFRVLUlJUFItTD
VTSy1MNkNaLUpKR0YtWEE2TC01NjVIIiwKICAiTWVzc2FnZVR5cGUiOiAiUmVxdWV
zdENvbmZpcm1hdGlvbiIsCiAgImN0eSI6ICJhcHBsaWNhdGlvbi9tbW0vb2JqZWN0
IiwKICAiQ3JlYXRlZCI6ICIyMDIzLTA2LTI4VDE3OjAwOjM0WiJ9",
"SequenceInfo":{
"Index":7,
"TreePosition":6224},
"Received":"2023-06-28T17:00:34Z",
"signatures":[{
"alg":"S512",
"kid":"MC3L-5Y6X-X2WA-6OAI-S56F-HNEV-R32R",
"signature":"351CsK0q7VJWGm-1YuvzzxWRCTVOCqedM6F9CQ9j
kCflfv1lJz43P6xg-xB1OQRdc6e92zgfv3-ApGteIPtv5vylpKo6EgzXGmpMZC3zA
hymQesHMqsfGW-QyVk7460UhBq3sdLg1QCX01_Q_TgHUzIA"}
],
"PayloadDigest":"hrg74rSm8V5zkdPOkn16W30g9lP4zANIh1OhtHp_
XDwTGLtrDyDbp2_6Y3HMVylrGXB29fxxf0kppinWTsOHjg"},
"",
{}
],
"Accept":true,
"MessageId":"MB7S-ZUPK-XJ6Q-N42Y-4UTW-7CQI-33HL",
"Sender":"alice@example.com",
"Recipient":"console@example.com"}}
9. Device Connection Interactions
Connection of a device to a Mesh Account combines synchronous and
asynchronous elements and therefore uses a combination of Mesh
Service Protocol and Mesh Messaging interactions.
Four connection interactions are currently defined support connection
of devices with different affordances:
Witness Authenticated For connecting devices that provide data entry
and display affordances and are connected to a network. The
account the device is to be connected to is entered into the
device which displays a witness code. This code is then compared
with a code displayed on the administration device to authenticate
the request, after which both devices can complete the
interaction.
PIN Authenticated A variation of the Witness Authenticated
Hallam-Baker Expires 30 December 2023 [Page 58]
Internet-Draft Mesh Protocol Reference June 2023
interaction in which the connection process is initiated by
creating a PIN value which is communicated to the device by some
out of band means and used to authenticate the connection request.
Dynamic QR Code (PIN) Authenticated For connecting devices that
provide a camera affordance. The user sets the administration
device into 'add device' mode, causing a QR code to be displayed.
The QR code is scanned by the device being connected after which
both devices can complete the interaction. Implementation of this
mechanism is identical to the PIN authenticated scheme except that
the PIN code is presented to the connecting device by means of a
QR code.
Preconfigured (Static QR Code Authenticated) For connecting devices
that have been preconfigured with a device profile identified by
means of a QR Code containing an EARL. The QR code is scanned by
the administration device after which both devices can complete
the interaction.
Each of these interactions provide strong mutual authentication with
minimal user effort.
The witness authenticated connection interaction is intended for use
in cases in which the device is already connected to a network. The
QR code interactions are intended to provide support for acquisition
of networking capabilities as part of the connection process. These
functions are not currently specified. The Static QR Code
Authenticated interaction is intended to support Internet of Things
(IoT) devices which provide minimal interaction affordances.
In each case, the objectives of the device connection interaction are
the same:
* Mutually authenticate the onboarding device and the Mesh such that
the connection interaction only completes if both sides acquire
the authentic profile of the other.
* To provision the onboarding device with the Mesh ProfileAccount,
and an ActivationDevice and ConnectionDevice record allowing the
device to interact as a member of the Mesh with the set of rights
specified by the user.
* To create a CataloguedDevice record and append it to the Device
catalog of the account to allow the device to be managed within
that account.
* (optional) to acquire networking capabilities to allow the above
to be completed.
Hallam-Baker Expires 30 December 2023 [Page 59]
Internet-Draft Mesh Protocol Reference June 2023
The connection of the device to the Mesh Account is achieved through
the creation of the ActivationDevice, ConnectionDevice and
CataloguedDevice records described in
[draft-hallambaker-mesh-schema]. These are created by the
administration device in the third phase of each of the connection
interactions described below and acquired by the onboarding device in
the fourth phase.
9.1. Witness/PIN Authenticated
The witness authenticated, PIN authenticated, and Dynamic QR code
interactions all follow a common interaction pattern.
The Dynamic QR Code (PIN) Authenticated interaction comprises four
phases as follows:
Phase 1: Issue of PIN credential (PIN and Dynamic QR code only) A
PIN code is created and registered with the PIN Registration
interaction described earlier and transmitted to the user by an
out of band communication. In the case of the Dynamic QR code
interaction, this is a QR code that is scanned by the connecting
device.
Phase 2: Onboarding Device Request to Service The onboarding device
creates a RequestConnect message. In the PIN authenticated and
Dynamic QR Code interactions, the RequestConnect is authenticated
by the Device Authentication key and the PIN issued earlier. In
the Witness Authenticated interaction, it is authenticated by the
Device Authentication key alone.
The onboarding device presents the RequestConnect message to the
service by means of a Connect operation to the service servicing
the account. This results in the exchange of the account and
device profiles and the computation of a witness value from the
two profile fingerprints and two nonce values specified by the
onboarding device and the service. An AcknowledgeConnection
message is posted to the Inbound spool of the account and returned
to the connecting device.
Phase 3: Administration Device Acceptance The account holder
authenticates RequestConnect message and uses an administrative
device to accept or reject the connection request.
If the RequestConnect message has been authenticated by a PIN
code, the connection request can be accepted automatically without
additional user interaction.
Phase 4: Onboarding Device Completion The onboarding device
Hallam-Baker Expires 30 December 2023 [Page 60]
Internet-Draft Mesh Protocol Reference June 2023
periodically polls the service for acceptance of the request by
the administration device using the Complete transaction.
The use of the PIN code to authenticate the request message is shown
in $$$$.
The PIN code MAY be presented to the onboarding device in any format
accepted by the device. Administration MAY support presentation of
the account address PIN code as a URI code. Administration devices
SHOULD support presentation of the account address PIN code as a QR
code containing the corresponding URI.
9.1.1. Phase 1:
Alice> meshman account pin /threshold
PIN=AAKI-IIAD-GQ3H-JUY3-SXZN-PENW-PQ
(Expires=2023-06-29T17:00:45Z)
The registration of this PIN value was shown earlier in section $$$
The URI containing the account address and PIN is:
mcu://alice@example.com/AAKI-IIAD-GQ3H-JUY3-SXZN-PENW-PQ
9.1.2. Phase 2:
The onboarding device scans the QR code to obtain the account address
and PIN code. The PIN code is used to authenticate a connection
request:
Alice3> meshman device request alice@example.com /pin ^
AAKI-IIAD-GQ3H-JUY3-SXZN-PENW-PQ
Device UDF = MBXV-SIBF-4XEW-4EVE-7URW-F6VT-NTX3
Witness value = GSJR-OHU5-HHXO-KURY-ST4B-HVBA-7PV5
The device generates a RequestConnect message as follows:
{
"RequestConnection":{
"AccountAddress":"alice@example.com",
"AuthenticatedData":[{
"EnvelopeId":"MBXV-SIBF-4XEW-4EVE-7URW-F6VT-NTX3",
"dig":"S512",
"ContentMetaData":"ewogICJVbmlxdWVJZCI6ICJNQlhWLVNJQkYtNF
hFVy00RVZFLTdVUlctRjZWVC1OVFgzIiwKICAiTWVzc2FnZVR5cGUiOiAiUHJvZml
sZURldmljZSIsCiAgImN0eSI6ICJhcHBsaWNhdGlvbi9tbW0vb2JqZWN0IiwKICAi
Q3JlYXRlZCI6ICIyMDIzLTA2LTI4VDE3OjAwOjQ1WiJ9"},
"ewogICJQcm9maWxlRGV2aWNlIjogewogICAgIkVuY3J5cHRpb24iOiB7Ci
Hallam-Baker Expires 30 December 2023 [Page 61]
Internet-Draft Mesh Protocol Reference June 2023
AgICAgICJVZGYiOiAiTUJYVS03QUo1LUpQS08tR0pXTi1LREVBLVhHR1ItQ0ZJWSI
sCiAgICAgICJQdWJsaWNQYXJhbWV0ZXJzIjogewogICAgICAgICJQdWJsaWNLZXlF
Q0RIIjogewogICAgICAgICAgImNydiI6ICJYNDQ4IiwKICAgICAgICAgICJQdWJsa
WMiOiAiVjFNaHZFWlhzMlk5bzMtd1hWMm1kT3AycVkyMGxWZ21NQzVyRTgxRTNDRW
hDU1pSX0h0eQogIDZLN1RMLXcxd3EtY1h1Y09uZUY2MURrQSJ9fX0sCiAgICAiU2l
nbmF0dXJlIjogewogICAgICAiVWRmIjogIk1DNlItU0ZEQS1PWVRKLUdLNkstRklW
Ti1PTjVHLUkzUEUiLAogICAgICAiUHVibGljUGFyYW1ldGVycyI6IHsKICAgICAgI
CAiUHVibGljS2V5RUNESCI6IHsKICAgICAgICAgICJjcnYiOiAiRWQ0NDgiLAogIC
AgICAgICAgIlB1YmxpYyI6ICJNNUUtek1GaDRVOTBlaEtVc2JkMmlDWVprUGdFUnF
lTk8wUm40UlRMZXpsWS1fRWNjVGxFCiAgNUNpbzNycnJrU2xYc2pybmV6Z25HSllB
In19fSwKICAgICJBdXRoZW50aWNhdGlvbiI6IHsKICAgICAgIlVkZiI6ICJNQ0xLL
VpUTFQtUkFDNi1OTkpFLTUzSUQtVjQySC1KU0lBIiwKICAgICAgIlB1YmxpY1Bhcm
FtZXRlcnMiOiB7CiAgICAgICAgIlB1YmxpY0tleUVDREgiOiB7CiAgICAgICAgICA
iY3J2IjogIlg0NDgiLAogICAgICAgICAgIlB1YmxpYyI6ICJDb1VqdENFVEdLWGpP
d2htRkw0UU9zZlVBNEpZeXI0RFpBTXowV0R1bEU2aGJXMVF2N3dBCiAgR0FYVFBwN
0s0dG9VZ0YwSGVuT3BZWTZBIn19fSwKICAgICJQcm9maWxlU2lnbmF0dXJlIjogew
ogICAgICAiVWRmIjogIk1CWFYtU0lCRi00WEVXLTRFVkUtN1VSVy1GNlZULU5UWDM
iLAogICAgICAiUHVibGljUGFyYW1ldGVycyI6IHsKICAgICAgICAiUHVibGljS2V5
RUNESCI6IHsKICAgICAgICAgICJjcnYiOiAiRWQ0NDgiLAogICAgICAgICAgIlB1Y
mxpYyI6ICJiRVpmVTdLRENRRnFhQjN3Mll0SWItX3M5elNhUTBOXy1FQ1dselcyaW
0xZkJLcTBvY1hSCiAgSGtHOFJGOWd6Q29pZzd1TExKYUsyVUVBIn19fX19",
{
"signatures":[{
"alg":"S512",
"kid":"MBXV-SIBF-4XEW-4EVE-7URW-F6VT-NTX3",
"signature":"VQYBbRl6xm-Tzo-uGkOd53RKQrn1KE6so5IEhmwB
OQg49uJtfjaJYZTxC1OfQ3z1u2COGayDIRAAvFkA4vO7JFpk6IOQ1tRbwHau-QZr0
0ey9zzjj8cWnjanozfSXM1b7T08DL7UGO4dDqGaGqF5DxgA"}
],
"PayloadDigest":"bGq-cj9J7OHsfvhk0hXsOwtP6C6lYOl0Qf8ZfetK
7FBbMJYQY5woLCFoXXm91Rg6cQgOIuS-WWncODSrTlrOUg"}
],
"ClientNonce":"T6yDJkuH59dB0w2WPLp2vA",
"PinId":"AAGD-BQIW-ZKOT-UAIT-U4EJ-XSKW-AWMK",
"PinWitness":"OgylccDOqR9SRRoG7QqYAQoyp7gjc8Em50QPqdjs17bq7pS
9Omy66EY3wicHryKNq6dRkmjpkRNYMxfADriyJg",
"MessageId":"NCO5-AV7A-DZYY-A5JD-GGWI-KH3Y-OJND"}}
The service receives the conenct request and authenticates the
message under the device key. The service cannot authenticate the
message under the PIN code because that is not know to the service as
the service cannot decrypt the local spool.
Having authenticated the connect request, the service generates a
random nonce value. The random nonce together with the device and
account profiles are used to calculate the witness value.
The AcknowledgeConnection message is created by the service:
Hallam-Baker Expires 30 December 2023 [Page 62]
Internet-Draft Mesh Protocol Reference June 2023
{
"AcknowledgeConnection":{
"EnvelopedRequestConnection":[{
"EnvelopeId":"MBDW-KFHR-OR66-U6CR-CCEV-N4DD-MXXQ",
"ContentMetaData":"ewogICJVbmlxdWVJZCI6ICJOQ081LUFWN0EtRF
pZWS1BNUpELUdHV0ktS0gzWS1PSk5EIiwKICAiTWVzc2FnZVR5cGUiOiAiUmVxdWV
zdENvbm5lY3Rpb24iLAogICJjdHkiOiAiYXBwbGljYXRpb24vbW1tL29iamVjdCIs
CiAgIkNyZWF0ZWQiOiAiMjAyMy0wNi0yOFQxNzowMDo0NVoifQ"},
"ewogICJSZXF1ZXN0Q29ubmVjdGlvbiI6IHsKICAgICJBY2NvdW50QWRkcm
VzcyI6ICJhbGljZUBleGFtcGxlLmNvbSIsCiAgICAiQXV0aGVudGljYXRlZERhdGE
iOiBbewogICAgICAgICJFbnZlbG9wZUlkIjogIk1CWFYtU0lCRi00WEVXLTRFVkUt
N1VSVy1GNlZULU5UWDMiLAogICAgICAgICJkaWciOiAiUzUxMiIsCiAgICAgICAgI
kNvbnRlbnRNZXRhRGF0YSI6ICJld29nSUNKVmJtbHhkV1ZKWkNJNklDSk5RbGhXTF
ZOSlFrWXRORmhGVnkwCiAgMFJWWkZMVGRWVWxjdFJqWldWQzFPVkZneklpd0tJQ0F
pVFdWemMyRm5aVlI1Y0dVaU9pQWlVSEp2Wm1sc1oKICBVUmxkbWxqWlNJc0NpQWdJ
bU4wZVNJNklDSmhjSEJzYVdOaGRHbHZiaTl0YlcwdmIySnFaV04wSWl3S0lDQQogI
GlRM0psWVhSbFpDSTZJQ0l5TURJekxUQTJMVEk0VkRFM09qQXdPalExV2lKOSJ9LA
ogICAgICAiZXdvZ0lDSlFjbTltYVd4bFJHVjJhV05sSWpvZ2V3b2dJQ0FnSWtWdVk
zSgogIDVjSFJwYjI0aU9pQjdDaUFnSUNBZ0lDSlZaR1lpT2lBaVRVSllWUzAzUVVv
MUxVcFFTMDh0UjBwWFRpMUxSCiAgRVZCTFZoSFIxSXRRMFpKV1NJc0NpQWdJQ0FnS
UNKUWRXSnNhV05RWVhKaGJXVjBaWEp6SWpvZ2V3b2dJQ0EKICBnSUNBZ0lDSlFkV0
pzYVdOTFpYbEZRMFJJSWpvZ2V3b2dJQ0FnSUNBZ0lDQWdJbU55ZGlJNklDSllORFE
0SQogIGl3S0lDQWdJQ0FnSUNBZ0lDSlFkV0pzYVdNaU9pQWlWakZOYUhaRldsaHpN
bGs1YnpNdGQxaFdNbTFrVDNBCiAgeWNWa3lNR3hXWjIxTlF6VnlSVGd4UlRORFJXa
ERVMXBTWDBoMGVRb2dJRFpMTjFSTUxYY3hkM0V0WTFoMVkKICAwOXVaVVkyTVVScl
FTSjlmWDBzQ2lBZ0lDQWlVMmxuYm1GMGRYSmxJam9nZXdvZ0lDQWdJQ0FpVldSbUl
qbwogIGdJazFETmxJdFUwWkVRUzFQV1ZSS0xVZExOa3N0UmtsV1RpMVBUalZITFVr
elVFVWlMQW9nSUNBZ0lDQWlVCiAgSFZpYkdsalVHRnlZVzFsZEdWeWN5STZJSHNLS
UNBZ0lDQWdJQ0FpVUhWaWJHbGpTMlY1UlVORVNDSTZJSHMKICBLSUNBZ0lDQWdJQ0
FnSUNKamNuWWlPaUFpUldRME5EZ2lMQW9nSUNBZ0lDQWdJQ0FnSWxCMVlteHBZeUk
2SQogIENKTk5VVXRlazFHYURSVk9UQmxhRXRWYzJKa01tbERXVnByVUdkRlVuRmxU
azh3VW00MFVsUk1aWHBzV1MxCiAgZlJXTmpWR3hGQ2lBZ05VTnBiek55Y25KclUye
FljMnB5Ym1WNloyNUhTbGxCSW4xOWZTd0tJQ0FnSUNKQmQKICBYUm9aVzUwYVdOaG
RHbHZiaUk2SUhzS0lDQWdJQ0FnSWxWa1ppSTZJQ0pOUTB4TExWcFVURlF0VWtGRE5
pMQogIE9Ua3BGTFRVelNVUXRWalF5U0MxS1UwbEJJaXdLSUNBZ0lDQWdJbEIxWW14
cFkxQmhjbUZ0WlhSbGNuTWlPCiAgaUI3Q2lBZ0lDQWdJQ0FnSWxCMVlteHBZMHRsZ
VVWRFJFZ2lPaUI3Q2lBZ0lDQWdJQ0FnSUNBaVkzSjJJam8KICBnSWxnME5EZ2lMQW
9nSUNBZ0lDQWdJQ0FnSWxCMVlteHBZeUk2SUNKRGIxVnFkRU5GVkVkTFdHcFBkMmh
0UgogIGt3MFVVOXpabFZCTkVwWmVYSTBSRnBCVFhvd1YwUjFiRVUyYUdKWE1WRjJO
M2RCQ2lBZ1IwRllWRkJ3TjBzCiAgMGRHOVZaMFl3U0dWdVQzQlpXVFpCSW4xOWZTd
0tJQ0FnSUNKUWNtOW1hV3hsVTJsbmJtRjBkWEpsSWpvZ2UKICB3b2dJQ0FnSUNBaV
ZXUm1Jam9nSWsxQ1dGWXRVMGxDUmkwMFdFVlhMVFJGVmtVdE4xVlNWeTFHTmxaVUx
VNQogIFVXRE1pTEFvZ0lDQWdJQ0FpVUhWaWJHbGpVR0Z5WVcxbGRHVnljeUk2SUhz
S0lDQWdJQ0FnSUNBaVVIVmliCiAgR2xqUzJWNVJVTkVTQ0k2SUhzS0lDQWdJQ0FnS
UNBZ0lDSmpjbllpT2lBaVJXUTBORGdpTEFvZ0lDQWdJQ0EKICBnSUNBZ0lsQjFZbX
hwWXlJNklDSmlSVnBtVlRkTFJFTlJSbkZoUWpOM01sbDBTV0l0WDNNNWVsTmhVVEJ
PWAogIHkxRlExZHNlbGN5YVcweFprSkxjVEJ2WTFoU0NpQWdTR3RIT0ZKR09XZDZR
MjlwWnpkMVRFeEtZVXN5VlVWCiAgQkluMTlmWDE5IiwKICAgICAgewogICAgICAgI
Hallam-Baker Expires 30 December 2023 [Page 63]
Internet-Draft Mesh Protocol Reference June 2023
CJzaWduYXR1cmVzIjogW3sKICAgICAgICAgICAgImFsZyI6ICJTNTEyIiwKICAgIC
AgICAgICAgImtpZCI6ICJNQlhWLVNJQkYtNFhFVy00RVZFLTdVUlctRjZWVC1OVFg
zIiwKICAgICAgICAgICAgInNpZ25hdHVyZSI6ICJWUVlCYlJsNnhtLVR6by11R2tP
ZDUzUktRcm4xS0U2c281SUVobXdCT1FnNDl1SnRmCiAgamFKWVpUeEMxT2ZRM3oxd
TJDT0dheURJUkFBdkZrQTR2TzdKRnBrNklPUTF0UmJ3SGF1LVFacjAwZXk5enoKIC
BqajhjV25qYW5vemZTWE0xYjdUMDhETDdVR080ZERxR2FHcUY1RHhnQSJ9XSwKICA
gICAgICAiUGF5bG9hZERpZ2VzdCI6ICJiR3EtY2o5SjdPSHNmdmhrMGhYc093dFA2
QzZsWU9sMFFmOFpmZXRLN0ZCYk0KICBKWVFZNXdvTENGb1hYbTkxUmc2Y1FnT0l1U
y1XV25jT0RTclRsck9VZyJ9XSwKICAgICJDbGllbnROb25jZSI6ICJUNnlESmt1SD
U5ZEIwdzJXUExwMnZBIiwKICAgICJQaW5JZCI6ICJBQUdELUJRSVctWktPVC1VQUl
ULVU0RUotWFNLVy1BV01LIiwKICAgICJQaW5XaXRuZXNzIjogIk9neWxjY0RPcVI5
U1JSb0c3UXFZQVFveXA3Z2pjOEVtNTBRUHFkanMxN2JxN3BTOQogIE9teTY2RVkzd
2ljSHJ5S05xNmRSa21qcGtSTllNeGZBRHJpeUpnIiwKICAgICJNZXNzYWdlSWQiOi
AiTkNPNS1BVjdBLURaWVktQTVKRC1HR1dJLUtIM1ktT0pORCJ9fQ"
],
"ServerNonce":"RwIahgJVCIL2S6si9w6JPA",
"Witness":"GSJR-OHU5-HHXO-KURY-ST4B-HVBA-7PV5",
"MessageId":"GSJR-OHU5-HHXO-KURY-ST4B-HVBA-7PV5"}}
The AcknowledgeConnection message is appended to the Inbound spool of
the account to which connection was requested so that the user can
approve the request. The ConnectResponse message is returned to the
device containing the AcknowledgeConnection message and the profile
of the account.
The device generates the witness value, verifies it against the value
provided by the server and presents it to the user as seen in the
console example above.
9.1.3. Phase 3:
The user synchronizes their pending messages:
Hallam-Baker Expires 30 December 2023 [Page 64]
Internet-Draft Mesh Protocol Reference June 2023
Alice> meshman message pending
MessageID: GSJR-OHU5-HHXO-KURY-ST4B-HVBA-7PV5
Connection Request::
MessageID: GSJR-OHU5-HHXO-KURY-ST4B-HVBA-7PV5
To: From:
Device: MBXV-SIBF-4XEW-4EVE-7URW-F6VT-NTX3
Witness: GSJR-OHU5-HHXO-KURY-ST4B-HVBA-7PV5
MessageID: NCUD-3ROZ-X7UK-MMRA-CTYI-YHOE-UJCM
MessageID: NDTU-IIPR-L5SK-L6CZ-JJGF-XA6L-565H
Confirmation Request::
MessageID: NDTU-IIPR-L5SK-L6CZ-JJGF-XA6L-565H
To: alice@example.com From: console@example.com
Text: start
MessageID: ND4Y-TGCW-2QO3-KIQM-N3AN-DMIO-2CFT
MessageID: NCVI-FDFU-ZYPN-5274-YBHY-V6WI-FTEJ
MessageID: NA7V-2XT2-2ZJO-IDUY-GK6W-CTVX-HDDM
Alice> meshman account sync /auto
The administration device determines that the device connection
request is authenticated by a PIN code. The PIN code is retrieved
and the message authenticated. This is shown in the PIN registration
interation example in section $$$ above.
Bug: This command is currently showing superflous pending messages
due to the failure to clear messages processed in earlier examples.
The Cataloged device record is created from the public key values
corresponding to the combination of the public keys in the device
profile and those defined by the activation.
This is returned to the onboarding device by wrapping it in a
RespondConnection message posted to the local spool of the account.
{
"RespondConnection":{
"Result":"Accept",
"CatalogedDevice":{
"DeviceUdf":"MBXV-SIBF-4XEW-4EVE-7URW-F6VT-NTX3",
"EnvelopedProfileUser":[{
"EnvelopeId":"MB3T-WIPZ-JRCW-QZFM-SCQL-OVVO-AHO2",
"dig":"S512",
"ContentMetaData":"ewogICJVbmlxdWVJZCI6ICJNQjNULVdJUFot
SlJDVy1RWkZNLVNDUUwtT1ZWTy1BSE8yIiwKICAiTWVzc2FnZVR5cGUiOiAiUHJvZ
mlsZVVzZXIiLAogICJjdHkiOiAiYXBwbGljYXRpb24vbW1tL29iamVjdCIsCiAgIk
NyZWF0ZWQiOiAiMjAyMy0wNi0yOFQxNzowMDoxNVoifQ"},
"ewogICJQcm9maWxlVXNlciI6IHsKICAgICJDb21tb25TaWduYXR1cmUi
OiB7CiAgICAgICJVZGYiOiAiTURFMi1NS01JLTc3M1AtR0ozRi1ZWUFJLVVWQ0stT
01LUyIsCiAgICAgICJQdWJsaWNQYXJhbWV0ZXJzIjogewogICAgICAgICJQdWJsaW
Hallam-Baker Expires 30 December 2023 [Page 65]
Internet-Draft Mesh Protocol Reference June 2023
NLZXlFQ0RIIjogewogICAgICAgICAgImNydiI6ICJFZDQ0OCIsCiAgICAgICAgICA
iUHVibGljIjogImpSOXVyUGJvc2xvU1J1NThsa0tHOU80TDVCTnpxYkVzM29xOEl6
d0xxVTJReUdSazhrV0QKICBvazZPT3doWU9jUmdYZW90X2VWT0FHbUEifX19LAogI
CAgIkFjY291bnRBZGRyZXNzIjogImFsaWNlQGV4YW1wbGUuY29tIiwKICAgICJTZX
J2aWNlVWRmIjogIk1EM0UtRk42Vy0zRzQ1LVlRNDMtUVhZUi1DVTRYLVJLRzUiLAo
gICAgIkVzY3Jvd0VuY3J5cHRpb24iOiB7CiAgICAgICJVZGYiOiAiTUJTSy0yWTZH
LURLNlAtVDZUVS1PU0xELUdDRlctTVBIRyIsCiAgICAgICJQdWJsaWNQYXJhbWV0Z
XJzIjogewogICAgICAgICJQdWJsaWNLZXlFQ0RIIjogewogICAgICAgICAgImNydi
I6ICJYNDQ4IiwKICAgICAgICAgICJQdWJsaWMiOiAiUjVXMFRZVXljRU1oR3V4R3V
Da0JUTVlCMU1nS1owMzZ5MDUyWExWYk1zanhnZzlpREQteQogIFZZVk5lX3lVQ204
UUd0cFN0XzhFYjNjQSJ9fX0sCiAgICAiQWRtaW5pc3RyYXRvclNpZ25hdHVyZSI6I
HsKICAgICAgIlVkZiI6ICJNQkw1LUpTTjMtVjU2US00VUxZLUdZN1gtR00zVi1LVl
BaIiwKICAgICAgIlB1YmxpY1BhcmFtZXRlcnMiOiB7CiAgICAgICAgIlB1YmxpY0t
leUVDREgiOiB7CiAgICAgICAgICAiY3J2IjogIkVkNDQ4IiwKICAgICAgICAgICJQ
dWJsaWMiOiAiWmM1bjlxNDgyRTVSdUhzSjRlZFdzcjc1YXh3elIzbVdibTVUNWxmb
kJUUklBaWNhR1BvZwogIGJxYTU0eVNBN3NXamg0OTB4cnZyRXlhQSJ9fX0sCiAgIC
AiQ29tbW9uRW5jcnlwdGlvbiI6IHsKICAgICAgIlVkZiI6ICJNQlVGLVA3UzItV0Z
FRi1EM01MLU9LQ0MtWFlPVC02U0xEIiwKICAgICAgIlB1YmxpY1BhcmFtZXRlcnMi
OiB7CiAgICAgICAgIlB1YmxpY0tleUVDREgiOiB7CiAgICAgICAgICAiY3J2IjogI
lg0NDgiLAogICAgICAgICAgIlB1YmxpYyI6ICI4U2hGY21OejVCVzluR09idTdfdF
VaRDVobTVhblM3VGFyNTNSWERjZzVheWlQcGI3TDh6CiAgVkMxbGpqSmVBdS1oazl
UVU51eVhFN3NBIn19fSwKICAgICJDb21tb25BdXRoZW50aWNhdGlvbiI6IHsKICAg
ICAgIlVkZiI6ICJNRFlRLUpRQjItM0VPQy1ONFpELUZCSkUtSDNJWS1XTTZWIiwKI
CAgICAgIlB1YmxpY1BhcmFtZXRlcnMiOiB7CiAgICAgICAgIlB1YmxpY0tleUVDRE
giOiB7CiAgICAgICAgICAiY3J2IjogIlg0NDgiLAogICAgICAgICAgIlB1YmxpYyI
6ICIyelBsMTBxbnpwR0hfMWlkREZhVk15RXltRWY2Wm1oTXR6cG1sR2ZaSFoyc2lG
QzBTSEk0CiAgd2FtZ2hzWVMzaEZMX3FYNm1PLVNRUXVBIn19fSwKICAgICJQcm9ma
WxlU2lnbmF0dXJlIjogewogICAgICAiVWRmIjogIk1CM1QtV0lQWi1KUkNXLVFaRk
0tU0NRTC1PVlZPLUFITzIiLAogICAgICAiUHVibGljUGFyYW1ldGVycyI6IHsKICA
gICAgICAiUHVibGljS2V5RUNESCI6IHsKICAgICAgICAgICJjcnYiOiAiRWQ0NDgi
LAogICAgICAgICAgIlB1YmxpYyI6ICJvcjJYLXJQMHRhVFg2NkZ4WTY4UlI0UjdHZ
mczcjYtTUljMzNRZUVnVTF3S2lfSFZLeWlCCiAgbktEWFpFZXhZdEVDMlpIN0NOcV
VDMlFBIn19fX19",
{
"signatures":[{
"alg":"S512",
"kid":"MB3T-WIPZ-JRCW-QZFM-SCQL-OVVO-AHO2",
"signature":"lhicUvvDwdI2cJGDmMDmEYhZIDOp0be5IjblZG
n0Uycnu3odE_h5jGOY3W58RlXBr_NHUwHfAbGAHcigqzKxUJGrM9MKXzgYF5JUx7u
HSN4qXpAcBPHHnU1qLepITOsRMoT92a3KmLGskrt9O2PlgBQA"}
],
"PayloadDigest":"hg5Z9SBDuRlEje8R3-0KZFBNHW738w1k0ZvF-n
NJKZ4acEZKjmAwOzx3cbf6HXJoWy3eLs4BqYdhXQWkftir1g"}
],
"EnvelopedProfileDevice":[{
"EnvelopeId":"MBXV-SIBF-4XEW-4EVE-7URW-F6VT-NTX3",
"dig":"S512",
"ContentMetaData":"ewogICJVbmlxdWVJZCI6ICJNQlhWLVNJQkYt
Hallam-Baker Expires 30 December 2023 [Page 66]
Internet-Draft Mesh Protocol Reference June 2023
NFhFVy00RVZFLTdVUlctRjZWVC1OVFgzIiwKICAiTWVzc2FnZVR5cGUiOiAiUHJvZ
mlsZURldmljZSIsCiAgImN0eSI6ICJhcHBsaWNhdGlvbi9tbW0vb2JqZWN0IiwKIC
AiQ3JlYXRlZCI6ICIyMDIzLTA2LTI4VDE3OjAwOjQ1WiJ9"},
"ewogICJQcm9maWxlRGV2aWNlIjogewogICAgIkVuY3J5cHRpb24iOiB7
CiAgICAgICJVZGYiOiAiTUJYVS03QUo1LUpQS08tR0pXTi1LREVBLVhHR1ItQ0ZJW
SIsCiAgICAgICJQdWJsaWNQYXJhbWV0ZXJzIjogewogICAgICAgICJQdWJsaWNLZX
lFQ0RIIjogewogICAgICAgICAgImNydiI6ICJYNDQ4IiwKICAgICAgICAgICJQdWJ
saWMiOiAiVjFNaHZFWlhzMlk5bzMtd1hWMm1kT3AycVkyMGxWZ21NQzVyRTgxRTND
RWhDU1pSX0h0eQogIDZLN1RMLXcxd3EtY1h1Y09uZUY2MURrQSJ9fX0sCiAgICAiU
2lnbmF0dXJlIjogewogICAgICAiVWRmIjogIk1DNlItU0ZEQS1PWVRKLUdLNkstRk
lWTi1PTjVHLUkzUEUiLAogICAgICAiUHVibGljUGFyYW1ldGVycyI6IHsKICAgICA
gICAiUHVibGljS2V5RUNESCI6IHsKICAgICAgICAgICJjcnYiOiAiRWQ0NDgiLAog
ICAgICAgICAgIlB1YmxpYyI6ICJNNUUtek1GaDRVOTBlaEtVc2JkMmlDWVprUGdFU
nFlTk8wUm40UlRMZXpsWS1fRWNjVGxFCiAgNUNpbzNycnJrU2xYc2pybmV6Z25HSl
lBIn19fSwKICAgICJBdXRoZW50aWNhdGlvbiI6IHsKICAgICAgIlVkZiI6ICJNQ0x
LLVpUTFQtUkFDNi1OTkpFLTUzSUQtVjQySC1KU0lBIiwKICAgICAgIlB1YmxpY1Bh
cmFtZXRlcnMiOiB7CiAgICAgICAgIlB1YmxpY0tleUVDREgiOiB7CiAgICAgICAgI
CAiY3J2IjogIlg0NDgiLAogICAgICAgICAgIlB1YmxpYyI6ICJDb1VqdENFVEdLWG
pPd2htRkw0UU9zZlVBNEpZeXI0RFpBTXowV0R1bEU2aGJXMVF2N3dBCiAgR0FYVFB
wN0s0dG9VZ0YwSGVuT3BZWTZBIn19fSwKICAgICJQcm9maWxlU2lnbmF0dXJlIjog
ewogICAgICAiVWRmIjogIk1CWFYtU0lCRi00WEVXLTRFVkUtN1VSVy1GNlZULU5UW
DMiLAogICAgICAiUHVibGljUGFyYW1ldGVycyI6IHsKICAgICAgICAiUHVibGljS2
V5RUNESCI6IHsKICAgICAgICAgICJjcnYiOiAiRWQ0NDgiLAogICAgICAgICAgIlB
1YmxpYyI6ICJiRVpmVTdLRENRRnFhQjN3Mll0SWItX3M5elNhUTBOXy1FQ1dselcy
aW0xZkJLcTBvY1hSCiAgSGtHOFJGOWd6Q29pZzd1TExKYUsyVUVBIn19fX19",
{
"signatures":[{
"alg":"S512",
"kid":"MBXV-SIBF-4XEW-4EVE-7URW-F6VT-NTX3",
"signature":"VQYBbRl6xm-Tzo-uGkOd53RKQrn1KE6so5IEhm
wBOQg49uJtfjaJYZTxC1OfQ3z1u2COGayDIRAAvFkA4vO7JFpk6IOQ1tRbwHau-QZ
r00ey9zzjj8cWnjanozfSXM1b7T08DL7UGO4dDqGaGqF5DxgA"}
],
"PayloadDigest":"bGq-cj9J7OHsfvhk0hXsOwtP6C6lYOl0Qf8Zfe
tK7FBbMJYQY5woLCFoXXm91Rg6cQgOIuS-WWncODSrTlrOUg"}
],
"EnvelopedConnectionService":[{
"dig":"S512",
"ContentMetaData":"ewogICJNZXNzYWdlVHlwZSI6ICJDb25uZWN0
aW9uU2VydmljZSIsCiAgImN0eSI6ICJhcHBsaWNhdGlvbi9tbW0vb2JqZWN0IiwKI
CAiQ3JlYXRlZCI6ICIyMDIzLTA2LTI4VDE3OjAwOjQ2WiJ9"},
"e7QRQ29ubmVjdGlvblNlcnZpY2V7tApQcm9maWxlVWRmgCJNQjNULVdJ
UFotSlJDVy1RWkZNLVNDUUwtT1ZWTy1BSE8ytA5BdXRoZW50aWNhdGlvbnu0A1VkZ
oAiTUFWWC1RQlZGLTc0QjYtNVJQVy1HQ0JULUtQSEEtVkFSUbQQUHVibGljUGFyYW
1ldGVyc3u0DVB1YmxpY0tleUVDREh7tANjcnaABFg0NDi0BlB1YmxpY4g52UMykXg
c2-SQVAF79AVp6DFrvFHKGSqmR6EupOG5JnaxPthlEvTvBi-8Y-yKQo13dnSXyVdq
uTwAfX19fX0",
{
Hallam-Baker Expires 30 December 2023 [Page 67]
Internet-Draft Mesh Protocol Reference June 2023
"signatures":[{
"alg":"S512",
"kid":"MBL5-JSN3-V56Q-4ULY-GY7X-GM3V-KVPZ",
"signature":"sSKVaJqQ-yMmJHluDeFYbl8RT0IadGzoB0mxYv
ikFuGs3xd9LfbR3GI3bDE2-DNKxo0hXT_5iVcAySO8qq_5uaDYXgsWnLL1QOVnbuY
W8mENaDw4aRwY8nuNIEd95ucEbKvlWQeO05vTM6AV4PeKfBIA"}
],
"PayloadDigest":"vhymfJDU2ZqYtw9rC5C9dcXzW68bJrKzcOpop8
ygUAul12Os9Dfpfvv_xR_rSVnAMhH10u3aLHXkEj1clP-gUA"}
],
"EnvelopedConnectionDevice":[{
"dig":"S512",
"ContentMetaData":"ewogICJNZXNzYWdlVHlwZSI6ICJDb25uZWN0
aW9uRGV2aWNlIiwKICAiY3R5IjogImFwcGxpY2F0aW9uL21tbS9vYmplY3QiLAogI
CJDcmVhdGVkIjogIjIwMjMtMDYtMjhUMTc6MDA6NDZaIn0"},
"e7QQQ29ubmVjdGlvbkRldmljZXu0BVJvbGVzW4AJdGhyZXNob2xkXbQJ
U2lnbmF0dXJle7QDVWRmgCJNQ1NPLTdGVkstU1pTSi1CTEw2LVRTTzUtQTREWC1JR
k1QtBBQdWJsaWNQYXJhbWV0ZXJze7QNUHVibGljS2V5RUNESHu0A2NydoAFRWQ0ND
i0BlB1YmxpY4g58pFP2Fd_qdovy4r8tqjjJSmUFuFDOd_eh8eOUsF4K4Y-XZqXOC7
BttzYX0GKbKgijBgMHrSonv-AfX19tApFbmNyeXB0aW9ue7QDVWRmgCJNQ0RVLUZZ
RFgtQzdJSC1SU0JKLTdMNlAtSks0SC1BRlJNtBBQdWJsaWNQYXJhbWV0ZXJze7QNU
HVibGljS2V5RUNESHu0A2NydoAEWDQ0OLQGUHVibGljiDmj9dvET9-f4VhqVuUNF6
aS4nIWX2IJ_zQfhFKf1UcOxgU8lR___499Sd-srS9nrNgAPpuKLgONooB9fX20ClB
yb2ZpbGVVZGaAIk1CM1QtV0lQWi1KUkNXLVFaRk0tU0NRTC1PVlZPLUFITzK0DkF1
dGhlbnRpY2F0aW9ue7QDVWRmgCJNQVZYLVFCVkYtNzRCNi01UlBXLUdDQlQtS1BIQ
S1WQVJRtBBQdWJsaWNQYXJhbWV0ZXJze7QNUHVibGljS2V5RUNESHu0A2NydoAEWD
Q0OLQGUHVibGljiDnZQzKReBzb5JBUAXv0BWnoMWu8UcoZKqZHoS6k4bkmdrE-2GU
S9O8GL7xj7IpCjXd2dJfJV2q5PAB9fX19fQ",
{
"signatures":[{
"alg":"S512",
"kid":"MBL5-JSN3-V56Q-4ULY-GY7X-GM3V-KVPZ",
"signature":"ncUxQN2mKCjTCyHeL80j1ttmy3dleAx2yGYcSH
u-KbWkqsid1ZxTg214aOrWA2YyyTpDasqwE_AA_8cPBvj9VjlUgdSH0yaizh0WvGr
5CFZXPEezy_gfJab6Y5K68FjnHhTWVUKmaga7UnE3FsL2CygA"}
],
"PayloadDigest":"Ow9JNgrmdo3OZFx1LxqTjxLjIepfu5peU7BTct
ZGzdMurIZP-X8TFWUkKZp3gvPGkFyoCWzQOrzv9nBI3xNrWA"}
],
"EnvelopedActivationAccount":[{
"enc":"A256CBC",
"dig":"S512",
"kid":"EBQC-7EXZ-KHTZ-BUN4-HJNY-GGBL-BH6C",
"Salt":"w-xiHxJZ_OSnoBidH8UwVA",
"recipients":[{
"kid":"MBXU-7AJ5-JPKO-GJWN-KDEA-XGGR-CFIY",
"epk":{
"PublicKeyECDH":{
Hallam-Baker Expires 30 December 2023 [Page 68]
Internet-Draft Mesh Protocol Reference June 2023
"crv":"X448",
"Public":"dxdYbnkaiWM92pICS36poJKKrHA0Khno8qLmp
Mh5r25Lfof5YU310h7OAmJUsMD7fFcyfqXKh16A"}},
"wmk":"yRB0xSyG8_2Y98gN5nAVWnVLRqJpYSqGKZJws2_jsOYY
_zd71H0Fqw"}
],
"ContentMetaData":"ewogICJNZXNzYWdlVHlwZSI6ICJBY3RpdmF0
aW9uQWNjb3VudCIsCiAgImN0eSI6ICJhcHBsaWNhdGlvbi9tbW0vb2JqZWN0IiwKI
CAiQ3JlYXRlZCI6ICIyMDIzLTA2LTI4VDE3OjAwOjQ2WiJ9"},
"qCwfeQfw4zXOePD3NRWYx1Q1y0cTo8ryFAOmh_w0JRUO-Q6HQ5QnydRz
UC3Uq9FRTrY7z6V3kU6fl2wpV6IG6blCySNeeZ7Fn5iLp5XoKWAOzbQhdmVAfqnSC
9pl0BtN-uzmcivhL7MHNDa2gfvaHJQyuwGXLNsn0WSr8Ga4XJDBE_POvNK_Vr1EPk
_AzX16zf7vxIMbzeV02Cek0tl_9_gtM5GeQrddbOBGyujxz2fORwk75kPiom0VqW5
c2Dzo",
{
"signatures":[{
"alg":"S512",
"kid":"MBL5-JSN3-V56Q-4ULY-GY7X-GM3V-KVPZ",
"signature":"6c9x4UBciFTukZWwh0wBAFHHONa5rgZyn4IS8-
TaOx9-VaE7Le0w_erIcde9QjlEqpCFqKcaBi8AS8HADe-1LzCg0n9x_zhKMjsFG_V
_t_QnIhrtiLhKciwH-Q8vJx35PFe2LiOUYDFloY8LhxGtmhgA",
"witness":"02VTHn5ewZpWlyTFGFhKB7QnjTHXtZUIZtBu5uEe
olc"}
],
"PayloadDigest":"AHh2P-CxhQnkBd2a0D5guRGZ45kyyuLp3ZTiFf
QY2aIxuWm-U5m4yc_MXKSNk_q_9U-E0JDZYH97hMa07G2oGg"}
],
"EnvelopedActivationCommon":[{
"enc":"A256CBC",
"dig":"S512",
"kid":"EBQD-J2HQ-VXSV-BYDM-MRRW-YMAW-X6BX",
"Salt":"TmnO7mgp6xKPeviXcKDVRQ",
"recipients":[{
"kid":"MCDU-FYDX-C7IH-RSBJ-7L6P-JK4H-AFRM",
"epk":{
"PublicKeyECDH":{
"crv":"X448",
"Public":"F4tzMXhlfstTKdx07WClobClWW_aqwlw9p0D5
PGxwBkYtQIzBk0D0KZo046KzjDEVQ-SMgzP-zmA"}},
"wmk":"2pR7kt1Jv-mOT_5AJGIDZgrQ-Lo-4hq_tBVz3fwlH6FR
vrGhKhsRjw"}
],
"ContentMetaData":"ewogICJNZXNzYWdlVHlwZSI6ICJBY3RpdmF0
aW9uQ29tbW9uIiwKICAiY3R5IjogImFwcGxpY2F0aW9uL21tbS9vYmplY3QiLAogI
CJDcmVhdGVkIjogIjIwMjMtMDYtMjhUMTc6MDA6NDZaIn0"},
"-Ni7bIEgPjQAwz_d3F-dvedMkJMt7AqHlhpY-AQTdQF8Hw-lTkvc0ksg
Ys5hKgs8cLS_MEo9LNUu1yJ9VZ4Z-c0GOLDJf4QFuahV6TQBH2YAEZKB6IazIvKsL
v9ClA2_-uFy80Om5r5KMy9SzamcC48x8ucmoxU1S23nej8Gl2_wG-h55WaVoLDGB_
Hallam-Baker Expires 30 December 2023 [Page 69]
Internet-Draft Mesh Protocol Reference June 2023
zpXitIYdcsDxWZw5ASAONRpXiBhOSSSjC1VhRp2u3yjLEr5rkj2qO7tAB11kKHW49
teutQoR-B9E0yJVdEx14j5uk5a6_WSYpUFuUEMtcuxyDKSbhZFsU1Uc8Wqd9O8ZIy
fhkbedUqoxkdHmgEE4KsraxPEKKIsqqGc1YbVHqSK9r7mdaChqnOkF5DuBKMdyiws
F9HXivIa1V0fTp9-fkVveT6GncA2mcSjOctCvweaKgwy7gAGDJg4a4wkTByI0aQK5
niiJV1_zWEguFjhiGkocffSftheV_5Is4fUj1Wokj26PbesK-sbvsNfIS7N7dY9OS
wdojbnxspxv-2NzG7fChwWOHEpiRGsPMBFd4MgkuWudD7XAC6aIpb8FiLErXc5qkT
KYaafb4IwkgikiQNNFShE940zziU66JLmNHhzy9jakbTCK0Z9sNGhQc8oqdXLY1_6
jsOsaq7AYguGHD_7KA6WvMF70Iha7H2O0p_rEvIfNtOhSHqcWa4Uxyba80IWMo8ze
YKCI8VlFvkdZ_jIPcf3tvuGyVKucEQF9_bNHtOEGCjX63p02nJHhAzjD4AC8YG2cR
AduoZkWfsfwMVnnmk4hTRv2ZSscLAPAaSmAelGKdqBw5ZoJD6R8ImUQpGZNAEGv4e
PiY4TM6mAuxC-d-gK07RBX9F67UHN-LnjUKDTLXl70iZ3BpN45yiiaXnmPMgKNwMM
Y1sJACsep7RKeOgISDyykQ8UqpTkxxHNuct43t5NCveZqV2bGgJtwgzxyCuI2xF26
RxaKZP3TFaq4VzwDZ4hbH9smLJnSQ8cetiLg5BTYsNkvtY3L5WLdBzE7RuVDz5Hum
aVK1JdfwKNAQ3Jusc8YbTZqrIv2ZffyMayj0woasL63f3udwGjqVi8nWLuyE6n29m
41E_06nSR4J6usXsAlYQK1yf5HGhLMarraJvQ9FEdZ4JPRg6nSgQZvpQ446y3SlKy
fUpkntiixu48yxotWneQuGIWlujJ0t95_PYmWmjTk-lV88-QVse6nX7GGnYpNbVSE
LEa2Wp3pOfFfi_ACk1qTeUNdsxaGYiv5UtP3gTU_kK9XKSEHhTRCz5TMbA_5FBCjd
2MXnwyQlIpxoSw6wo5kIPPau-LKVJChS5pwI-hW7wcuNsPeUvTbFKOVE3XM_xanJw
uwYk-I0A2SQqb2LnHZeu2D0LRtoJQpbLwvhGkI8UXFqp6zYpt1OaPU3OND5yOCCCX
Qg0AHzunCym0S9GbySMB7Pwh2V5RJ4mljGFF5g0lKe8-_E9W3_Nnmb-8UboPL34Vd
dntsEzqfmzXyqdoS4YCY_A1ZLSYD58u_61v5h3gvlZERjEyhU4-GF-fVMBPlSyAy8
AACAqbukxJ-Y252yeDm2-VK0j05eOmULG4RqYcH0tSmBihoEQxAXY-vhLUi0oBrig
3YqwvAwDNWJRPqd2c8xcx65H3NgMLwEPsBjAmzhQ_WyOIf44gdfisxeEaoJ2S0gb0
VboaTdNNJSnNcnBYfpI0DzW605jwGvj7NrV3c4oozYrfVyMoWnBLTod_qzrhmwPli
F4eYv593xgmRP-IFBMI2ysaPcrI87s9UNv9oa-Wlz8M1pOJwCctuCi5XhQaabSgVs
bjVS29eKQ05Ad5hliU1AW1-QSsFTyO9SWrAZrJGPCgnro-maWoUPrVMyKKnQQk1ie
KErCBcZTWIdSefaoxedOwldmsM6kTa1wygfXbfS3gt8yRsTc0EgCwrNsUdUEI6kVi
pWgfTq1dzkrmiAIU_B02yhtEb1HNgATwYAFp--PSbko1wuTrFwPFMfDVsajQDPAzT
HD4w-AzR3PwPY0x_p8tKQKGPTSYz3oVfB92Cyh1hRWKyLccwG3yjbnSTmSdfFM6bq
IyM3yYex0AdMUXXZuaNfS-m1bekpWplQYuAQXfGpUvKqAQz2YswFaS9wGeVm4diUh
tpm9750ID9-gwYAUl7L-AcGNLfQkviUBGBwXw-0FpX_JcjOcAa4BoR6PloyY6BYNg
xDb6B0klfStdqyETAAFa2BCB4TIFtGSyBBil--wWfYh128T2Ah_5MhbCFDZ4mGBZM
osyo53DMLUjlRAajq4FKY8Sa5l6BXyrnUedqt737A_XPfM5GRtwfShlZtsMsEdlJ9
BVCki3JZZVycl0rxcrhAuwsuhntwWq13BqTzuE22nmXTJ1TWCg38ByWSsEwmaatn-
adiImpxfWzZj89h6EdeAn_fTdVY9zGOrIWO6WlT_-wUyQEgQ3usrhq99KbJfUrgnQ
UopzHrHi90Ctw0xCED2oByG9neKTPzEcepRnE-ZBnaWxms1tqEUOn9dU0XMOmYXnn
3ocUyDgJBtutpkX_f2mqhuIGg4jXHNL1cF6XEBRDFdO7QehYXqQDaMrzvqVtzNaKK
6CU6j0K2KUdufUNDjOKZ7cUfuHKOMqyWrrmKEEhTb9p4OSj5OdP1K9UcjY3kSU-bL
kTyT3daZsil_MbttKVVys3mBUVGJ49ivr86H1A-viU468--x4OVlIlv9BlUXJA34U
x4XoxnFQo74vvebhAvMvED5Natsi9jmh16xZarhXFChk23HJ1PB7rkpnV7ePk-44k
AOU6yYHwbKk0NJKn193pkKV0TfNmFTnFFlkcLzGVnakKBx33TbgRWDbqGUqFpyFfr
fVQSEOQsPLzoa3FOutRcowr_oo90YYg9pr82jcQv3dbyixjAK_CzB1d_Yx6bPpZbG
JvHs5mIDW6iBrWw5M3Fi_K7GOj8IMZ715HhEylAah_BzlPk7HDIgPy4WlPMTaiggm
gUP6ElnkGzPfAw5gAQFIw-Bh9IOz-miaG1_T-6ECcMcFwFr0x0kqntpyzgCbItWZ2
-zZ2orZJa0GjUH5Hv1YHL_jJkxGRHntEYZV8BHdNH4yaHmJTmqNIv55XsJtZsLl7R
BKDL71fCCa4pMkQAU0m36CVvTy82Ft9u1ZOgBCYcbmETUwpcItkQXL-7dutdoqAx2
AqMpn2uR1NaFxUsXRlO1ZiF_RFbf9_90zfV_v-UeYUWMWrx5jAamYv5paUPiC8SeZ
XUTBI15N06IJAh6SqvDecCbRXFySuVnSikKOWae1DrOO04a07UnTlE6zcR0u_Ptt4
Hallam-Baker Expires 30 December 2023 [Page 70]
Internet-Draft Mesh Protocol Reference June 2023
2QIZj1KpRhLSHB06SnLp11Fy_8y_1M6JpinZE90yh8Eid0eVol1sBI6NQH-UoGeuD
jNgVHbLfhYaL6kYdWGHAHIZiUA1RD2QfFYotmqe09Zt5xAAlkCgI0mVfPKMAd0VE1
s69x7fhsdLKyMrgXw1hmX6sHXJrdwj4EmPSdXZBnjzPU6pE53dCflgMQzsfQI-xyM
q6FMbXSY9sh1U4ZfL0Xs78s7zm4ZjgjtLAFn-T0a09BsfkaknCVDeNTJiH26mpoMa
Ma6bHVUkRfoiSfG4LKdqFyWhYqZ1Z7nW_K1U6ZePim26OTYCeVu13jYPuz1xszQsq
DV7BSyS4aV12TUeRT5RxihHPPDktqUVUk_au7aNrUPKKbDcMssByik00EfxmmFoIT
cB5nVjeoayRH8P1M3iLf4TbdoeBgAQKbDWZBjXiiQvfxUHplrvdYTJEgfF_Fg8gWV
VMn_Voo8TAfbb5V5EmbuKRppVzHG8fIQoK8xGTZFDjbzkf_IVlg4kPJpFe2duXrWy
DPLscELZwl4R2nd1oNl0qp9RMwkZKor58w_osQzgNs3h6POmbM596L0byFCuPkWjf
tJkuvOziDDPBzAnOs3KRNLUZEVBMV71c4qtxUXE8VCk0Z3IsRrolZb0WPiiYcfk7j
TUkNJG9gwme3Pm6JrjGi8Ak_K2hYy8T2Y1FhCdnIp_6UmHCUQ_X8pGepGCplLGOB0
ljPbOr1w84YP4_LdQfIApK_y3nUH_O4iB57bDWmfhpnPYWdeytIgtL7wip0lnUMAG
6UmpO9sHjQ2hXdPuGQA87Uy0xd9-uWoeHwRiqfUBcnyTchlq9mSiFQk6XlWiwma6r
co8xyVlHgz2IXvYUGSEU8tBL4JDj5CwONi9xKEw1QqSS6Ta2KwmzjRhuldybw_XhT
p6cQYPzOczcunw27bIyyqXqi3YyDwgDW_CEu8DIeGD-6PCTuIsvG0wQG0h9Ry_86g
sAr2k9EIowEVLW9VOmqC8tYZM5BgfEqnmohBGzpPjgY-BmzLI4KsPAm19otLhJpCx
0UBxVWwjMyHftgdKmj7LS1pdHfu85jtWop4dwhKFh2rZmpNdvmmtnJFdl0kJP_LrW
l8LSaYU-jjjptgTYIsRHZ2IzLrzM8_jvm4OZ4a4x7kxtnwYXxyQgLkAqVsRLVKArZ
3LVsIItXF9C0tZEHsmi-eZiVxgf4UqbTlRszJztlmWUNsNyq8S5yKUgY1yohm_lm5
YRmiyQTAuLTc-88XnmT8hi8li0k2NbnkokNNoRMLEOnPH9AIcChbHqjU9DFxL46Sd
wTr7ajb1bfqtR4yHKW6SOiuRIn4wBKw3sr34mKfnuMdN2lX9jX_z-Y4sG3jBP9DMZ
mH95CSAmYehn1dtmnPhxMv6EKrEJkD9DJxPdO-8KMQ-c3L5Rk2m8RlXV3MTpK60bt
aXuQDqJDWBuq3WUF4MHyxck3MpjJ7PRGwuuqSg7CvzIcEla-3llVyCO6I1DbTEhHg
v_2sy2C06Kg2ZQtSOCGkkmYfFpS_To7_VqGlcvqyae0WZKpJ_EF6de1pY6geBABN-
ogqfj-yL2EVCwMc07noJIvAGzIJa0Q4JJw0hwigxzxiALigYaOoVDWIcDhxa-gIKX
K23caq-7r0Nww5FNbfyifWmySF4Ny92CpxsgPVThAbfV8qWZRutcqLkKiKZ221bvn
FQqqcaJaAbmpAe5O6Vwl2ScSS1VdUfPzK8j8n8Zqu3bcOIQbsrX1sMv-A0cg3YnBK
NenJTaJKonVREYylsoEcCmO3fAmkbtZfPI1bq4zD7ZC6Fb7OScBWMxXdqZA9yUUq-
rJYZIsyvoolYHwGV7LU_HUMso5bGJfaIB0DSddYUt8u1Ul8sJKGiiz-BxZDluPEhv
okxCN_fXRDOIvllygV01LoEazKeyTVioq41UXNgi5ZshjQplN3RJU1hQcYOiBCKG6
sBMFTqz-0L92jLtDHOzvbAoOpSsHlJkkwxbsu3BFeBqNfn0UqmSgK32-q0PYck9my
yYH57xx0tqirf4iba1yXICA4NEAdWoyuYI_OLDSgZhJD4x_1Lk1cyafmN57CO0YTy
LLkt8lDQ60cjvfG_BzKlK4Yg5XRqnMlo7eeo6OPv3FYg7xR2OXC8ka0aDblfLR3TE
XK9FoQCH7dT4lHui9Fer3TGxsjUO3kntQwxyyOmHVRy8VFK65KIE3pXm8aKShkzYl
UelYlgh3rivF_FGCCrisaqlgEamjJSiwdTVkKALsqSP_i_S3kZaR_OOnPn-tUOxBB
ZJ9NPyBaYhf5kD2HZmB_AIZe6fL_b23lGgOHe6AaUsElFx7FUtyL6aDOeJOQDfV3A
x3RhYrAsrfQWzc0lXKCyvnE8CJ7ZafQAuJuyXgPzKPIuakHEVv2ExpN8Nxib3dwIX
qAyd_vJ8nqbZ4MLzINQu2R9ptSgZs1fPqd1nugN-5laJ0CodcjVn-CZeGga-XPyBx
eVVcqY9YP4E-hSPd-26Nq3jGoIlJgQtRO4su7t6Tc91Jyy5FyoCH8T4DjiQAmvo3X
BdvhiaUWW_bSVRagcNsAO0Z9WwHTo3ri_1vipL8JuoxDSWwh9_4OBYlcYNlxfFj9l
fJu2C9hhrg8k0MPzPitT1jcYW0RQAieFMwCtXJdoVe1ZNCum-0oPiEGuB_x0l25AW
3x_xRkyi7vHWgXMIGx_02T4mbeJ8TzyGHlwpoeJKNV4k7yDmdUqbkZQ_NY-NR1jo1
B05t1Z35VS0GXq24w-2QrXJd6XlUJaGH84Fx78pX_qZrA6qWxunGQ1JpeFaJ8HeoC
QGE7AWNOAOv7n-w63ASfCD762Xg6dJ9OKDkYse8NjLb4WdD6wvAXuHNL1bouMIdQL
_03lY49GJueCM6ZiES3_FI3Rl-8VWvZCVqvtEwwAjYovbttat2GoabEcU9VGLEt42
mL80xb598e40xNwOuoMTCvFMEdv5Sz0j4KyhdI0AeDwI5Bc58_kJFodJ_VHXgbtui
SqhXcv_u0Z6NDpb19CsGTEJFHM-4BmerJ5tIU-IQIhFxaJf6taD0Mqlf_i7YSsykl
9aEequY5HxuLGYh96-LeXaDD66JBJnUtNL4vKCYqcN8_zy7wJAt51guplOPHOdeat
Hallam-Baker Expires 30 December 2023 [Page 71]
Internet-Draft Mesh Protocol Reference June 2023
hmtd68bx-79oMkZnoT_D0teHeXcHv-qbkSoj0Xc7pWOghA_NYY5h0_1kSIzFcT_B-
AC4qV9cDfyXYnYbCBcMWE279FWm1qNRl0g3w7PPjFASIdERkqXZwvDzsX92JlNR6V
VKZN5ttf945YnRM7QFQSMYIdhWRnnIUQQ8uTRkKZscrpCRsNR1nYj09z6M5ncTKuv
_kt2vBFMKK8hOSZbBlKhwx3YOXyspJkgwyuAz1AlSysfU3yRLzK_d7PNqIT0pCpPE
GysPNKdDCUzl6vegx11eku1XZC-4_M_FVTMhO8ciqgGqfvSE10hgD4WykM_IYB8iu
-L64RLSARz301G5WuLz_p4HdzL0SvZ_mmXquYf189R54EXb0mcgYVm_XcFdQBbMaK
4IuetN-pLcO6JO0Sjk2KaPrZEtmJwVxPYN0UUzGXcSP7DpDkRvWrF7fNVypikhw7u
1xVbKbVvBjpjVyyBjk2VjwkYdN0l3qskKH6Z4OE6qeBU1WLb0fzASdr2abVCXPY-F
c964LvKiungIczW3DtsS9JVp91YCWjlp6seWhF4uaqmyuoREtSUHezE1Jt74ABkRR
s8CN5BxriuS-Yq3O2XXDWRmuxHseqlaG9tLqHQXhvqZYeJHl9KdUcZq53RY0b1rwt
A-fMJs1QGVaLBJPPHsc7g3blevBSuEAci9qw-2Hq37Gb1R77JkAI8ieeW6h7qE33z
RbILOTpNfKH6UNkvmSpwDtfAPzRyrTuifJcEggNRPdAXR8SwznKcVtlN7dfg1yY4W
aAO0pCmV8BPTldVuyuImk1vVULy37PIXSlvt5oveA7-c5Xb2blQpMGH2JCrb-a5S2
Y58TLrMrtsmkvdxyuUshNlkr2qOqSkgIsbwOQoVPE6x-1RndLVZEiZqlYF_XhM7V_
pusxm_iHbyCzyhdfi1t7u6T5-fCXcrkKyjdQvwC8II0SRFcPAnIP2_QRrmzWRypoE
L36dfqWNRY6KoireoIZ6D2ozwXZhEVh-xyJ6DjW9lkOUHxAmpQcn1krvGjaevNjAn
OCtIxmex4zT1VqHYDk7D0SWzsIl3rDN5TEp141zr_-dgDG_XMUhSzFiRg46FoqhBY
yD9KrDMxmSIoQQMDhVfEnSe9-dp3k5W1w_V3a3QeurDm5tEoy0-gL_jkkj_fQL2py
cwKvVUSeVPln5iJ2sFoSbtcsk7BBY_5BdU-aLXDmGxRPulI8OBQd34-uaz8VCmWo2
mmNLuuPuu-7hlMcVIeW49-4Ido2bfkaA3DFQAG_dSCDvbB4rWm17E_-bs8Q8RPziA
8-MKfplPO--p7HkcJI-cscOBDaygtw6AonKxriBwm0y1NpFlbr9QGBAR6IIBkss8R
ROdy_QcRV0T99FPtiTbUlncNKMNH0znnB56jgUZDsF0qLZ-dbnutbA2DyNTUJJB_l
fXBlXVTcotzE2ifzPdTw9yylT7ByxeYIueEN3x5GG8lDcdozfkU5ZaG71RmqtBK3F
GuvBZUbs7le3FQn4rwS2xlZvzGKwZkVTme0qBNLs0czpbgU9FFMIRoWT8_sl9ezYi
2ptxclHNWX-0CWoumq7Y_NYnEgUMIsIeHFn9s2DIbT8vUsOGnoBTgw14X1vrAUOv9
AHnfwu-fTq0LnFwuSZo9VCfCnmMswV49OO2jWBFdMQ2BOpHRqPZKIOa-BnZL0vErW
IlY_WQlvp8qi0uSg4-0wncfgm2WGb7Q-78f04gBsOwmGdrtXe5kww5yiLGeXntAep
hNUGSC2AxtrtnT45QkC01ovduw8AW4E_UB7y9vPRm2gJoDAJovcOL4F5b_pJiAVqN
VpobWEhOxzQ93ZvU33YFP4X4W9WwGHHDvNvBgSA4XuStNg6rbUCCTLKiv-JqV3Vnj
0PcLUbDyY_GpF7LTXz9LIX--y-UMJxAfiLmrb8s7SbNgf6OkZtOeYitDQd9OyT9xM
RdaUenSwVUfgHBj80cyc65H26J4IrJnvigMgmyMnU1T_ZE7Q76qUOnqALXrlt5wtg
64E4txSyuNPX_vILH36duyXq_9TGJSiduCNMlaijq3bE8E7F_SoidyM6bep7sLYgm
uNryg2Fa59wRxsHojSptaVI9MyPAL71n-uqsooJILjHzNm4Z1qQY9pCtO4vAAXFft
u8bsgBlAWFiPe0rGgRqTf0TaNE6TroUuvp7MOStPnBJrN-kdaNu-v1LfWMkQJg5BE
TKUgck62CDUy70fHDfKfkrF7Xw",
{
"signatures":[{
"alg":"S512",
"kid":"MBL5-JSN3-V56Q-4ULY-GY7X-GM3V-KVPZ",
"signature":"qxPr1aJDCkaAnD5_j41aMXmQeqQQtk0h3mnZG9
kc2YLkC2ahX_Oge1dBW-WH7waQ4fGOt8G8auMACNt7m38A5OCxOnCbo9XRrUMSpwc
uD5tuaAJkZCKkh7TbjcreckIcy1cDLheVsgacYsQKxCaZEwMA",
"witness":"QQQrqg4a5Y3piY70Mg-K9o6tojViA-xSVXqv2gdV
-r0"}
],
"PayloadDigest":"njF6X87ZqBPxVDQb527JK1cr3rPAyMgUCUk6Qx
pfGBPo1BFeuDLS5ZDsVbFVGx1EiL2Q2Eu1vHuJ9bc6meFzHQ"}
],
Hallam-Baker Expires 30 December 2023 [Page 72]
Internet-Draft Mesh Protocol Reference June 2023
"ApplicationEntries":[{
"ApplicationEntrySsh":{
"EnvelopedActivation":[{
"enc":"A256CBC",
"kid":"EBQC-JSUS-ARTD-I7L6-KTPV-TZQG-P46Y",
"Salt":"1ZSrwDiQwawYDnDD7lRzVQ",
"recipients":[{
"kid":"MCDU-FYDX-C7IH-RSBJ-7L6P-JK4H-AFRM",
"epk":{
"PublicKeyECDH":{
"crv":"X448",
"Public":"nwajSJCeuM0S0RGBctttS73ZxN_r0tF
GYp6a-gGf-gUFXMYkVjGOAuHHJLFObS5PB67xuqAhis2A"}},
"wmk":"L8JVTz314UgAd7L15URGrq2yp0XFG5kthI43ZO
j9fdJN9PP1P3sgTw"}
],
"ContentMetaData":"ewogICJNZXNzYWdlVHlwZSI6ICJBY3
RpdmF0aW9uQXBwbGljYXRpb25Tc2giLAogICJjdHkiOiAiYXBwbGljYXRpb24vbW1
tL29iamVjdCIsCiAgIkNyZWF0ZWQiOiAiMjAyMy0wNi0yOFQxNzowMDo0NloifQ"},
"W0H2Y_PEBun55pYf8nO39p-1yMjg0auMVMfMH1-7vp0Py-DWrP
sLMwhebTMSxVv6h2rk-qHr2b5gyfoS8t5ygKcj2dwRupvMoB-JIW0b097-qwCZqWx
HPHES7sxZcCpLNi7pB-DUmII5GmBDcaO0P3zYQyd4jIB_8jTE91gLz8rKX0sBxxyz
rFCmmc0-mGEevY1MvHMlQgHY-XO8SWPzhgyFiP7FOhr6VmfnvQ2de2icEYZAGjD_G
6SC_IlQhcKB3MYgqAGPBO4gs7K7xWp7Kt0O-20AbTDwCogYQCLLMPM4vEL-qaVi1u
GudieuJy40tzwihyQipCOaqtSNb7g99n8Ng17WeKYeNsLw5-DQVw--fL2nzlWXp7X
7bg7gjli1duXVSX3HRNB--uuqzosl76rKMefWpqvtnQkMTY2DkuHRex-zrqAEUjt_
B1vT12EFNUN8MuBq1Ag2aeUxBP89O910qFRRxpmpdx6YQfn69BoH0IWaBjn19TIrQ
iEWAJyIG4gRsnWeEl_sArhfJblc-V8WMrYojFr7Mlgr5s3xivg0Byk3jzOUEkEaLH
LTYUl0zp4AFtPWICaXK9ICBAC0XsSsMBWM4Vw5g17HRFw_CBfjcFm_zpXczbWjobR
c2A5CJ7uUDoT4CnPcKMy3KoKNXbfi1R4lnPdXXM92z5ja7bUkfAZZBiOlIU-7ugLP
ExkpPbjAZQuFfsW2HYnyEgAdQfzsBz8MlwYiN8GZEiFflbJOzggmCrMz0_YIGxUWl
4pvs_vpxTEVqMq5negEUrsGNBMSlEeP7xJLv31iwQJjd3-zheJEUv7UnTsAnCaJqB
cET2MvM09kVE7eyaLql9RXfpr-9o188xN696jx6bDp6AainJLsmfDcvdwEeYMDyfL
0AAxaWge4IiV3UIzGWnjv6kb0i0mOq67lFIlFKoBoM2fsODvo_FxnAoVrH-_l_Syq
4j5Xj_YdZs06FRJnQGIBAaVv6jL47EIR5jp7fBJt6OM0QB9FL0UfxrZvZ8VVZvTyV
PO6aFXLCXdPI5ZsbIm7IVralPGbhAa0tywv8jYM1zRIblz0yHGdzHotRfuNfnbUcG
MoBwPwj54xIlJU-FBHEhNoD3qPYLT0KT0Y2t4WbgRoI12df9vo3DlPFdmyA9mYT0s
d8FJR5_D1iGk9swqYE6eBc1wt02A1_Azqp4z1Qd0cD5J9_K-S5BfOfwFB-1DcwfLe
jf5mAKfTAk7qN2R_ytSb3GhOzVUWpybQSh7DWRiwrwxA5X-3UlasrUKrPrPYt2PkC
sPm_DqC7-a5GBJpf8koUR4B58skbzrlgqYMYzPBHaCnPe0mbeNfRmYtkm5fS_AvdW
QoQPniEKQGge8eJxm3vu0xjfBroAiSghtvvrDSEii2SLIYVzN_ZI0EgMVVV5J4_vi
pKlVFBwlByYvDSLpn0B_RCbjOp79gXwKNWYZ9kElnWWbloP62P6B8oj8TKLgcnabZ
-zLlO9G7JRc-DO8HGRLewKFdRbpElVfzTH3RKdc4imgCmQLSTEn1Te7ZlKI-wGbk-
U60UI3s_crt9zuycckygiHvz-YoHaV2gcGKi3p8HqNG_qPNj3wqZaz7pWob1Xd0K1
wzReJivpzddDS9xWg7tQFxy-wS0fyvtSzB2tpZ9mvLLhrO3ZoRd805Fs4gvy3ZL9g
8siU3Y6Jx88ho6TYTfvjCaANSXV9vwEJiaP4_mv7deas1XXzhIZiVVZqACSqwKdGY
HUXP7zG7TTtn8aV-6o-3QYg6IvzVWTdikuTN-csQZufCZQIJkr_9WmAHj_zewIS75
3Rl6KfKVrFd_42pFSsCIVNB_qW0B8DbNUOlrEIJMapqEv74lOmJZcSQFK_xfDTkId
Hallam-Baker Expires 30 December 2023 [Page 73]
Internet-Draft Mesh Protocol Reference June 2023
0bGUQd1nD5jlIcJWpPxoSMVfzhPCmx8ZsIebTt_fcKSXpmNiKSNoWPspacD354k50
AC97g5ISqYrViWLhMwNFh0gxfRyjjxtHbPqT0-HlIuCG-WMSEqJnnOdFwOARb-Fwq
1teBqkicBH8-8SjvziVGJ8oU0xLIo6jjKO5uolofNUvYcfXRBaCUnb4KblZi8El0P
JKJwih8I8mg9bGjEzcjP2IFxJmWnIRn8OJWW3TlaKv8-Xjr8hLlwWk_9WDdVbFp9a
W8MO4SOaa-3w6Yg7buzlOw1Q-6i-cE6OJjtSal1bIQUsVei2pTz0KVp3sE8tDPWNB
3q5khmDiXZa0Ju5QL8h_TlQoof7ZbwKK-HycLim-O6cJ1AD0m5rYfLOblJZ7JEnUK
0jh1WjTmGb6r4pUb-WllRF_ACWtuo3gnX_A0_q-RwfPzI-DxuNzxwcm23xrUF5h2n
s_eojTVeTJSZqmvTVcyKZ8iZ4hAaaw1BpzXt0bIMisJXnCi26_5nQM0YuodsXXTny
-yLyHQaJ2TL6L9i7GLodmhJsjYEUq_y170jPAWygTFe09NT4Px2b3SMsotyTb6cwZ
AUu7uPLrC2GxwZXAtGnAMm_Da1kWLYLAjiNMY46EzKob9C4ONK1E1BTY0m6gRYI5e
J0gk96jDymmdeMZcnMG5DXh--uiCIZXJqekGaS_JPmbZG24ylT8kqHCiwdl0LxC71
Nk4ky3ypG9cQyOkMfl6N4L_OLZdh61mQpUzW8kJErrwKYCEbbDyAwgBnEpyfy25ts
CSZUhXKQovvUg8XwiO3snh7UnvdJf7naOTxoMOn05kz1-XrN3KhtRuWpJJ9IGiS9y
SYCOBClVGJCeIGtq4g457TtKPrqoyhx_RoyRmHtKM3E27Yg9dGcd437qEN5mJzojR
v4_eXYUVwr_nE9w4gb8AQOFTZ__3BvapI2-5-i_AVwuKOYr5ZEtwf3zTRExgB53Wy
J0EGf5u46s76TcgDMSCjQP53rdAspYy0B5g1kMLu6fWMs-xpRmjqnxQ3dgMvlv6WM
mOzQC0eWdcvD_LkdTQkmjgzQWdNJsik3wjlUMRzo3WKTU0h0_pm9GyAJaSHvshiql
bZk6xAXmB4ASITvm4E1KF3RAQCfe6JQ9oz3f3t1_8fgC9gXcq18Vfn1HJGbTVcxLu
59t0g68k8JJcqIPg19d94qopz38xV1yQcOIjfmBYVpfeMkrC4VG1RbvQDi6oj7iEJ
w9vyva-WEfL4k0hIARO4wQke0zM0W7lBN3CzJfmTRxwJ3TNCkUgh-ORZTjflVGGOq
gHtt6IapSjnAB1hqLHGlPwRpN8MEQBnXgGbGc5Gm9-aKwa1kdWCXjs8fxg-mXOd4X
YFH-O5RYrAb09G7eecAQWaY7ps8pASU3Wx0Afz9F3mLZlA3m4Hq_D0ZztZKvxpYtl
YBmp4mEva2m_AWDNbaIBsY73lyDQ"
],
"Identifier":"MAOY-3KTL-BIW6-BS7V-EANA-AZTL-5Q2Y"}}
]},
"MessageId":"MAQQ-DQZI-2WLP-3E5Y-IMGT-PLIE-MJ2S"}}
9.1.4. Phase 4
The device periodically polls for completion of the connection
request using the Complete transaction.
To provide a final check on the process, the command line tool
presents the UDF of the account profile to which the device has
connected if successful:
Alice3> meshman device complete
Device UDF = MBXV-SIBF-4XEW-4EVE-7URW-F6VT-NTX3
Account = alice@example.com
Account UDF = MB3T-WIPZ-JRCW-QZFM-SCQL-OVVO-AHO2
Alice3> meshman account sync
The completion request specifies the witness value for the
transaction whose completion is being queried:
Hallam-Baker Expires 30 December 2023 [Page 74]
Internet-Draft Mesh Protocol Reference June 2023
{
"CompleteRequest":{
"AccountAddress":"alice@example.com",
"ResponseID":"MAQQ-DQZI-2WLP-3E5Y-IMGT-PLIE-MJ2S"}}
The Service responds to the complete request by checking to see if an
entry has been added to the local spool. If so, this contains the
RespondConnection message created by the administration device.
9.2. Preconfigured (Static QR Code)
The preconfigured device connection interaction is used to connect
devices that lack affordances such as a display or a keyboard. It is
also known as the static QR code interaction because a static QR code
printed on the device itself is used to connect it to a user's
account.
*Future*: Note that this interaction is likely to be changed
substantially in future revisions of the specification and the Claim/
PollClaim mechanism removed and replaced with a messaging based
approach.
The interaction has five phases:
Phase 1: Preconfiguration The device to be onboarded is
preconfigured with a ProfileDevice and private key information and
a DeviceDescription posted to a publication service. This process
is typically performed during manufacture. An EARL providing the
ability to locate and decrypt the description is printed on the
device itself as a QR code.
Phase 2: Device description acquisition The administration device
acquiring the onboarding device scans the QR code on the device
and uses this information to obtain the device description by
means of a Claim operation described above as described in the
Device Description.
Phase 3: Administration Device Acceptance This phase is performed in
the same manner as the Dynamic QR Code (PIN) Authenticated
interaction except that the administration device MAY advise the
device that a connection request is being made by additional means
described in the device description (e.g. WiFi, Bluetooth).
Phase 4: Poll Claim Notification When connected to a network, the
preconfigured device periodically attempts to poll the connection
sources specified to find out if there is a pending request. If a
connection request is posted, the device decrypts it to allow it
to complete the connection process.
Hallam-Baker Expires 30 December 2023 [Page 75]
Internet-Draft Mesh Protocol Reference June 2023
Phase 5: Onboarding Device Completion This phase is performed in the
same manner as the Dynamic QR Code (PIN) Authenticated interaction
except that the administration device requires notice that of the
pending connection request.
The main differences between this connection interaction and the
witness/PIN connection interactions are that the device is
preconfigured with the device profile at the time of manufacture and
the onboarding device MAY be acquiring network configuration
information during the connection process.
9.2.1. Phase 1
The manufacturer preconfigures the device
Maker> meshman device preconfig
Device UDF: MBAI-IMKY-GI2T-D472-4VP5-SKRF-ZXYW
File: ECHI-CYLR-Y22Q-6OME-OAWV-WIQD-YM.medk
This results in the creation of a primary secret which is used to
compute a ProfileDevice and corresponding connection records signed
by the manufacturer's administrator key.
The data is combined to create a DevicePreconfiguration record that
is provisioned to the firmware of the device being preconfigured.
{
"DevicePreconfigurationPrivate":{
"EnvelopedConnectionDevice":[{
"dig":"S512",
"ContentMetaData":"ewogICJNZXNzYWdlVHlwZSI6ICJDb25uZWN0aW
9uRGV2aWNlIiwKICAiY3R5IjogImFwcGxpY2F0aW9uL21tbS9vYmplY3QiLAogICJ
DcmVhdGVkIjogIjIwMjMtMDYtMjhUMTc6MDA6NTBaIn0"},
"ewogICJDb25uZWN0aW9uRGV2aWNlIjogewogICAgIlNpZ25hdHVyZSI6IH
sKICAgICAgIlVkZiI6ICJNQ1JQLTdPUVAtTFpFRy1LREhULVdUTlEtSlM0QS1QR0Z
SIiwKICAgICAgIlB1YmxpY1BhcmFtZXRlcnMiOiB7CiAgICAgICAgIlB1YmxpY0tl
eUVDREgiOiB7CiAgICAgICAgICAiY3J2IjogIkVkNDQ4IiwKICAgICAgICAgICJQd
WJsaWMiOiAiVjFQdS1FQTE5Z1ZUOG5ibHMyeWgweUNmdUdENVRvaUhHeWY4czBsdj
BBSVdocUdENzhvVAogIHBGRTIzUk5TRVdWczQtWFgtbnB3ekRFQSJ9fX0sCiAgICA
iRW5jcnlwdGlvbiI6IHsKICAgICAgIlVkZiI6ICJNREY0LUNNQ1EtQktRWC0yUDZQ
LVAySzItMjdVRC03QUdSIiwKICAgICAgIlB1YmxpY1BhcmFtZXRlcnMiOiB7CiAgI
CAgICAgIlB1YmxpY0tleUVDREgiOiB7CiAgICAgICAgICAiY3J2IjogIlg0NDgiLA
ogICAgICAgICAgIlB1YmxpYyI6ICJGOEI0ZW9YSXZ6X0txSGplckZybkRqbkdjR3J
jVDlYOTM0MnQ2WEpNeS1VY1FXRUt6clVNCiAgRGE5STFTUUljV0xESGIyQUJtTUZK
ZmFBIn19fSwKICAgICJBdXRoZW50aWNhdGlvbiI6IHsKICAgICAgIlVkZiI6ICJNR
EY0LUNNQ1EtQktRWC0yUDZQLVAySzItMjdVRC03QUdSIiwKICAgICAgIlB1YmxpY1
BhcmFtZXRlcnMiOiB7CiAgICAgICAgIlB1YmxpY0tleUVDREgiOiB7CiAgICAgICA
gICAiY3J2IjogIlg0NDgiLAogICAgICAgICAgIlB1YmxpYyI6ICJGOEI0ZW9YSXZ6
Hallam-Baker Expires 30 December 2023 [Page 76]
Internet-Draft Mesh Protocol Reference June 2023
X0txSGplckZybkRqbkdjR3JjVDlYOTM0MnQ2WEpNeS1VY1FXRUt6clVNCiAgRGE5S
TFTUUljV0xESGIyQUJtTUZKZmFBIn19fX19",
{
"signatures":[{
"alg":"S512",
"kid":"MAN2-ANEE-HJR4-I4T2-PKID-AZ4K-ESR4",
"signature":"CUZYibn1PlgpCZuoqiKFZT1AKXDFe3EEmuSaTKoo
TRH86oVdEeYNcVgzzn7sjFvO0TqDUvGK6saAcRsKDjTharVnLx3TnVHRmofUN5iqK
yu9RwwC16bdvsOV4W7j7OhHrjC41Drp-MPozT3bHfaG7j0A"}
],
"PayloadDigest":"VHfvwZ_1GC1Q40Q1-Qv2rZatLkVyEiGTjZi7-JMN
dJ7QGF7My1VdsepgSoSc1Gslm8fvFz2NlKMPA-LCxlPovg"}
],
"EnvelopedConnectionService":[{
"dig":"S512",
"ContentMetaData":"ewogICJNZXNzYWdlVHlwZSI6ICJDb25uZWN0aW
9uU2VydmljZSIsCiAgImN0eSI6ICJhcHBsaWNhdGlvbi9tbW0vb2JqZWN0IiwKICA
iQ3JlYXRlZCI6ICIyMDIzLTA2LTI4VDE3OjAwOjUwWiJ9"},
"ewogICJDb25uZWN0aW9uU2VydmljZSI6IHsKICAgICJBdXRoZW50aWNhdG
lvbiI6IHsKICAgICAgIlVkZiI6ICJNREY0LUNNQ1EtQktRWC0yUDZQLVAySzItMjd
VRC03QUdSIiwKICAgICAgIlB1YmxpY1BhcmFtZXRlcnMiOiB7CiAgICAgICAgIlB1
YmxpY0tleUVDREgiOiB7CiAgICAgICAgICAiY3J2IjogIlg0NDgiLAogICAgICAgI
CAgIlB1YmxpYyI6ICJGOEI0ZW9YSXZ6X0txSGplckZybkRqbkdjR3JjVDlYOTM0Mn
Q2WEpNeS1VY1FXRUt6clVNCiAgRGE5STFTUUljV0xESGIyQUJtTUZKZmFBIn19fX1
9",
{
"signatures":[{
"alg":"S512",
"kid":"MAN2-ANEE-HJR4-I4T2-PKID-AZ4K-ESR4",
"signature":"wYdQgPUrZcRuEvtZX55jZ-5aTnf5xN1TZ6pNHTD1
0y3wlEXgKRP0KsMOLNRqZAo7eblK8NvsxVcAcQ9c8oWiqffZ6gDh1wH78XCreEeA_
o62KkaYnN7rhcJ-4veoqc4Kz8du1xCRRjKDC0Wi7EqBfBsA"}
],
"PayloadDigest":"YyVytW08cXC2UlAnQgNVkhi6_2ab5Gmy90WzFzBG
-bDKpzRgbiK2vuaQpVlIRdZ5PYVeeO1QtGnu877s08E3Yg"}
],
"PrivateKey":{
"PrivateKeyUDF":{
"PrivateValue":"ZAAQ-BIPI-QZV3-UXRZ-TRIO-S5XC-GEOJ-GELH-TXM
6-CBIN-QKF3-AWWC-HTOO-DJOG",
"KeyType":"MeshProfileDevice"}},
"ConnectUri":"mcu://maker@example.com/ECHI-CYLR-Y22Q-6OME-OAWV-
WIQD-YM",
"EnvelopedProfileDevice":[{
"EnvelopeId":"MBAI-IMKY-GI2T-D472-4VP5-SKRF-ZXYW",
"dig":"S512",
"ContentMetaData":"ewogICJVbmlxdWVJZCI6ICJNQkFJLUlNS1ktR0
kyVC1ENDcyLTRWUDUtU0tSRi1aWFlXIiwKICAiTWVzc2FnZVR5cGUiOiAiUHJvZml
Hallam-Baker Expires 30 December 2023 [Page 77]
Internet-Draft Mesh Protocol Reference June 2023
sZURldmljZSIsCiAgImN0eSI6ICJhcHBsaWNhdGlvbi9tbW0vb2JqZWN0IiwKICAi
Q3JlYXRlZCI6ICIyMDIzLTA2LTI4VDE3OjAwOjUwWiJ9"},
"ewogICJQcm9maWxlRGV2aWNlIjogewogICAgIkVuY3J5cHRpb24iOiB7Ci
AgICAgICJVZGYiOiAiTURGNC1DTUNRLUJLUVgtMlA2UC1QMksyLTI3VUQtN0FHUiI
sCiAgICAgICJQdWJsaWNQYXJhbWV0ZXJzIjogewogICAgICAgICJQdWJsaWNLZXlF
Q0RIIjogewogICAgICAgICAgImNydiI6ICJYNDQ4IiwKICAgICAgICAgICJQdWJsa
WMiOiAiRjhCNGVvWEl2el9LcUhqZXJGcm5Eam5HY0dyY1Q5WDkzNDJ0NlhKTXktVW
NRV0VLenJVTQogIERhOUkxU1FJY1dMREhiMkFCbU1GSmZhQSJ9fX0sCiAgICAiU2l
nbmF0dXJlIjogewogICAgICAiVWRmIjogIk1DUlAtN09RUC1MWkVHLUtESFQtV1RO
US1KUzRBLVBHRlIiLAogICAgICAiUHVibGljUGFyYW1ldGVycyI6IHsKICAgICAgI
CAiUHVibGljS2V5RUNESCI6IHsKICAgICAgICAgICJjcnYiOiAiRWQ0NDgiLAogIC
AgICAgICAgIlB1YmxpYyI6ICJWMVB1LUVBMTlnVlQ4bmJsczJ5aDB5Q2Z1R0Q1VG9
pSEd5ZjhzMGx2MEFJV2hxR0Q3OG9UCiAgcEZFMjNSTlNFV1ZzNC1YWC1ucHd6REVB
In19fSwKICAgICJBdXRoZW50aWNhdGlvbiI6IHsKICAgICAgIlVkZiI6ICJNQjNUL
VlNTVYtV0FCVi1KM1lQLU9ZTEItWUFBSS1RRkQyIiwKICAgICAgIlB1YmxpY1Bhcm
FtZXRlcnMiOiB7CiAgICAgICAgIlB1YmxpY0tleUVDREgiOiB7CiAgICAgICAgICA
iY3J2IjogIlg0NDgiLAogICAgICAgICAgIlB1YmxpYyI6ICJBQ2ptd2NMUVVlOGk1
UnVZUEZPSFhCTHlYRkN6RVcyb0lkUHh5Wk9mYlN2SEI0WUlEOUhqCiAgMHRsM0lad
lJQdjlUc25Pc2hpZWRlMDJBIn19fSwKICAgICJQcm9maWxlU2lnbmF0dXJlIjogew
ogICAgICAiVWRmIjogIk1CQUktSU1LWS1HSTJULUQ0NzItNFZQNS1TS1JGLVpYWVc
iLAogICAgICAiUHVibGljUGFyYW1ldGVycyI6IHsKICAgICAgICAiUHVibGljS2V5
RUNESCI6IHsKICAgICAgICAgICJjcnYiOiAiRWQ0NDgiLAogICAgICAgICAgIlB1Y
mxpYyI6ICJkdTBFenhUdEZWa3BqWnphTi13LXBkRlFZMUpPWDRrQmlyX0pVUEdoQ3
M3SzlELUpqTmV1CiAgNjdtMDcxR3AxSG9yZF9LeUJWSW8wWmtBIn19fX19",
{
"signatures":[{
"alg":"S512",
"kid":"MBAI-IMKY-GI2T-D472-4VP5-SKRF-ZXYW",
"signature":"7ECNMccaM24RWFOoJJVU55zb1XfgLFisbc15VIVd
B_k6xeVGmpchZtgVrdeDjHgpesIqgJmbB7yAdPoIEusSu8pgY_Oc6BjMARJYAS9YW
bfE4UX2HBlWViyY7I2RUM0_VvcOgt6Fc3XMXCtvbsAG4gwA"}
],
"PayloadDigest":"xalDY6zOXjHmqlXWGKty0QkSsPfDQ5tuDHY-Tm8R
e7UuxEfjvZnpTBtes9Etx86yn55D24AGSF199ejrRu8o5A"}
]}}
An EARL is created specifying the means by which an administration
device can acquire the information required to complete a connection
to the device:
QR = {Connect.ConnectEARL}
The preconfigured ProfileDevice is encrypted under the encryption key
and published to the location key derived from the EARL.
Hallam-Baker Expires 30 December 2023 [Page 78]
Internet-Draft Mesh Protocol Reference June 2023
9.2.2. Phase 2 & 3
The administration device scans the QR code and obtains the Device
Description using the Claim operation as shown in section $$$$. The
administration device creates the ActivationDevice and
CatalogedDevice records and populates the service as before.
Alice> meshman account connect ^
mcu://maker@example.com/ECHI-CYLR-Y22Q-6OME-OAWV-WIQD-YM /web
9.2.3. Phase 4
The device polls the publication service until a claim message is
returned.
Alice4> meshman device complete
Device UDF = MBAI-IMKY-GI2T-D472-4VP5-SKRF-ZXYW
Account = alice@example.com
Account UDF = MB3T-WIPZ-JRCW-QZFM-SCQL-OVVO-AHO2
9.2.4. Phase 5
Having been advised that an account has published a claim to bind to
it, the device posts a connection Complete request to the specified
account and completes the connection process as before.
10. Protocol Schema
HTTP Well Known Service Prefix: /.well-known/mmm
Every Mesh Portal Service transaction consists of exactly one request
followed by exactly one response. Mesh Service transactions MAY
cause modification of the data stored in the Mesh Service or the Mesh
itself but do not cause changes to the connection state. The
protocol itself is thus idempotent. There is no set sequence in
which operations are required to be performed. It is not necessary
to perform a Hello transaction prior to any other transaction.
10.1. Request Messages
A Mesh Portal Service request consists of a payload object that
inherits from the MeshRequest class. When using the HTTP binding,
the request MUST specify the portal DNS address in the HTTP Host
field.
Hallam-Baker Expires 30 December 2023 [Page 79]
Internet-Draft Mesh Protocol Reference June 2023
10.1.1. Message: MeshRequest
Base class for all request messages.
[No fields]
10.1.2. Message: MeshRequestUser
Base class for all request messages made by a user.
Inherits: MeshRequest
Account: String (Optional) The fully qualified account name
(including DNS address) to which the request is directed.
Capability: String (Optional) The identifier of the capability under
which access is claimed.
EnvelopedProfileDevice: Enveloped (Optional) Device profile of the
device making the request.
10.2. Response Messages
A Mesh Portal Service response consists of a payload object that
inherits from the MeshResponse class. When using the HTTP binding,
the response SHOULD report the Status response code in the HTTP
response message. However the response code returned in the payload
object MUST always be considered authoritative.
10.2.1. Message: MeshResponse
Base class for all response messages. Contains only the status code
and status description fields.
[No fields]
10.3. Imported Objects
The Mesh Service protocol makes use of JSON objects defined in the
JOSE Signatgure and Encryption specifications and in the DARE Data At
Rest Encryption extensions to JOSE.
10.4. Common Structures
The following common structures are used in the protocol messages:
Hallam-Baker Expires 30 December 2023 [Page 80]
Internet-Draft Mesh Protocol Reference June 2023
10.4.1. Structure: KeyValue
Describes a Key/Value structure used to make queries for records
matching one or more selection criteria.
Key: String (Optional) The data retrieval key.
Value: String (Optional) The data value to match.
10.4.2. Structure: ConstraintsSelect
Specifies constraints to be applied to a search result. These allow
a client to limit the number of records returned, the quantity of
data returned, the earliest and latest data returned, etc.
Store: String (Optional) The container to be searched.
IndexMin: Integer (Optional) Only return objects with an index value
that is equal to or higher than the value specified.
IndexMax: Integer (Optional) Only return objects with an index value
that is equal to or lower than the value specified.
NotBefore: DateTime (Optional) Only data published on or after the
specified time instant is requested.
Before: DateTime (Optional) Only data published before the specified
time instant is requested. This excludes data published at the
specified time instant.
PageKey: String (Optional) Specifies a page key returned in a
previous search operation in which the number of responses
exceeded the specified bounds.
When a page key is specified, all the other search parameters
except for MaxEntries and MaxBytes are ignored and the service
returns the next set of data responding to the earlier query.
10.4.3. Structure: ConstraintsData
Specifies constraints on the data to be sent.
MaxEntries: Integer (Optional) Maximum number of entries to send.
BytesOffset: Integer (Optional) Specifies an offset to be applied to
the payload data before it is sent. This allows large payloads to
be transferred incrementally.
Hallam-Baker Expires 30 December 2023 [Page 81]
Internet-Draft Mesh Protocol Reference June 2023
BytesMax: Integer (Optional) Maximum number of payload bytes to
send.
Header: Boolean (Optional) Return the entry header
Payload: Boolean (Optional) Return the entry payload
Trailer: Boolean (Optional) Return the entry trailer
10.4.4. Structure: PolicyAccount
Describes the account creation policy including constraints on
account names, whether there is an open account creation policy, etc.
Minimum: Integer (Optional) Specifies the minimum length of an
account name.
Maximum: Integer (Optional) Specifies the maximum length of an
account name.
InvalidCharacters: String (Optional) A list of characters that the
service does not accept in account names. The list of characters
MAY not be exhaustive but SHOULD include any illegal characters in
the proposed account name.
10.4.5. Structure: StoreStatus
Store: String (Optional)
Index: Integer (Optional)
Digest: Binary (Optional) In a status response, the apex digest
value of the store whose status is reported.
10.4.6. Structure: StoreUpdate
Inherits: StoreStatus
Envelopes: DareEnvelope [0..Many] The entries to be uploaded.
Partial: Boolean (Optional) If false, the store update does not
contain the last index entry in the store.
FinalIndex: Integer (Optional) If the value Partial is true, this
value MUST specify the index value of the last entry in the store.
Hallam-Baker Expires 30 December 2023 [Page 82]
Internet-Draft Mesh Protocol Reference June 2023
10.5. Transaction: Hello
Request: HelloRequest
Response: MeshHelloResponse
Report service and version information.
The Hello transaction provides a means of determining which protocol
versions, message encodings and transport protocols are supported by
the service.
The PostConstraints field MAY be used to advise senders of a maximum
size of payload that MAY be sent in an initial Post request.
10.5.1. Message: MeshHelloRequest
CallsignBinding: CallsignBinding (Optional) Contains a proposed
callsign binding to the account.
10.5.2. Message: MeshHelloResponse
ConstraintsUpdate: ConstraintsData (Optional) Specifies the default
data constraints for updates.
ConstraintsPost: ConstraintsData (Optional) Specifies the default
data constraints for message senders.
PolicyAccount: PolicyAccount (Optional) Specifies the account
creation policy
EnvelopedProfileService: Enveloped (Optional) The enveloped master
profile of the service.
CallsignBinding: CallsignBinding (Optional) If the request specifies
a callsign binding, returns a proposed binding for the requested
callsign.
10.6. Transaction: BindAccount
Request: BindRequest
Response: BindResponse
Request binding of an account to the service. This method is called
during account creation and binding.
Hallam-Baker Expires 30 December 2023 [Page 83]
Internet-Draft Mesh Protocol Reference June 2023
The operation is called Bind rather than Create because the account
is created by the user, not the service.
10.6.1. Message: BindRequest
Request binding of an account to a service address.
Inherits: MeshRequest
AccountAddress: String (Optional) The service account to bind to.
EnvelopedProfileAccount: Enveloped (Optional) The signed assertion
describing the account.
EnvelopedCallsignBinding: Enveloped [0..Many] Contains one or more
bindings of a callsign to the account.
10.6.2. Message: BindResponse
Inherits: MeshResponse
Reports the success or failure of a Create transaction.
Reason: String (Optional) Text explaining the status of the creation
request.
URL: String (Optional) A URL to which the user is directed to
complete the account creation request.
EnvelopedAccountHostAssignment: Enveloped (Optional) The enveloped
assignment describing how the client should discover the host and
encrypt data to it.
10.7. Transaction: UnbindAccount
Request: UnbindRequest
Response: UnbindResponse
Request deletion of a service account.
10.7.1. Message: UnbindRequest
Request creation of a new portal account. The request specifies the
requested account identifier and the Mesh profile to be associated
with the account.
Inherits: MeshRequestUser
Hallam-Baker Expires 30 December 2023 [Page 84]
Internet-Draft Mesh Protocol Reference June 2023
[No fields]
10.7.2. Message: UnbindResponse
Inherits: MeshResponse
Reports the success or failure of a Delete transaction.
[No fields]
10.8. Transaction: Connect
Request: ConnectRequest
Response: ConnectResponse
Request information necessary to begin making a connection request.
10.8.1. Message: ConnectRequest
Inherits: MeshRequest
EnvelopedRequestConnection: Enveloped (Optional) The connection
request generated by the client
Rights: String [0..Many] List of named access rights.
10.8.2. Message: ConnectResponse
Inherits: MeshResponse
EnvelopedAcknowledgeConnection: Enveloped (Optional) The connection
request generated by the client
EnvelopedProfileAccount: Enveloped (Optional) The user profile that
provides the root of trust for this Mesh
10.9. Transaction: Complete
Request: CompleteRequest
Response: CompleteResponse
10.9.1. Message: CompleteRequest
Inherits: StatusRequest
AccountAddress: String (Optional)
Hallam-Baker Expires 30 December 2023 [Page 85]
Internet-Draft Mesh Protocol Reference June 2023
ResponseID: String (Optional)
10.9.2. Message: CompleteResponse
Inherits: MeshResponse
EnvelopedRespondConnection: Enveloped (Optional) The signed
assertion describing the result of the connect request
EnvelopedAccountHostAssignment: Enveloped (Optional) The enveloped
assignment describing how the client should discover the host and
encrypt data to it.
10.10. Transaction: Status
Request: StatusRequest
Response: StatusResponse
10.10.1. Message: StatusRequest
Inherits: MeshRequestUser
DeviceUDF: String (Optional)
CatalogedDeviceDigest: String (Optional)
Catalogs: String [0..Many]
Spools: String [0..Many]
Services: String [0..Many]
DeviceStatus: Boolean (Optional)
10.10.2. Message: StatusResponse
Inherits: MeshResponse
Bitmask: Binary (Optional)
EnvelopedProfileAccount: Enveloped (Optional) The account profile
providing the root of trust for this account.
EnvelopedCatalogedDevice: Enveloped (Optional) The catalog device
entry
CatalogedDeviceDigest: String (Optional)
Hallam-Baker Expires 30 December 2023 [Page 86]
Internet-Draft Mesh Protocol Reference June 2023
StoreStatus: StoreStatus [0..Many]
EnvelopedAccountHostAssignment: Enveloped (Optional) The enveloped
assignment describing how the client should discover the host and
encrypt data to it.
Services: ServiceAccessToken [0..Many] A series of access tokens for
the requested services.
DeviceStatuses: DeviceStatus [0..Many]
10.10.3. Structure: DeviceStatus
Id: String (Optional)
Status: String (Optional)
Comment: String (Optional)
LastConnected: DateTime (Optional)
10.11. Transaction: Download
Request: DownloadRequest
Response: DownloadResponse
Request objects from the specified container with the specified
search criteria.
10.11.1. Message: DownloadRequest
Inherits: MeshRequestUser
Request objects from the specified container(s).
A client MAY request only objects matching specified search criteria
be returned and MAY request that only specific fields or parts of the
payload be returned.
MaxResults: Integer (Optional) The maximum number of results to be
returned.
DeviceUDF: String (Optional)
CatalogedDeviceDigest: String (Optional)
Select: ConstraintsSelect [0..Many] Specifies constraints to be
Hallam-Baker Expires 30 December 2023 [Page 87]
Internet-Draft Mesh Protocol Reference June 2023
applied to a search result. These allow a client to limit the
number of records returned, the quantity of data returned, the
earliest and latest data returned, etc.
ConstraintsPost: ConstraintsData (Optional) Specifies the data
constraints to be applied to the responses.
10.11.2. Message: DownloadResponse
Inherits: MeshResponse
Return the set of objects requested.
Services SHOULD NOT return a response that is disproportionately
large relative to the speed of the network connection without a clear
indication from the client that it is relevant. A service MAY limit
the number of objects returned. A service MAY limit the scope of
each response.
Updates: StoreUpdate [0..Many] The updated data
CatalogedDeviceDigest: String (Optional)
EnvelopedCatalogedDevice: Enveloped (Optional) The catalog device
entry. This is only returned if the
10.12. Transaction: Transact
Request: TransactRequest
Response: TransactResponse
Attempt an atomic transaction on the containers and spools associated
with an account.
10.12.1. Message: TransactRequest
Inherits: MeshRequestUser
Upload entries to a container. This request is only valid if it is
issued by the owner of the account
Updates: StoreUpdate [0..Many] The data to be updated
Accounts: String [0..Many] The account(s) to which the request is
directed.
Outbound: Enveloped [0..Many] The messages to be sent to other
Hallam-Baker Expires 30 December 2023 [Page 88]
Internet-Draft Mesh Protocol Reference June 2023
accounts
Inbound: Enveloped [0..Many] Messages to be appended to the user's
inbound spool. this is typically used to post notifications to the
user to mark messages as having been read or responded to.
Local: Enveloped [0..Many] Messages to be appended to the user's
local spool. This is used to allow connecting devices to collect
activation messages before they have connected to the mesh.
10.12.2. Message: TransactResponse
Inherits: MeshResponse
Response to an upload request.
Bitmask: Binary (Optional)
Entries: EntryResponse [0..Many] The responses to the entries.
ConstraintsData: ConstraintsData (Optional) If the upload request
contains redacted entries, specifies constraints that apply to the
redacted entries as a group. Thus the total payloads of all the
messages must not exceed the specified value.
10.12.3. Structure: EntryResponse
IndexRequest: Integer (Optional) The index value of the entry in the
request.
IndexContainer: Integer (Optional) The index value assigned to the
entry in the container.
Result: String (Optional) Specifies the result of attempting to add
the entry to a catalog or spool. Valid values for a message are
'Accept', 'Reject'. Valid values for an entry are 'Accept',
'Reject' and 'Conflict'.
ConstraintsData: ConstraintsData (Optional) If the entry was
redacted, specifies constraints that apply to the redacted entries
as a group. Thus the total payloads of all the messages must not
exceed the specified value.
10.13. Transaction: PublicRead
Request: PublicRequest
Response: DownloadResponse
Hallam-Baker Expires 30 December 2023 [Page 89]
Internet-Draft Mesh Protocol Reference June 2023
Request objects from the specified container with the specified
search criteria.
10.13.1. Message: PublicRequest
Inherits: DownloadRequest
Request download from a public store (which may be encrypted).
[No fields]
10.14. Transaction: Post
Request: PostRequest
Response: PostResponse
Request to post to a spool from an external party. The request and
response messages are extensions of the corresponding messages for
the Upload transaction. It is expected that additional fields will
be added as the need arises.
10.14.1. Message: PostRequest
Inherits: MeshRequest
Accounts: String [0..Many] The account(s) to which the request is
directed.
Messages: Enveloped [0..Many] The messages to be sent to the
addresses specified in Accounts.
10.14.2. Message: PostResponse
Inherits: TransactResponse
[No fields]
10.15. Transaction: Claim
Request: ClaimRequest
Response: ClaimResponse
Claim a publication
Hallam-Baker Expires 30 December 2023 [Page 90]
Internet-Draft Mesh Protocol Reference June 2023
10.15.1. Message: ClaimRequest
Inherits: MeshRequest
EnvelopedMessageClaim: Enveloped (Optional) The claim message
10.15.2. Message: ClaimResponse
Inherits: MeshResponse
CatalogedPublication: CatalogedPublication (Optional) The encrypted
device profile
10.16. Transaction: PollClaim
Request: PollClaimRequest
Response: PollClaimResponse
Check party making claim
10.16.1. Message: PollClaimRequest
Inherits: MeshRequest
PublicationId: String (Optional) The envelope identifier formed from
the PublicationId.
TargetAccountAddress: String (Optional) Account to which the claim
is directed
10.16.2. Message: PollClaimResponse
Inherits: MeshResponse
EnvelopedMessage: Enveloped (Optional) The claim message
10.16.3. Structure: CryptographicOperation
KeyId: String (Optional) The key identifier
KeyCoefficient: Binary (Optional) Lagrange coefficient multiplier to
be applied to the private key
10.16.4. Structure: CryptographicOperationSign
Inherits: CryptographicOperation
Hallam-Baker Expires 30 December 2023 [Page 91]
Internet-Draft Mesh Protocol Reference June 2023
Data: Binary (Optional) The data to sign
PartialR: Binary (Optional) Contribution to the R offset.
10.16.5. Structure: CryptographicOperationKeyAgreement
Inherits: CryptographicOperation
[No fields]
10.16.6. Structure: CryptographicOperationGenerate
Inherits: CryptographicOperation
[No fields]
10.16.7. Structure: CryptographicOperationShare
Inherits: CryptographicOperation
Threshold: Integer (Optional)
Shares: Integer (Optional)
10.16.8. Structure: CryptographicResult
Error: String (Optional)
10.16.9. Structure: CryptographicResultKeyAgreement
Inherits: CryptographicResult
[No fields]
10.16.10. Structure: CryptographicResultShare
Inherits: CryptographicResult
[No fields]
10.17. Transaction: Operate
Request: OperateRequest
Response: OperateResponse
Perform a set of cryptographic operations
Hallam-Baker Expires 30 December 2023 [Page 92]
Internet-Draft Mesh Protocol Reference June 2023
10.17.1. Message: OperateRequest
Inherits: MeshRequest
AccountAddress: String (Optional) The service account the capability
is bound to
10.17.2. Message: OperateResponse
Inherits: MeshResponse
[No fields]
11. Security Considerations
The security considerations for use and implementation of Mesh
services and applications are described in the Mesh Security
Considerations guide [draft-hallambaker-mesh-security].
12. IANA Considerations
All the IANA considerations for the Mesh documents are specified in
this document
13. Acknowledgements
A list of people who have contributed to the design of the Mesh is
presented in [draft-hallambaker-mesh-architecture].
14. Normative References
[draft-hallambaker-jsonbcd]
Hallam-Baker, P., "Binary Encodings for JavaScript Object
Notation: JSON-B, JSON-C, JSON-D", Work in Progress,
Internet-Draft, draft-hallambaker-jsonbcd-23, 23 October
2022, <https://datatracker.ietf.org/doc/html/draft-
hallambaker-jsonbcd-23>.
[draft-hallambaker-mesh-architecture]
Hallam-Baker, P., "Mathematical Mesh 3.0 Part I:
Architecture Guide", Work in Progress, Internet-Draft,
draft-hallambaker-mesh-architecture-21, 23 October 2022,
<https://datatracker.ietf.org/doc/html/draft-hallambaker-
mesh-architecture-21>.
[draft-hallambaker-mesh-rud]
Hallam-Baker, P., "Mathematical Mesh 3.0 Part VI: Reliable
User Datagram", Work in Progress, Internet-Draft, draft-
Hallam-Baker Expires 30 December 2023 [Page 93]
Internet-Draft Mesh Protocol Reference June 2023
hallambaker-mesh-rud-02, 23 October 2022,
<https://datatracker.ietf.org/doc/html/draft-hallambaker-
mesh-rud-02>.
[draft-hallambaker-mesh-schema]
Hallam-Baker, P., "Mathematical Mesh 3.0 Part IV: Schema
Reference", Work in Progress, Internet-Draft, draft-
hallambaker-mesh-schema-11, 23 October 2022,
<https://datatracker.ietf.org/doc/html/draft-hallambaker-
mesh-schema-11>.
[draft-hallambaker-mesh-security]
Hallam-Baker, P., "Mathematical Mesh 3.0 Part IX Security
Considerations", Work in Progress, Internet-Draft, draft-
hallambaker-mesh-security-09, 20 April 2022,
<https://datatracker.ietf.org/doc/html/draft-hallambaker-
mesh-security-09>.
[draft-hallambaker-mesh-udf]
Hallam-Baker, P., "Mathematical Mesh 3.0 Part II: Uniform
Data Fingerprint.", Work in Progress, Internet-Draft,
draft-hallambaker-mesh-udf-17, 23 October 2022,
<https://datatracker.ietf.org/doc/html/draft-hallambaker-
mesh-udf-17>.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/rfc/rfc2119>.
15. Informative References
[draft-hallambaker-mesh-developer]
Hallam-Baker, P., "Mathematical Mesh: Reference
Implementation", Work in Progress, Internet-Draft, draft-
hallambaker-mesh-developer-10, 27 July 2020,
<https://datatracker.ietf.org/doc/html/draft-hallambaker-
mesh-developer-10>.
Hallam-Baker Expires 30 December 2023 [Page 94]