Skip to content
This repository has been archived by the owner on Nov 6, 2020. It is now read-only.

SecretStore: dynamically generate KeyPairs #5502

Closed
svyatonik opened this issue Apr 25, 2017 · 3 comments · Fixed by #6146
Closed

SecretStore: dynamically generate KeyPairs #5502

svyatonik opened this issue Apr 25, 2017 · 3 comments · Fixed by #6146
Assignees
Labels
F8-enhancement 🎊 An additional feature request. M4-core ⛓ Core client code / Rust. P7-nicetohave 🐕 Issue is worth doing eventually.

Comments

@svyatonik
Copy link
Collaborator

During encryption/decryption session, every KS[i] -> KS[j] message is encrypted with SHARED_KEY=GENERATE(KS[i].KeyPair.Public, KS[j].KeyPair.Public).
KeyPair.Private of KS[i] is currently stored in plain text in configuration file on KS[i].

As @keorn suggested, it would be good not to store this in plain text => suggestion is to generate these values when encryption session is initializing, so we do not need to store it in configuration files.

@svyatonik svyatonik added F8-enhancement 🎊 An additional feature request. P7-nicetohave 🐕 Issue is worth doing eventually. labels Apr 25, 2017
@svyatonik svyatonik self-assigned this Jun 30, 2017
@svyatonik
Copy link
Collaborator Author

The same key is used to confirm that we are contacting with exactly same server we want to contact => by dynamically generating this key, there will be no way to make sure this happens.
There must be another way not to store this in plain text.

@keorn
Copy link

keorn commented Jun 30, 2017

You can store the current list in a contract. Similar to ValidatorSet or enodes that @arkpar is working on.

@svyatonik
Copy link
Collaborator Author

Discussed this in private.

  1. this issue is about storing private keys in configuration files. This must be resolved as:
    1.1) every KeyServer must have corresponding account from ethstore (insert new account if not provided)
    1.2) on startup, password for this account must be provided
    1.3) use this account as KS KeyPair
  2. next issue is about maintaining list of KeyServers. It is what @keorn comment is about. I'll add a separate issue with explanation.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
F8-enhancement 🎊 An additional feature request. M4-core ⛓ Core client code / Rust. P7-nicetohave 🐕 Issue is worth doing eventually.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants