-
Notifications
You must be signed in to change notification settings - Fork 787
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Node ID persistence #3816
Merged
Merged
Node ID persistence #3816
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
dsiganos
added
the
functionality quality improvements
This item indicates the need for or supplies a better way to implement existing functionality
label
May 12, 2022
dsiganos
force-pushed
the
persistent_node_id
branch
2 times, most recently
from
May 12, 2022 02:53
2d49744
to
8ab5bd0
Compare
After this change, node IDs will persist on the disk file system and reused. The node ID will not be changing after every restart. This will help to more reliably track PRs. The node can be forced to generate a new ID by deleting the file: node_id_private.key Note that this change does not prevent the man in the middle attack. However, it makes it possible to detect telemetry spoofing. Sites like nanolooker and nanoticker can maintain associations between node ID and PR and only accept a telemetry packet, if the telemetry message is signed by the known Node ID.
dsiganos
force-pushed
the
persistent_node_id
branch
from
May 12, 2022 03:16
8ab5bd0
to
ab2a3f8
Compare
Fixing build error using boost::path.
clemahieu
reviewed
May 12, 2022
nano/node/node.cpp
Outdated
{ | ||
// no node_id found, generate new one | ||
logger.always_log (boost::str (boost::format ("%1% does not exist, creating a new node_id") % node_private_key_path.string ())); | ||
nano::keypair kp = nano::keypair (); |
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.
This can be just nano::keypair kp;
clemahieu
previously approved these changes
May 12, 2022
thsfs
approved these changes
May 12, 2022
clemahieu
pushed a commit
to clemahieu/nano-node
that referenced
this pull request
May 19, 2022
* Node ID persistence After this change, node IDs will persist on the disk file system and reused. The node ID will not be changing after every restart. This will help to more reliably track PRs. The node can be forced to generate a new ID by deleting the file: node_id_private.key Note that this change does not prevent the man in the middle attack. However, it makes it possible to detect telemetry spoofing. Sites like nanolooker and nanoticker can maintain associations between node ID and PR and only accept a telemetry packet, if the telemetry message is signed by the known Node ID. Co-authored-by: clemahieu <clemahieu@gmail.com> # Conflicts: # nano/core_test/node.cpp
# for free
to join this conversation on GitHub.
Already have an account?
# to comment
Labels
functionality quality improvements
This item indicates the need for or supplies a better way to implement existing functionality
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
After this change, node IDs will persist on the disk file system and
reused. The node ID will not be changing after every restart.
This will help to more reliably track PRs.
The node can be forced to generate a new ID by deleting the file:
node_id_private.key
Note that this change does not prevent the man in the middle attack.
However, it makes it possible to detect telemetry spoofing. Sites like
nanolooker and nanoticker can maintain associations between node ID and PR
and only accept a telemetry packet, if the telemetry message is signed
by the known Node ID.