| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
just found it in OpenBSD, see their sys/crypto/arc4.c, function
rc4_keysetup, line ctx->x = ctx->y = 0;
Obtained from: OpenBSD
|
|
|
|
|
|
|
| |
"If you don't get a review within a day or two, I would firmly recommend
backing out the changes"
back out all my changes as unreviewed by secteam@ yet.
|
|
|
|
|
|
| |
draft-kaukonen-cipher-arcfour-03.txt (3.1.5)
2) Drop first 768 bytes as standard RC4-drop(768)
|
|
|
|
|
|
| |
Minor code reorganization was required, but the only functional
change was that the first 1024 bytes of output are thrown out
after each reseed, rather than just the initial seed.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
One bug fixed: Use getmicrouptime() to trigger reseeds so that we
cannot be tricked by a clock being stepped backwards.
Express parameters in natural units and with natural names.
Don't use struct timeval more than we need to.
Various stylistic and readability polishing.
Introduce arc4rand(void *ptr, u_int len, int reseed) function which
returns a stream of pseudo-random bytes, observing the automatic
reseed criteria as well as allowing forced reseeds.
Rewrite arc4random() in terms of arc4rand().
Sponsored by: DARPA & NAI Labs.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
- Decrease reseeding interval from every 64 to every 16384 runs
to reduce entropy usage.
- Add time based reseeding. (Every 5 minutes.)
- Throw away the first 256 words of output as suggested in
"Weaknesses in the Key Scheduling Algorithm of RC4."
Reviewed by: Mark Murray
MFC After: jkh says ok
|
|
|
|
|
|
|
| |
entropy device is loaded or not.
If the entropy device is NOT loaded, the the quality of perturbations
supplied by this will suffer.
|
| |
|
| |
|
|
|
|
|
| |
device is complete.
Reviewed by: dfr
|
|
|
|
| |
and use that return code as a modulus (panics are bad, mmmkay?)
|
|
|
|
|
|
|
| |
use bits from /dev/random to stir the S-box. Also add an internal counter to
keep the S-box stirred on a regular basis.
Reviewed by: msmith
|
|
(kern.randompid), which is currently defaulted off. Use ARC4 (RC4) for our
random number generation, which will not get me executed for violating
crypto laws; a Good Thing(tm).
Reviewed and Approved by: bde, imp
|