Skip to content
This repository has been archived by the owner on Jan 31, 2024. It is now read-only.

saidout/saidout-security-securerandom

Repository files navigation

SaidOut.Security.SecureRandom NuGet Version

Contain classes that generate random data/value using a cryptographic random number generator.


Table of Content


Classes


ISecureRandom

Name Description
GenerateRandomData Create a byte array of size with random data.
GenerateRandomValue Generate a random value in the range [min, max].

Interface is implemented by SecureRandom and SecureRandomContext.


SecureRandom

Name Description
GenerateRandomData Create a byte array of size with random data.
GenerateRandomValue Generate a random value in the range [min, max].

Generate random data/value using a new cryptographic random number generator each time it generates a random data/value.
If you need to generate multiple random data/values at the same time use SecureRandomContext.

Example

    var nonce = SecureRandom.GenerateRandomData(15);  
    var radomVal = SecureRandom.GenerateRandomValue(10, 50);  // radomVal  set to a value between 10 and 50.  

SecureRandomContext

Name Description
GenerateRandomData Create a byte array of size with random data.
GenerateRandomValue Generate a random value in the range [min, max].

Generate random data/value using the same cryptographic random number generator each time it generates a random data/value in the same random context.
Use this class if you need to generate multiple random data/values at the same time use.

Example

    using (var secRndCtx = new SecureRandomContext())  
    {  
        var keyA = secRndCtx.GenerateRandomData(15);  
        var keyB = secRndCtx.GenerateRandomData(15);  
        var nonce = secRndCtx.GenerateRandomData(15);  

        var randomVal = secRndCtx.GenerateRandomValue(10, 50);  
    }  

About

Contain classes that generate random data/value using a cryptographic random number generator.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages