Como posso usar um RNG de hardware externo no FreeBSD?

Como posso usar um RNG de hardware externo no FreeBSD?

Eu gostaria de usar um RNG de hardware externo que forneça entropia via soquete de rede. O FreeBSD não suporta fontes externas de RNG/entropia no kernel, mas sim no espaço do usuário. Ok, tudo bem se eu estiver construindo meu próprio aplicativo para utilizar a fonte de entropia externa - mas como posso implementá-lo para que os aplicativos existentes que usam /dev/randomtambém usem minha fonte de entropia extra? Meu entendimento é que a resposta é que você não pode - mas adoraria estar errado nisso.

Responder1

Quando você dá uma olhada noimplementação de /dev/random em 11.0você notará que com o suporte dos novos algoritmos aleatórios (fortuna substituiu o yarrow), também há suporte para alimentar a entropia com uma chamada de gravação para /dev/random.

As versões 10.x não suportam esta chamada de gravação. A página de manualdito anteriormente para 10.3que escreve será silenciosamente ignorado ena página de manual 11.0esta passagem foi removida. Infelizmente, não há explicação de que a alimentação da entropia seja possível escrevendo no dispositivo.

Na minha opinião, você deveria perguntar nas listas de discussão, porque este parece ser um tópico sério e relevante para a segurança e acabei de encontrar algumas informações que podem não ser suficientes para ter certeza absoluta sobre esta nova funcionalidade e todas as dicas que podem existem lá.

informação relacionada