What is the .rnd binary in my folder?

Solution 1:

This file is used to see the entropy when using cryptographic tools, e.g. OpenSSL. You can safely delete it and there's no need to backup it.

So, why do we have it then? On most systems we don't have a lot of activity we can use as a random source and to speed up the process for generating random enough cryptographic keys, this file contains previously collected random entropy, helping in seeding. So this file is not the sole source for entropy.

And because it contains raw random data, you can't open it with a text editor. It's simply not encoded within the standard character sets, so a text editor doesn't know how to display it.

It should be readable only by the user itself, in mode 0600. If it's owned by root, you probably have run some sudo commands which keeps the $HOME variable to your regular user account. Just remove the file in that case, I'd say, as the user itself should be able to update this file. See also:

  • manpage of rand(1):

    The rand command outputs num pseudo-random bytes after seeding the
    random number generator once.  As in other openssl command line tools,
    PRNG seeding uses the file $HOME/.rnd or .rnd in addition to the files
    given in the -rand option.  A new $HOME/.rnd or .rnd file will be
    written back if enough seeding was obtained from these sources.
    
  • OpenSSL FAQ: Why do I get a "PRNG not seeded" error message?