RFR: 8357915: SecureRandom nextLong memory usage

Sean Mullan mullan at openjdk.org
Mon Jun 30 13:21:44 UTC 2025


On Thu, 26 Jun 2025 18:00:21 GMT, Koushik Muthukrishnan Thirupattur <duke at openjdk.org> wrote:

> SecureRandom uses straightforward implementations inherited from Random but in the process does double the memory allocations necessary.
> The delegation to SecureRandom.engineNextBytes does not provide `int` or `long` values, the caller must allocate a byte array and assemble the value itself.
> So added an implementation in SecureRandom that call nextBytes(8 bytes) and then convert that to a long.

src/java.base/share/classes/java/security/SecureRandom.java line 841:

> 839:     }
> 840: 
> 841:     @Override

This method will appear in the javadoc for `SecureRandom` now, so I think you need to add the `inheritDoc` tag to incorporate the superclass` javadoc.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/26005#discussion_r2175058965


More information about the security-dev mailing list