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

❓ More details about random_seed #565

Closed
skywinder opened this issue Dec 8, 2019 · 2 comments
Closed

❓ More details about random_seed #565

skywinder opened this issue Dec 8, 2019 · 2 comments

Comments

@skywinder
Copy link

skywinder commented Dec 8, 2019

Hi.
According to manual:

Note all the contents of the .gitsecret/ folder should be checked in, /except/ the random_seed file.

  1. I didn't found information from the docs, how random_seed is using? If everything encrypted via pgp key, so why it's valuable information, that we have to hide?
  2. What happens, if we compromise this seed?

related to #144

@joshrabinowitz
Copy link
Collaborator

@skywinder , I looked into this some.

  1. random_seed is mentioned here: gnupg configuration

See also mentions of random_seed at this gnupg tutorial

The random_seed file is intended to be unique for each user (which is why it should not be checked into git), and stores entropy data for use in the next encryption, after which is it altered.

  1. If this seed is compromised, then the security of gnupg's encryption is weakened because (as I understand) by default this random_seed is used to create a salt , and if you can control the contents of random_seed, you can affect the salt. As explained in the gnupg manpage in the --no-random-seed-file explanation:

    GnuPG uses a file to store it's internal random pool over invocations.
    This makes random generation faster; however sometimes write operations
    are not desired. This option can be used to achieve that with the cost of
    slower random generation.

Let me know if you have any more questions, and if you think the docs need updating, we'd be happy to accept a PR that improves the documentation.

@skywinder
Copy link
Author

great explanation. thank you, @joshrabinowitz ! 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants