Esaminando il codice openssl 1.0.1g s23_clnt.c vedo che:
int ssl23_connect(SSL *s)
{
BUF_MEM *buf=NULL;
unsigned long Time=(unsigned long)time(NULL);
void (*cb)(const SSL *ssl,int type,int val)=NULL;
int ret= -1;
int new_state,state;
RAND_add(&Time,sizeof(Time),0);
Questo RAND_add (& Tempo, sizeof (Tempo), 0) non aggiungerà entropia, ma a lungo termine crea solo un caso prevedibile?
Leggendo link c'è una riga "Così, se i dati di buf sono imprevedibili per un avversario , questo aumenta l'incertezza riguardo allo stato ... ", cosa succede se buf è prevedibile ... perché il tempo di connessione iniziale è.
Poiché il metodo casuale predefinito è md_rand, penso che il buffer sia aggiunto anche se l'entropia è 0 e penso che l'aggiunta di informazioni facilmente ipotizzabili (il tempo è espresso in secondi) si diluirà e a lungo andare rendere casuale la settimana
Googling un po 'diede quel link che mi dà solo la stessa impressione, ma dubito davvero che tali cose non sarebbero state mantenute per secoli in openssl (era già lì con un RAND_Seed (& Time, ... in SSLEAY del 1998) se fosse stato così dannoso.
Quindi una domanda di base:
RAND_add (X, Y, 0) con X ipotizzabile abbassare la qualità casuale o mantenerla così com'è?