Page MenuHomeDevCentral

Use cryptographically secure pseudo-random integers
ClosedPublic

Authored by dereckson on Apr 9 2022, 12:04.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Dec 20, 13:19
Unknown Object (File)
Fri, Dec 20, 13:00
Unknown Object (File)
Wed, Dec 18, 09:09
Unknown Object (File)
Tue, Dec 17, 13:46
Unknown Object (File)
Dec 6 2024, 01:06
Unknown Object (File)
Dec 4 2024, 15:27
Unknown Object (File)
Dec 3 2024, 23:41
Unknown Object (File)
Nov 28 2024, 17:27
Subscribers
None

Details

Summary

Methods from Identifiers\Random were currently implemented using
the Mersenne Twister general-purpose pseudorandom number generator.

As randomness is often used as a source to generate credentials,
and to also offer unbiaised results for games, this changes switch
to the CSPRNG method random_int. The random_bytes method was already used.

According PHP manual, the "cryptographically secure pseudo-random number
generator (CSPRNG) API provides an easy and reliable way to generate
crypto-strong random integers and bytes for use within cryptographic contexts."

As our library is PHP 7+ (actually PHP 8.1+), the CSPRNG methods are always
available.

Test Plan

Run unit tests, no regression detected.

Diff Detail

Repository
rKERUALD Keruald libraries development repository
Lint
Lint Passed
Unit
Test Failures
Branch
random
Build Status
Buildable 4167
Build 4419: arc lint + arc unit