Fortuna: why are source ID and data length added together with entropy data into the pools Section 9.5.6 of Cryptography Engineering states that


  The concatenation [of source number, length of data, and data itself] is then appended to the pool.


Why are we including source number and data length? The source number is fixed for each source, the length of data is constant for many sources, so aren't we contaminating the pool with low entropy data?
You can't contaminate the pool with low entropy data. Hash functions "extract" up to the output size or the hash - slightly less, because of collisions.

The source number makes the output different for different sorces even if the input is the same.

The length is needed because else we could not differate two small inputs from one large input with special patterns. This depends on the usage of the hash function.