Skip to content
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

Authentication and non-repudiation of messages: Signatures - thoughts. #30

Open
stolsvik opened this issue Apr 5, 2020 · 0 comments
Open
Labels
thoughts Issues describing some thoughts around a subject

Comments

@stolsvik
Copy link
Contributor

stolsvik commented Apr 5, 2020

Each node should sign its message with its app-specific private key.

All nodes should get all other nodes public keys, but only its own private key - where "own" relates to the application. So, by invoking some method, it should get a Map of app->public key, and its own private key.

Need a "key distribution" mechanism for the private keys: This mechanism must then be able to target "apps": Only nodes of this app should get these secrets, i.e. the private key. This cannot be a claim from the app: WRONG: "I am the Bank-app, give me the Bank private key". It must be a "offering" from the key distribution: CORRECT: "Here, you are Bank-app, and here is your private key".

The public keys are much simpler, as this could basically be distributed on any public repository.

Having this in place, each node of an app could verify that a message comes from the app that it actually claims that it comes from.

And with that in place, one can then implement an "Access Control List" mechanism: "I will only accept "withdraw money" messages from these two Apps".

@stolsvik stolsvik transferred this issue from another repository Sep 27, 2021
@stolsvik stolsvik added the thoughts Issues describing some thoughts around a subject label Sep 27, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
thoughts Issues describing some thoughts around a subject
Projects
None yet
Development

No branches or pull requests

1 participant