[Cryptography] Keccak-based pseudo-random number generator

Howard Chu hyc at symas.com
Tue Jul 26 20:57:09 EDT 2022


Stephan Mueller wrote:
> Hi,
> 
> Using Keccak, a pseudo-random number generator / deterministic random number 
> (DRNG) generator can be created.

Just fyi, the Monero Project's PRNG also uses keccak. The wrapper is in
https://github.com/monero-project/monero/blob/master/src/crypto/random.c
and its hash_permutation function just invokes keccak in
https://github.com/monero-project/monero/blob/master/src/crypto/hash.c

> I have developed a DRNG that can be used used to generate cryptographically 
> secure random bit strings for various use cases including symmetric and 
> asymmetric key generation services. The DRNG is based on the customizable 
> extendable output function cSHAKE defined in SP800-185 which in turn is based 
> on the Keccak algorithm. The deterministic random number generator is intended 
> to support a wide range of applications and requirements, and is conservative 
> in its resource consumption.
> 
> In addition, a very similar SP800-185 KMAC-based DRNG is also implemented.
> 
> Both DRNG algorithms are fully documented and specified in [1] and [2] which 
> also provide a working copy. The documentation in [1] also provides a 
> comparison between both algorithms.
> 
> The API documentation of both algorithm implementations is given in [3] 
> supported by [4] and [5].
> 
> I would be happy to receive comments or suggestions.
> 
> [1] https://github.com/smuellerDD/leancrypto/blob/master/drng/src/
> cshake_drng.c
> 
> [2] https://github.com/smuellerDD/leancrypto/blob/master/drng/src/kmac_drng.c
> 
> [3] https://github.com/smuellerDD/leancrypto/blob/master/drng/api/lc_rng.h
> 
> [4] https://github.com/smuellerDD/leancrypto/blob/master/drng/api/
> lc_cshake256_drng.h
> 
> [5] https://github.com/smuellerDD/leancrypto/blob/master/drng/api/
> lc_kmac256_drng.h
> 
> Ciao
> Stephan
> 
> 
> _______________________________________________
> The cryptography mailing list
> cryptography at metzdowd.com
> https://www.metzdowd.com/mailman/listinfo/cryptography
> 


-- 
  -- Howard Chu
  CTO, Symas Corp.           http://www.symas.com
  Director, Highland Sun     http://highlandsun.com/hyc/
  Chief Architect, OpenLDAP  http://www.openldap.org/project/


More information about the cryptography mailing list