看板 DFBSD_bugs 關於我們 聯絡資訊
:I have been doing some work on this CSPRNG, which is available from: : :http://www.leopard.uk.com/IBAA64 : :I have two recommendations to make with regard to the IBAA CSPRNG which is :used in DragonFly: : :(1) Use my rounded up BETA=32/SHIFT=20 values as opposed to the original :SHIFT=19 value in the :original IBAA CSPRNG/algorithm (details available from above URL) : :and : :(2) Use a 32-bit counter. This is a minor modification, which gurantees no :bad states (an initial state of all zeroes : maps back to an internal state of all zeroes after 256 iterations), and :also guarantees a cycle length of at least : 2^32. Details on how to implement the counter are available from the :above URL. It's a minor modification which : has minimal performance impact. :Also, a 64-bit version of IBAA is available from the above URL. Matthew :Dillon seemed to be interested in that, with :regard to the 64-bit x86-64 port of DragonFly (but I haven't heard back from :him about that). : :-- :Sincerely, :Robin Carey I see the shift in /usr/src/sys/kern/kern_nrandom.c, changing that is easy. I don't know what the counter is though. I'd like to have the 64-bit version in DFly but I don't have time to port it myself. -Matt