Penguin
Diff: RandomNumberGenerator
EditPageHistoryDiffInfoLikePages

Differences between version 11 and previous revision of RandomNumberGenerator.

Other diffs: Previous Major Revision, Previous Author, or view the Annotated Edit History

Newer page: version 11 Last edited on Friday, March 26, 2004 3:26:38 am by AristotlePagaltzis Revert
Older page: version 10 Last edited on Friday, March 26, 2004 2:05:42 am by AristotlePagaltzis Revert
@@ -23,12 +23,12 @@
 See also: srand(3), srandom(3), drand48(3), erand48(3), jrand48(3), lrand48(3), mrand48(3), nrand48(3), srand48(3) 
  
 !!! Hybrids 
  
-In [Unix] systems, there are commonly random(4) and urandom(4) devices. They are regular pseudorandom number generators, but include a twist that lets them generate higher quality random numbers than otherwise expected: their seed is periodically perturbed using using low-level timing information from entropy sources which only the [Kernel] has proper access to, such as the network, mouse, and keyboard. These generators are considered a sufficiently good generator for everything except highly sensitive cryptographic applications such as PublicKey generation (see RFC:1750 on best practices). 
+In [Unix] systems, there are commonly random(4) and urandom(4) devices. They are regular pseudorandom number generators, but include a twist that lets them generate higher quality random numbers than otherwise expected: their seed is periodically perturbed using using low-level timing information from entropy sources which only the [Kernel] has proper access to, such as the network, mouse, and keyboard. These generators are considered a sufficient for everything except highly sensitive cryptographic applications such as PublicKey generation (see RFC:1750 on best practices). 
  
 In [Java] systems, instances of the class __java.security.!SecureRandom__ operate in a similar fashion. Making instances of this class can take several seconds while the [JVM] tries to russle up entropy. 
  
-The weakness of such a hybrid approach is that while its inputs are hard to predict from outside or spy on from inside the system encapsulated by the [Kernel], the [Kernel ] itself may be separated from the hardware by a middle man. This is the case if it is run as UserModeLinux, f.ex. In such a situation it would be possible to cause __/dev/random__ to produce repetitive results. 
+The weakness of such a hybrid approach is that while its inputs are hard to predict from outside or spy on from inside the system encapsulated by the [Kernel] or [Java ] VirtualMachine, it may itself may be separated from the hardware by a middle man. This is the case with a [Kernel] run as UserModeLinux, f.ex, and almost always the case with a [JVM] which usually runs as a regular process under control of an OperatingSystem . In such a situation it would be possible to cause __/dev/random__ to produce repetitive results. 
  
 ---- 
 CategoryCryptography