-
Notifications
You must be signed in to change notification settings - Fork 3
Finalize Section 8: Sphinx Packet Construction and Handling #202
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, i haven't reviewed the complete sphinx details as that would require me to understand it completely which i will do in due time.
| prefix the codec string with its length, encoded as a compact varint field | ||
| limited to two bytes. Regardless of the scheme used, implementations MUST | ||
| agree on the format within a deployment to ensure deterministic decoding. | ||
| - Pad the result to the maximum application message length of $3968$ bytes |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
wondering if we should define these (e.g application message length) as constants somewhere up in the spec as var names and use them. If anything changes wrt packet size then it would be easier to update the spec.
| destination address $Δ$ (extracted in step 1.) to the local Exit layer for | ||
| further processing and delivery. | ||
|
|
||
| - The Exit Layer is responsible for establishing a client-only connection and |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since exit==destination is made default approach for Logos Messaging, should we modify this to indicate the same?
Another way would be to just indicate that there are 2 exit options and mention them in a separate section.
jm-clius
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks reasonable at a high level. :) Approving to allow merging WIP.
This PR builds on PR #173 and completes the remaining construction and runtime processing logic in
Section 8of the Mix Protocol RFC. It finalizes the last steps of packet construction (Section 8.5.2 step 3. e–f) and introduces the complete mix node handler logic inSection 8.6, including intermediary and exit processing.It clearly separates construction, role determination, and processing logic.
Changes Introduced in This PR
8.5.2 Construction Steps (Final Steps Added)
8.6 Sphinx Packet Handling
Highlights