/// <summary> /// Generates a hexadecimal string /// </summary> /// <param name="length">Number of bytes</param> /// <returns>A hexadecimal string</returns> public static string GenerateHexString(int length) { return(Cryptography.GenerateHash(length * 8)); }
/// <summary> /// Generates a random number /// </summary> /// <param name="max">Highest number to generate</param> /// <returns>A random number</returns> public static int Random(int max) { Random rand = new Random(Cryptography.GenerateCryptoNumber()); return(rand.Next(max)); }
/// <summary> /// Generates a key using getCryptoBytes /// </summary> /// <param name="bits">length in bits</param> /// <returns>Random binary data</returns> public static byte[] GenerateCryptoKey(int bits = 256) { return(Cryptography.GenerateCryptoBytes(bits / 8)); }
/// <summary> /// Generates a random string via RNGCryptoServiceProvider /// </summary> /// <param name="length">Number of characters</param> /// <param name="append">Characters to append to the default set of characters</param> /// <returns>A random string of characters</returns> public static string GenerateCryptoString(int length, char[] append) { return(Cryptography.GenerateCryptoString(length, "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789" + new string(append))); }
/// <summary> /// Generates a hexadecimal string via RNGCryptoServiceProvider /// </summary> /// <param name="bits">length in bits</param> /// <returns>A hexadecimal string</returns> public static string GenerateHash(int bits = 256) { return(Cryptography.GenerateCryptoString((bits / 8), "0123456789ABCDEF")); }