delta2
não é o delta
anterior, mas a diferença entre dois valores sucessivos de delta
. É um tipo de derivada: se delta
mede a velocidade, delta2
é a aceleração.
A ideia intuitiva por trás dessa estimativa é que as interrupções ocorrem em intervalos mais ou menos aleatórios, ditadas por eventos imprevisíveis do mundo físico (por exemplo, toques de tecla ou chegada de pacotes de rede). Quanto maior o atraso, mais imprevisíveis estarão envolvidos. No entanto, existem sistemas físicos que disparam interrupções a uma taxa fixa; a medida delta2
é um mecanismo de proteção que detecta tais ocorrências (se as interrupções ocorrem em intervalos fixos, portanto, decididamente previsíveis, todo delta
terá o mesmo valor, portanto delta2
será zero).
Eu disse "intuitivo" e não há muito mais a dizer. De fato, no modelo "eventos físicos aleatórios", a contagem dos bits está errada; se ocorrer um evento de hardware com probabilidade p para cada unidade de tempo e você obtiver um atraso expresso sobre n bits, a contribuição de entropia deverá ser contabilizada como n / 2 bits, não n bits. Mas sabemos que, na realidade, os eventos físicos não ocorrem em momentos exatamente aleatórios; o mecanismo delta2
admite isso.
Então, na prática, a "estimativa de entropia" é exatamente isso: uma estimativa . Seu valor de segurança não vem de uma justificativa bem fundamentada, matematicamente exata, mas da fonte usual de segurança: ninguém parece ter encontrado uma maneira de abusar dela (ainda).
Esta página foi escrita por alguém que se cansou dos mitos sobre /dev/random
e sua entropia estimador, e eu acho que explica bem as coisas, com detalhes suficientes. É importante ter algumas ideias básicas ao lidar com o RNG.