Skip to content

Commit fe7d5b4

Browse files
committed
Don't store SecureRandom in MLKEMEngine
1 parent 4d00d63 commit fe7d5b4

File tree

3 files changed

+2
-12
lines changed

3 files changed

+2
-12
lines changed

core/src/main/java/org/bouncycastle/pqc/crypto/mlkem/MLKEMEngine.java

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,6 @@
66

77
class MLKEMEngine
88
{
9-
private SecureRandom random;
10-
119
private final MLKEMIndCpa indCpa;
1210

1311
// constant parameters
@@ -183,17 +181,12 @@ public MLKEMEngine(int k)
183181
this.indCpa = new MLKEMIndCpa(this);
184182
}
185183

186-
public void init(SecureRandom random)
187-
{
188-
this.random = random;
189-
}
190-
191184
boolean checkModulus(byte[] t)
192185
{
193186
return PolyVec.checkModulus(this, t) < 0;
194187
}
195188

196-
public byte[][] generateKemKeyPair()
189+
public byte[][] generateKemKeyPair(SecureRandom random)
197190
{
198191
byte[] d = new byte[KyberSymBytes];
199192
byte[] z = new byte[KyberSymBytes];

core/src/main/java/org/bouncycastle/pqc/crypto/mlkem/MLKEMGenerator.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ public SecretWithEncapsulation internalGenerateEncapsulated(AsymmetricKeyParamet
3030
{
3131
MLKEMPublicKeyParameters key = (MLKEMPublicKeyParameters)recipientKey;
3232
MLKEMEngine engine = key.getParameters().getEngine();
33-
engine.init(sr);
3433

3534
byte[][] kemEncrypt = engine.kemEncrypt(key, randBytes);
3635
return new SecretWithEncapsulationImpl(kemEncrypt[0], kemEncrypt[1]);

core/src/main/java/org/bouncycastle/pqc/crypto/mlkem/MLKEMKeyPairGenerator.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,7 @@ private AsymmetricCipherKeyPair genKeyPair()
2525
{
2626
MLKEMEngine engine = mlkemParams.getEngine();
2727

28-
engine.init(random);
29-
30-
byte[][] keyPair = engine.generateKemKeyPair();
28+
byte[][] keyPair = engine.generateKemKeyPair(random);
3129

3230
MLKEMPublicKeyParameters pubKey = new MLKEMPublicKeyParameters(mlkemParams, keyPair[0], keyPair[1]);
3331
MLKEMPrivateKeyParameters privKey = new MLKEMPrivateKeyParameters(mlkemParams, keyPair[2], keyPair[3], keyPair[4], keyPair[0], keyPair[1], keyPair[5]);

0 commit comments

Comments
 (0)