BOOL CryptGenRandom(HCRYPTPROV hProvider, DWORD BufLen, BYTE Buf);
引数の意味は、以下の通り。
hProvider | (IN) | 鍵コンテナのハンドル。 |
BufLen | (IN) | 生成する乱数列の長さ。 |
Buf | (OUT) | 生成された乱数列が格納されるバッファ。 |
戻り値は、関数の実行に成功したか否かを表す真偽値である。
void DispRandom() { HCRYPTPROV hProv; BYTE buf[100]; int i; /* デフォルト鍵コンテナの取得 */ CryptAcquireContext(&hProv, NULL, NULL, PROV_RSA_FULL, 0); /* 乱数生成 */ CryptGenRandom(hProv, 100, buf); /* 生成した乱数を表示 */ for(i=0; i<100; i++) printf("%02x ", buf[i]); printf("\n"); /* 鍵コンテナの開放 */ CryptReleaseContext(hProv, 0); }