Description
In RandomStringUtils v3.16, the use of secure() vs insecure() is used to be able to choose which random generator to use. However, consider the following code path:
a) RandomStringUtils.insecure().nextAlphanumeric(length)
leads to the instance method 'nextAlphanumeric, which in turn calls:
b) static method RandomStringUtils.random(count, true, true)
which in turn calls
c) static method RandomStringUtils.secure().next(count, letters, numbers)
Conclusion: where I want to use the "insecure" option path, I end up having the call forwarded to the "secure" random provider anyway. Where I then run into the problem of having too low entropy and experiencing terrible performance.... (see LANG-1748)