Hola que tal, bueno mira yo utilizo esto en C#, con el tengo un generador de claves
:
Código C#:
Ver originaltxbClave.Text = " ";
string _allowedChars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
Byte[] randomBytes = new byte[8]; // Yo pongo 8, pero tu puedes poner el tamaño que desees.
char[] chars = new char[8];
int allowedCharCount = _allowedChars.Length;
for( int i = 0; i<8; i++ )
{
Random randomobj = new Random();
randomobj.NextBytes(randomBytes);
chars[i]=_allowedChars[(int)randomBytes[i]%allowedCharCount];
}
txbClave.Text = new string(chars);