RNGCryptoServiceProvider.GetNonZeroBytes(Byte[]) RNGCryptoServiceProvider.GetNonZeroBytes(Byte[]) RNGCryptoServiceProvider.GetNonZeroBytes(Byte[]) RNGCryptoServiceProvider.GetNonZeroBytes(Byte[]) Method

Definition

Fills an array of bytes with a cryptographically strong sequence of random nonzero values.

public:
 override void GetNonZeroBytes(cli::array <System::Byte> ^ data);
public override void GetNonZeroBytes (byte[] data);
override this.GetNonZeroBytes : byte[] -> unit
Public Overrides Sub GetNonZeroBytes (data As Byte())
Parameters
data
Byte[]

The array to fill with a cryptographically strong sequence of random nonzero values.

Exceptions

The cryptographic service provider (CSP) cannot be acquired.

Examples

The following code example creates a random sequence of 100 nonzero bytes and stores it in random.

array<Byte>^ random = gcnew array<Byte>(100);
//RNGCryptoServiceProvider is an implementation of a random number generator.
RNGCryptoServiceProvider^ rng = gcnew RNGCryptoServiceProvider;
rng->GetNonZeroBytes( random ); // The array is now filled with cryptographically strong random bytes, and none are zero.
byte[] random = new Byte[100];
//RNGCryptoServiceProvider is an implementation of a random number generator.
RNGCryptoServiceProvider rng = new RNGCryptoServiceProvider();
rng.GetNonZeroBytes(random); // The array is now filled with cryptographically strong random bytes, and none are zero.
Dim random() As Byte = New Byte(100) {}
'RNGCryptoServiceProvider is an implementation of an RNG
Dim rng As New RNGCryptoServiceProvider()
rng.GetNonZeroBytes(random) ' bytes in random are now random and none are zero

Remarks

The length of the byte array determines how many cryptographically strong random nonzero bytes are produced.

Applies to