Pesquisas sobre projeto de gerador de números pseudo-aleatórios?

15

Estou interessado na geração de números pseudo-aleatórios para criptografia. Além do capítulo 5 de Menezes / Oorschot / Vanstone ; Capítulo 8 de Stinson ; e o capítulo 3 de Goldreich , onde mais eu poderia encontrar mais? Estou interessado em princípios gerais para projetar PRNGs (propriedades desejáveis, testes, etc.).

Jay
fonte
3
Não em design propriamente dito, mas você pode estar interessado no livro mais recente de Goldreich: books.google.com/books?id=9k6Lw2U2XCkC
S Huntsman
@ Huntsman S: muito obrigado por isso! Eu não sabia que Goldreich tinha um livro sobre PRNGs.
Jay

Respostas:

8

Você pode querer conferir

Dai Le
fonte
11
A maior parte disso não é muito relevante para implementações práticas de PRNGs para criptografia. Este não é um bom conjunto de recursos para fornecer um implementador.
DW
4

Se você está pensando em implementar suas idéias, há uma bateria padrão de testes que são dadas às implementações do PRNG. Esses testes (DIEHARD e sucessor DIEHARDER) podem ser baixados de sua página da Web arquivada e http://www.phy.duke.edu/~rgb/General/dieharder.php, respectivamente.

Peter Boothe
fonte
4
Nota de advertência importante: passar no DIEHARD não significa que o seu PRNG seja bom. Este não é um recurso que eu daria a um implementador que precisa implementar um PRNG seguro.
DW
1

Você está interessado em implementar um PRNG? Nesse caso, sua melhor aposta não é projetar uma, mas use uma padrão. / dev / urandom é a resposta certa na maioria das plataformas. Se / dev / urandom não existir, gerar uma chave AES aleatória com / dev / random e executar o modo AES-CTR para gerar muitos números pseudo-aleatórios é outra abordagem razoável.

Eu recomendo que você leia Engenharia de criptografia, de Ferguson, Schneier e Kohno. É um excelente livro. Ele ensinará muito sobre como projetar e construir sistemas de criptografia reais.

Se você realmente precisa criar um sistema que será implantado na prática, recomendo que você não siga suas orientações da comunidade teórica de CS, mas da comunidade de praticantes e pesquisadores orientados para a prática. Grande parte do trabalho teórico de CS não será muito relevante ou potencialmente enganoso para a implementação prática de um PRNG seguro. Também encorajo você a olhar para a troca de pilhas de segurança de TI para esse tipo de pergunta.

DW
fonte
4
A pergunta diz explicitamente que ele está interessado em princípios gerais, e a pergunta foi feita na troca de pilhas CS teóricas ...
David Caixa