#include <stdio.h>
#include <openssl/err.h>
#include <openssl/rand.h>
int main(int argc, char* argv[])
{
int i;
int retVal = 0;
// 랜덤 수의 길이는 64로 한다.
int length = 64;
// PRNG에 공급할 seed 생성
RAND_status();
// 생성할 랜덤 수 길이만큼의 버퍼 생성
unsigned char *buffer = (unsigned char*)malloc(sizeof(unsigned char) * length);
// run PRNG
retVal = RAND_bytes(buffer, length);
if(retVal <= 0) {
printf(“error encount!n”);
return 0;
}
// print random number
printf(“Random number = “);
for(i = 0; i < length; i++)
printf(“%c”, buffer[i]);
return 1;
}
Windows의 경우 RAND_status() 를 RAND_screen() 으로 바꿔주면 된다.