English subtitles

← Pseudo Random Number Generator Solution - Applied Cryptography

Get Embed Code
1 Language

Showing Revision 2 created 05/25/2016 by Udacity Robot.

  1. The best option is the second one.
  2. The problem with the first option is that it doesn't provide
  3. the unpredictability property that we need.
  4. If an attacker knows X_0, they can easily compute X_1.
  5. And that's a property our pseudo-random number generator needs to have.
  6. The third option seems reasonable.
  7. It requires a lot of randomness in the pool.
  8. But if we have that much randomness in the pool--to extract
  9. a new random value for each random output--
  10. we should just use that.
  11. If we do have enough randomness for this
  12. there's no reason for all these other steps.
  13. We should just extract something for the random pool each time.
  14. We're not able to do this--we're assuming we don't have enough randomness
  15. to do that. So we're using things that aren't actually random here
  16. if we're extracting them from the random pool more quickly
  17. than we're actually able to produce new randomness here.
  18. It's doing a lot of extra work, but it's eventually starrting to use values
  19. that are not random as the inputs to our encrypt.
  20. And if those values are predictable, well then the outputs become predictable, too.
  21. So that doesn't work--so the best solution is this middle one
  22. where we're extracting the seed once, we're reusing that seed,
  23. and we're encrypting a sequence of values which is--can just be a counter--
  24. and each time using the output of that encryption.