diff options
author | Peter Dettman <peter.dettman@bouncycastle.org> | 2014-04-16 12:27:11 +0400 |
---|---|---|
committer | Peter Dettman <peter.dettman@bouncycastle.org> | 2014-04-16 12:27:11 +0400 |
commit | ebf12462c90670fdbe123d5ccb7a431e5e118b33 (patch) | |
tree | 82f75e1d350ec6c0d6ab27e2b99af319786281dc /core/src/main/java/org/bouncycastle/crypto/tls/AbstractTlsContext.java | |
parent | 3cc0a8966019034b52980d819eb8efef17a2bf23 (diff) |
Include a (static) counter as extra seeding to the SecureRandom
Diffstat (limited to 'core/src/main/java/org/bouncycastle/crypto/tls/AbstractTlsContext.java')
-rw-r--r-- | core/src/main/java/org/bouncycastle/crypto/tls/AbstractTlsContext.java | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/core/src/main/java/org/bouncycastle/crypto/tls/AbstractTlsContext.java b/core/src/main/java/org/bouncycastle/crypto/tls/AbstractTlsContext.java index 89e95b85..0b9949f9 100644 --- a/core/src/main/java/org/bouncycastle/crypto/tls/AbstractTlsContext.java +++ b/core/src/main/java/org/bouncycastle/crypto/tls/AbstractTlsContext.java @@ -9,6 +9,13 @@ import org.bouncycastle.util.Times; abstract class AbstractTlsContext implements TlsContext { + private static long counter = Times.nanoTime(); + + private synchronized static long nextCounterValue() + { + return ++counter; + } + private RandomGenerator nonceRandom; private SecureRandom secureRandom; private SecurityParameters securityParameters; @@ -20,6 +27,7 @@ abstract class AbstractTlsContext AbstractTlsContext(SecureRandom secureRandom, SecurityParameters securityParameters) { + secureRandom.setSeed(nextCounterValue()); secureRandom.setSeed(Times.nanoTime()); this.nonceRandom = new DigestRandomGenerator(TlsUtils.createHash(HashAlgorithm.sha256)); |