On Tue, Jun 26, 2007 at 04:12:26PM +0200, Michael Buesch wrote: > On Tuesday 26 June 2007 05:13:41 Matt Mackall wrote: > > On Sun, Jun 24, 2007 at 03:55:22PM +0200, Michael Buesch wrote: > > > This adds quality categories for hardware random number generators. > > > > > ... > > > + > > > +/** > > > + * enum hwrng_quality - Quality identifier for RNG hardware > > > + * @HWRNG_QUAL_HIGH: High quality RNG. Higher quality than > > > + * what is found on the usual PC mainboards. > > > + * Use that for special dedicated RNG > > > + * extension boards. > > > + * @HWRNG_QUAL_NORMAL: PC-onboard-RNG devices. > > > + * @HWRNG_QUAL_LOW: Low quality RNG devices. Use this for > > > + * devices which gather the entropy from possibly > > > + * bad sources, like the network. > > > + * @HWRNG_QUAL_PSEUDO: Pseudo RNG device. Use this for devices > > > + * which are not RNG devices by definition, but > > > + * could be used as such. For example various > > > + * hardware sensors, like a motion sensor. > > > + */ > > > > I don't think these definitions are very useful. > ... > > No wait. You are missing the whole point of this > quality category. > The whole point of it is to prevent defaulting to a bad RNG, if > there's a bad and a good one in a machine. > Well, what's bad. > It's easy. HWRNGs like the one in bcm43xx are bad. > It's proprietary and nobody knows what it does (I guess > it gathers the entropy from the network or something > and hashes that in hardware). > So such a device would be QUAL_LOW.
If it's gathering its entropy from the network, it is not a QUAL_LOW RNG because it is not a hardware random number generator at all! Such a device is QUAL_PSEUDO or QUAL_UNKNOWN. If it's known or suspected to be bogus, it should be so marked. Once you've merged your LOW class with PSEUDO, you're left with a meaningless, unquantifiable distinction between NORMAL and HIGH. So we're down to one bit distinguishing real RNGs from pseudo RNGs. -- Mathematics is the supreme nostalgia of our time. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/