Sean Hunter wrote:
> Randomness from network packet timings can be gathered entirely in userspace by
> using a packet socket. I am busy writing an "additional entropy daemon" to
> gather entropy from this and other sources[1], clean it up, test its fitness,
> estimate its information content, and feed it into the random pool. This job
> is (IMO) better done in userspace because there we can run fitness tests on the
> stream more easily because we have floating point etc.
However, if you're doing that, then you incur the cost of copying every incoming
packet and sending it up to userspace. For a busy server, this could be
unacceptable.
Also, how are you timing the incoming packets? In kernel space we can get
accuracy of a few tens of nanoseconds for timing the interrupts--how do you
approach this in userspace when your userspace process can be scheduled out?
Even if we timestamp the packets with microsecond accuracy, we are still a few
orders of magnitude short of the accuracy attainable in the kernel, with
correspondingly less entropy that can be extracted.
Chris
-- Chris Friesen | MailStop: 043/33/F10 Nortel Networks | work: (613) 765-0557 3500 Carling Avenue | fax: (613) 765-2986 Nepean, ON K2H 8E9 Canada | email: cfriesen@nortelnetworks.com - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Fri Feb 15 2002 - 21:00:55 EST