Não em design propriamente dito, mas você pode estar interessado no livro mais recente de Goldreich: books.google.com/books?id=9k6Lw2U2XCkC
@ Huntsman S: muito obrigado por isso! Eu não sabia que Goldreich tinha um livro sobre PRNGs.
Você pode querer conferir
Capítulos 5 e 6 de Katz e Lindell
Pseudo- aleatoriedade por S. Vadhan
Parwise Independence and Derandomization de Luby e Wigderson
Pseudo-aleatoriedade e construções combinatórias de Trevisan
Página de Goldreich sobre pseudo-aleatoriedade, onde ele aponta para outras fontes.
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.
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.
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.
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.
A pergunta diz explicitamente que ele está interessado em princípios gerais, e a pergunta foi feita na troca de pilhas CS teóricas ...