Subject: Re: RelCache (aka ELF prebinding) news
To: None <tech-kern@netbsd.org, tech-userlevel@netbsd.org>
From: der Mouse <mouse@Rodents.Montreal.QC.CA>
List: tech-userlevel
Date: 12/03/2002 11:20:25
> moment. do You calculating how much/little will be PROBABILITY of
> collision/bad operation?!

> IMHO operating system should work, not just have probability of
> working near 1.

That's all it has anyway.

For example, the chance of a collision between random 64-bit values
(assuming real randomness in the generator, which can be a stretch
sometimes) in this context is, I estimate, on the rough order of the
chance of an undetected disk error corrupting something.

For 128-bit values, the chance of a collision in my lifetime is far
less than the chance that I will spontaneously combust in the next five
minutes and have no occasion to care about the issue any further.  You
could, if you had a source of uniform random bits with enough
bandwidth, generate a random 128-bit number each millisecond for the
remainder of your life and still have a chance of ever generating the
same number twice that's significantly less than the chance of your
being killed by a meteorite landing on you.

I'm more concerned about undetected RAM errors than I am about
accidental collisions when we get into numbers of this sort of size.

But "accidental" is important.  If you use something like a CRC, it is
worthless against malice, and you then have to ensure your design
doesn't break in the face of collisions, or you're vulnerable to DoS
attacks.  (And if you don't break in the face of collisions, why not
just use a CRC32 and live with the collisions?)

/~\ The ASCII				der Mouse
\ / Ribbon Campaign
 X  Against HTML	       mouse@rodents.montreal.qc.ca
/ \ Email!	     7D C8 61 52 5D E7 2D 39  4E F1 31 3E E8 B3 27 4B