Bạn có quan tâm đến việc thực hiện PRNG? Nếu vậy, đặt cược tốt nhất của bạn không phải là tự thiết kế, mà chỉ sử dụng một tiêu chuẩn. / dev / urandom là câu trả lời đúng trên hầu hết các nền tảng. Nếu / dev / urandom không tồn tại, tạo khóa AES ngẫu nhiên với / dev / ngẫu nhiên và sau đó chạy chế độ AES-CTR để tạo nhiều số giả ngẫu nhiên là một cách tiếp cận hợp lý khác.
Tôi khuyên bạn nên đọc Kỹ thuật mã hóa, bởi Ferguson, Schneier và Kohno. Đó là một cuốn sách tuyệt vời. Nó sẽ dạy cho bạn rất nhiều về cách thiết kế và xây dựng các hệ thống mật mã thực sự.
Nếu bạn thực sự phải xây dựng một hệ thống sẽ được triển khai trong thực tế, tôi khuyên bạn không nên lấy hướng dẫn của mình từ cộng đồng CS lý thuyết, mà là từ cộng đồng của các học viên và nhà nghiên cứu định hướng thực hành. Phần lớn công việc lý thuyết của CS sẽ không liên quan lắm, hoặc thậm chí có thể gây hiểu lầm, cho việc triển khai thực tế một PRNG an toàn. Tôi cũng khuyến khích bạn xem xét trao đổi ngăn xếp Bảo mật CNTT cho các loại câu hỏi đó.