Commit 011cb516 authored by Kenton Varda's avatar Kenton Varda Committed by GitHub

Fix comments about ProvisionId/RecipientId/ThirdPartyCapId

Using the `Provide` message's question ID to identify the provision doesn't work because the question ID could be freed up and re-assigned before the recipient tries to receive the provision.
parent f05559d7
...@@ -1234,8 +1234,8 @@ using ProvisionId = AnyPointer; ...@@ -1234,8 +1234,8 @@ using ProvisionId = AnyPointer;
# The information that must be sent in an `Accept` message to identify the object being accepted. # The information that must be sent in an `Accept` message to identify the object being accepted.
# #
# In a network where each vat has a public/private key pair, this could simply be the public key # In a network where each vat has a public/private key pair, this could simply be the public key
# fingerprint of the provider vat along with the question ID used in the `Provide` message sent from # fingerprint of the provider vat along with a nonce matching the one in the `RecipientId` used
# that provider. # in the `Provide` message sent from that provider.
using RecipientId = AnyPointer; using RecipientId = AnyPointer;
# **(level 3)** # **(level 3)**
...@@ -1244,8 +1244,7 @@ using RecipientId = AnyPointer; ...@@ -1244,8 +1244,7 @@ using RecipientId = AnyPointer;
# capability. # capability.
# #
# In a network where each vat has a public/private key pair, this could simply be the public key # In a network where each vat has a public/private key pair, this could simply be the public key
# fingerprint of the recipient. (CapTP also calls for a nonce to identify the object. In our # fingerprint of the recipient along with a nonce matching the one in the `ProvisionId`.
# case, the `Provide` message's `questionId` can serve as the nonce.)
using ThirdPartyCapId = AnyPointer; using ThirdPartyCapId = AnyPointer;
# **(level 3)** # **(level 3)**
...@@ -1254,8 +1253,8 @@ using ThirdPartyCapId = AnyPointer; ...@@ -1254,8 +1253,8 @@ using ThirdPartyCapId = AnyPointer;
# #
# In a network where each vat has a public/private key pair, this could be a combination of the # In a network where each vat has a public/private key pair, this could be a combination of the
# third party's public key fingerprint, hints on how to connect to the third party (e.g. an IP # third party's public key fingerprint, hints on how to connect to the third party (e.g. an IP
# address), and the question ID used in the corresponding `Provide` message sent to that third party # address), and the nonce used in the corresponding `Provide` message's `RecipientId` as sent
# (used to identify which capability to pick up). # to that third party (used to identify which capability to pick up).
using JoinKeyPart = AnyPointer; using JoinKeyPart = AnyPointer;
# **(level 4)** # **(level 4)**
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment