Skip to content

Commit 31894b4

Browse files
committed
tests: Verify converting generic ParameterSet to specific ones
Signed-off-by: Jakub Jelen <[email protected]>
1 parent 03f1155 commit 31894b4

File tree

2 files changed

+23
-1
lines changed

2 files changed

+23
-1
lines changed

cryptoki/tests/ml_dsa.rs

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ use cryptoki::context::Function;
77
use cryptoki::error::{Error, RvError};
88
use cryptoki::mechanism::mldsa::{HashSignAdditionalContext, HedgeType, SignAdditionalContext};
99
use cryptoki::mechanism::{Mechanism, MechanismType};
10-
use cryptoki::object::{Attribute, MlDsaParameterSetType};
10+
use cryptoki::object::{Attribute, AttributeType, MlDsaParameterSetType};
1111
use cryptoki::session::UserType;
1212
use cryptoki::types::AuthPin;
1313
use serial_test::serial;
@@ -100,6 +100,17 @@ fn ml_dsa() -> TestResult {
100100
Error::Pkcs11(_, Function::VerifySignature)
101101
));
102102

103+
// Test convrting ParameterSet attributes back to algorithm specific values
104+
let param_attribute = session
105+
.get_attributes(public, &[AttributeType::ParameterSet])?
106+
.remove(0);
107+
let param: MlDsaParameterSetType = if let Attribute::ParameterSet(num) = param_attribute {
108+
num.into()
109+
} else {
110+
panic!("Expected ParameterSet attribute.");
111+
};
112+
assert_eq!(param, MlDsaParameterSetType::ML_DSA_65);
113+
103114
// delete keys
104115
session.destroy_object(public)?;
105116
session.destroy_object(private)?;

cryptoki/tests/ml_kem.rs

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,17 @@ fn ml_kem() -> TestResult {
9595
let ptext = session.decrypt(&Mechanism::AesEcb, secret, &ctext)?;
9696
assert_eq!(data, ptext);
9797

98+
// Test convrting ParameterSet attributes back to algorithm specific values
99+
let param_attribute = session
100+
.get_attributes(public, &[AttributeType::ParameterSet])?
101+
.remove(0);
102+
let param: MlKemParameterSetType = if let Attribute::ParameterSet(num) = param_attribute {
103+
num.into()
104+
} else {
105+
panic!("Expected ParameterSet attribute.");
106+
};
107+
assert_eq!(param, MlKemParameterSetType::ML_KEM_768);
108+
98109
// delete keys
99110
session.destroy_object(public)?;
100111
session.destroy_object(private)?;

0 commit comments

Comments
 (0)