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);
}