From 97a52eb815a17a9a2739a6592cbc068be44129be Mon Sep 17 00:00:00 2001 From: Phil <phil@secdev.org> Date: Thu, 10 Dec 2009 23:39:13 +0100 Subject: [PATCH] Tweaked RandomEnumeration to have better statistical characteristics --- scapy/volatile.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scapy/volatile.py b/scapy/volatile.py index bbe61e7f..de294593 100644 --- a/scapy/volatile.py +++ b/scapy/volatile.py @@ -42,10 +42,11 @@ class RandomEnumeration: def next(self): while True: if self.turns == 0 or (self.i == 0 and self.renewkeys): + self.cnt_key = self.rnd.randint(0,2**self.n-1) self.sbox = [self.rnd.randint(0,self.fsmask) for k in xrange(self.sbox_size)] self.turns += 1 while self.i < 2**self.n: - ct = self.i + ct = self.i^self.cnt_key self.i += 1 for k in range(self.rounds): # Unbalanced Feistel Network lsb = ct & self.fsmask -- GitLab