TAILIEUCHUNG - cryptography for developers 2006 phần 4

có thể xác định nhà nước từ đầu ra có thể chạy ngược PRNG hoặc là ít hơn của một vấn đề nếu RNG được sử dụng trong việc ngăn chặn chế chức năng đọc () là những gì một người gọi sẽ sử dụng trở lại các byte ngẫu nhiên từ hệ thống RNG. Nó có thể hoạt động theo một trong hai chế độ | Random Number Generation Chapter 3 111 can determine the state from the output can run the PRNG backward or is less of a problem if the RNG is used in blocking mode. 124 125 reset states 126 pool_len 32 127 pool_idx 0 128 word count 0 129 130 131 unsigned long rng_read unsigned char out 132 unsigned long len 133 int block 134 135 136 unsigned long x y 137 x 0 138 while len 139 can we read 140 if pool_len 0 141 copy upto pool_len bytes 142 for y 0 y pool_len y len y 143 out pool pool idx 144 145 pool_len - y 146 len - y 147 x y 148 else 149 can we churn or are non-blocking 150 if word_count 8 block 151 rng_churn_data 152 else 153 we can t so lets return 154 return x 155 156 157 158 return x 159 The read function rng_read is what a caller would use to return random bytes from the RNG system. It can operate in one of two modes depending on the block argument. If it is nonzero the function acts like a RNG and only reads as many bytes as the pool has to offer. Unlike a true blocking function it will return partial reads instead of waiting to fulfill the read. The caller would have to loop if they required traditional blocking functionality. This flexibility is usually a source of errors as callers do not check the return value of the function. Unfortunately even an error code returned to the caller would not be noticed unless you significantly altered the code flow of the program . terminate the application . If the block variable is zero the function behaves like a PRNG and will rechurn the existing state and pool regardless of the amount of additional entropy. Provided the state has 112 Chapter 3 Random Number Generation enough entropy in it running it as a PRNG for a modest amount of time should be for all purposes just like running a proper RNG. Warning_ The RNG presented in this chapter is not thread safe but is at least real-time compatible. This is particularly .

TỪ KHÓA LIÊN QUAN
TAILIEUCHUNG - Chia sẻ tài liệu không giới hạn
Địa chỉ : 444 Hoang Hoa Tham, Hanoi, Viet Nam
Website : tailieuchung.com
Email : tailieuchung20@gmail.com
Tailieuchung.com là thư viện tài liệu trực tuyến, nơi chia sẽ trao đổi hàng triệu tài liệu như luận văn đồ án, sách, giáo trình, đề thi.
Chúng tôi không chịu trách nhiệm liên quan đến các vấn đề bản quyền nội dung tài liệu được thành viên tự nguyện đăng tải lên, nếu phát hiện thấy tài liệu xấu hoặc tài liệu có bản quyền xin hãy email cho chúng tôi.
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.