-
Notifications
You must be signed in to change notification settings - Fork 3
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
verify janus on client side #5
Comments
Noted. Thinking about it. |
solution: link to commit for signing gpg key (at separate repo) and include signatures installer script (an optional added layer of security) Rel ETCDEVTeam#5
The installer scripts use the ethereumproject/volunteer repo to download my signing GPG key, I've updated them to use a specific commit: https://github.com/ethereumproject/janus/blob/master/get.sh#L18. I've also provided signatures for the installer scripts themselves, which can be used similarly to the verification for the release binary itself. |
I mean this |
Currently all verification of Janus files is made by janus itself. Which means that if a hacker got access to Janus git repo, he can change verification process too, including changing PGP pubkey. So you shouldn't download and verify from same place, because if it will be compromised, it will be everything at once.
So more secure installation process should look like:
Where
.janus-gpg.txt
MUST be provided with application sources (i.e. committed into Geth/Emerald/etc).But that brings another problem, you need a versioning for that stuff. Because if you'll decide to to change your PGP key at some point, every dependent project will stop working until they will import your new key. As a workaround you can give a link pointing to a tag, instead of
master
branch. (also, just realised, a link to particular commit maybe a useful for security too, because it will be hard to forge a commit, but I don't think it supposed to be used this way)The text was updated successfully, but these errors were encountered: