Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/quite/humla-spongycastle.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'core/src/main/java/org/spongycastle/crypto/prng/RandomGenerator.java')
-rw-r--r--core/src/main/java/org/spongycastle/crypto/prng/RandomGenerator.java38
1 files changed, 38 insertions, 0 deletions
diff --git a/core/src/main/java/org/spongycastle/crypto/prng/RandomGenerator.java b/core/src/main/java/org/spongycastle/crypto/prng/RandomGenerator.java
new file mode 100644
index 00000000..aa9a3834
--- /dev/null
+++ b/core/src/main/java/org/spongycastle/crypto/prng/RandomGenerator.java
@@ -0,0 +1,38 @@
+package org.spongycastle.crypto.prng;
+
+/**
+ * Generic interface for objects generating random bytes.
+ */
+public interface RandomGenerator
+{
+ /**
+ * Add more seed material to the generator.
+ *
+ * @param seed a byte array to be mixed into the generator's state.
+ */
+ void addSeedMaterial(byte[] seed);
+
+ /**
+ * Add more seed material to the generator.
+ *
+ * @param seed a long value to be mixed into the generator's state.
+ */
+ void addSeedMaterial(long seed);
+
+ /**
+ * Fill bytes with random values.
+ *
+ * @param bytes byte array to be filled.
+ */
+ void nextBytes(byte[] bytes);
+
+ /**
+ * Fill part of bytes with random values.
+ *
+ * @param bytes byte array to be filled.
+ * @param start index to start filling at.
+ * @param len length of segment to fill.
+ */
+ void nextBytes(byte[] bytes, int start, int len);
+
+}