From: shyouhei@...
Date: 2020-11-12T00:20:59+00:00
Subject: [ruby-core:100804] [Ruby master Misc#17319] Rename Random::urandom to os_random and document random data sources

Issue #17319 has been updated by shyouhei (Shyouhei Urabe).


Also until very recently (until version 5.6), Linux kernel has had distinct /dev/random and /dev/urandom.  Some people argued the difference between those two are important.  If we rename the method to `os_random`, that loses information about the randomness source.  This doesn't sound very well.

----------------------------------------
Misc #17319: Rename Random::urandom to os_random and document random data sources
https://bugs.ruby-lang.org/issues/17319#change-88446

* Author: zofrex (James Sanderson)
* Status: Open
* Priority: Normal
----------------------------------------
SecureRandom gets randomness from `Random::urandom`, which is a confusing name because `urandom` only uses /dev/urandom in some circumstances. On reading the `secure_random.rb` code this morning I got very confused how it was supporting "win32" for example, because it appears to only use openssl and /dev/urandom.

I have renamed `urandom` to `os_random`. With this change, it is much more obvious from reading `secure_random.rb` what is happening, in my opinion.

I have also added `urandom` as an alias to `os_random` so this is not a breaking change. I am not 100% sure I documented this alias correctly.

I have also updated the documentation for `os_random` (was `urandom`), `SecureRandom`, and `random_raw_seed` to reflect that there are multiple potential sources for random data, not just urandom, openssl, and win32.



-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>