Skip to content

Commit d356a88

Browse files
committed
pq-oid/rust fix formatting
1 parent 790c548 commit d356a88

File tree

3 files changed

+96
-34
lines changed

3 files changed

+96
-34
lines changed

packages/pq-oid/rust/src/encoding.rs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,9 @@ pub fn encode_oid_to(oid: &str, out: &mut Vec<u8>) -> Result<()> {
7777

7878
// When first arc is 0 or 1, second arc must be < 40
7979
if first < 2 && second > 39 {
80-
return Err(Error::InvalidOid("second arc must be <= 39 when first arc is 0 or 1"));
80+
return Err(Error::InvalidOid(
81+
"second arc must be <= 39 when first arc is 0 or 1",
82+
));
8183
}
8284

8385
// Encode combined first two arcs (use checked arithmetic to prevent overflow)

packages/pq-oid/rust/src/lib.rs

Lines changed: 80 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -117,12 +117,18 @@ pub mod oid {
117117
pub const SLH_DSA_SHA2_256F: &str = "2.16.840.1.101.3.4.3.25";
118118

119119
// SLH-DSA SHA2 DER-encoded bytes
120-
pub const SLH_DSA_SHA2_128S_BYTES: &[u8] = &[0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x14];
121-
pub const SLH_DSA_SHA2_128F_BYTES: &[u8] = &[0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x15];
122-
pub const SLH_DSA_SHA2_192S_BYTES: &[u8] = &[0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x16];
123-
pub const SLH_DSA_SHA2_192F_BYTES: &[u8] = &[0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x17];
124-
pub const SLH_DSA_SHA2_256S_BYTES: &[u8] = &[0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x18];
125-
pub const SLH_DSA_SHA2_256F_BYTES: &[u8] = &[0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x19];
120+
pub const SLH_DSA_SHA2_128S_BYTES: &[u8] =
121+
&[0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x14];
122+
pub const SLH_DSA_SHA2_128F_BYTES: &[u8] =
123+
&[0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x15];
124+
pub const SLH_DSA_SHA2_192S_BYTES: &[u8] =
125+
&[0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x16];
126+
pub const SLH_DSA_SHA2_192F_BYTES: &[u8] =
127+
&[0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x17];
128+
pub const SLH_DSA_SHA2_256S_BYTES: &[u8] =
129+
&[0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x18];
130+
pub const SLH_DSA_SHA2_256F_BYTES: &[u8] =
131+
&[0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x19];
126132

127133
// SLH-DSA SHAKE OIDs (FIPS 205)
128134
pub const SLH_DSA_SHAKE_128S: &str = "2.16.840.1.101.3.4.3.26";
@@ -133,12 +139,18 @@ pub mod oid {
133139
pub const SLH_DSA_SHAKE_256F: &str = "2.16.840.1.101.3.4.3.31";
134140

135141
// SLH-DSA SHAKE DER-encoded bytes
136-
pub const SLH_DSA_SHAKE_128S_BYTES: &[u8] = &[0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x1a];
137-
pub const SLH_DSA_SHAKE_128F_BYTES: &[u8] = &[0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x1b];
138-
pub const SLH_DSA_SHAKE_192S_BYTES: &[u8] = &[0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x1c];
139-
pub const SLH_DSA_SHAKE_192F_BYTES: &[u8] = &[0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x1d];
140-
pub const SLH_DSA_SHAKE_256S_BYTES: &[u8] = &[0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x1e];
141-
pub const SLH_DSA_SHAKE_256F_BYTES: &[u8] = &[0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x1f];
142+
pub const SLH_DSA_SHAKE_128S_BYTES: &[u8] =
143+
&[0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x1a];
144+
pub const SLH_DSA_SHAKE_128F_BYTES: &[u8] =
145+
&[0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x1b];
146+
pub const SLH_DSA_SHAKE_192S_BYTES: &[u8] =
147+
&[0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x1c];
148+
pub const SLH_DSA_SHAKE_192F_BYTES: &[u8] =
149+
&[0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x1d];
150+
pub const SLH_DSA_SHAKE_256S_BYTES: &[u8] =
151+
&[0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x1e];
152+
pub const SLH_DSA_SHAKE_256F_BYTES: &[u8] =
153+
&[0x60, 0x86, 0x48, 0x01, 0x65, 0x03, 0x04, 0x03, 0x1f];
142154
}
143155

144156
#[cfg(test)]
@@ -277,31 +289,70 @@ mod tests {
277289
#[test]
278290
fn test_oid_bytes_constants() {
279291
// Verify ALL pre-computed bytes match runtime encoding
280-
292+
281293
// ML-KEM
282294
assert_eq!(encode_oid(oid::ML_KEM_512).unwrap(), oid::ML_KEM_512_BYTES);
283295
assert_eq!(encode_oid(oid::ML_KEM_768).unwrap(), oid::ML_KEM_768_BYTES);
284-
assert_eq!(encode_oid(oid::ML_KEM_1024).unwrap(), oid::ML_KEM_1024_BYTES);
285-
296+
assert_eq!(
297+
encode_oid(oid::ML_KEM_1024).unwrap(),
298+
oid::ML_KEM_1024_BYTES
299+
);
300+
286301
// ML-DSA
287302
assert_eq!(encode_oid(oid::ML_DSA_44).unwrap(), oid::ML_DSA_44_BYTES);
288303
assert_eq!(encode_oid(oid::ML_DSA_65).unwrap(), oid::ML_DSA_65_BYTES);
289304
assert_eq!(encode_oid(oid::ML_DSA_87).unwrap(), oid::ML_DSA_87_BYTES);
290-
305+
291306
// SLH-DSA SHA2
292-
assert_eq!(encode_oid(oid::SLH_DSA_SHA2_128S).unwrap(), oid::SLH_DSA_SHA2_128S_BYTES);
293-
assert_eq!(encode_oid(oid::SLH_DSA_SHA2_128F).unwrap(), oid::SLH_DSA_SHA2_128F_BYTES);
294-
assert_eq!(encode_oid(oid::SLH_DSA_SHA2_192S).unwrap(), oid::SLH_DSA_SHA2_192S_BYTES);
295-
assert_eq!(encode_oid(oid::SLH_DSA_SHA2_192F).unwrap(), oid::SLH_DSA_SHA2_192F_BYTES);
296-
assert_eq!(encode_oid(oid::SLH_DSA_SHA2_256S).unwrap(), oid::SLH_DSA_SHA2_256S_BYTES);
297-
assert_eq!(encode_oid(oid::SLH_DSA_SHA2_256F).unwrap(), oid::SLH_DSA_SHA2_256F_BYTES);
298-
307+
assert_eq!(
308+
encode_oid(oid::SLH_DSA_SHA2_128S).unwrap(),
309+
oid::SLH_DSA_SHA2_128S_BYTES
310+
);
311+
assert_eq!(
312+
encode_oid(oid::SLH_DSA_SHA2_128F).unwrap(),
313+
oid::SLH_DSA_SHA2_128F_BYTES
314+
);
315+
assert_eq!(
316+
encode_oid(oid::SLH_DSA_SHA2_192S).unwrap(),
317+
oid::SLH_DSA_SHA2_192S_BYTES
318+
);
319+
assert_eq!(
320+
encode_oid(oid::SLH_DSA_SHA2_192F).unwrap(),
321+
oid::SLH_DSA_SHA2_192F_BYTES
322+
);
323+
assert_eq!(
324+
encode_oid(oid::SLH_DSA_SHA2_256S).unwrap(),
325+
oid::SLH_DSA_SHA2_256S_BYTES
326+
);
327+
assert_eq!(
328+
encode_oid(oid::SLH_DSA_SHA2_256F).unwrap(),
329+
oid::SLH_DSA_SHA2_256F_BYTES
330+
);
331+
299332
// SLH-DSA SHAKE
300-
assert_eq!(encode_oid(oid::SLH_DSA_SHAKE_128S).unwrap(), oid::SLH_DSA_SHAKE_128S_BYTES);
301-
assert_eq!(encode_oid(oid::SLH_DSA_SHAKE_128F).unwrap(), oid::SLH_DSA_SHAKE_128F_BYTES);
302-
assert_eq!(encode_oid(oid::SLH_DSA_SHAKE_192S).unwrap(), oid::SLH_DSA_SHAKE_192S_BYTES);
303-
assert_eq!(encode_oid(oid::SLH_DSA_SHAKE_192F).unwrap(), oid::SLH_DSA_SHAKE_192F_BYTES);
304-
assert_eq!(encode_oid(oid::SLH_DSA_SHAKE_256S).unwrap(), oid::SLH_DSA_SHAKE_256S_BYTES);
305-
assert_eq!(encode_oid(oid::SLH_DSA_SHAKE_256F).unwrap(), oid::SLH_DSA_SHAKE_256F_BYTES);
333+
assert_eq!(
334+
encode_oid(oid::SLH_DSA_SHAKE_128S).unwrap(),
335+
oid::SLH_DSA_SHAKE_128S_BYTES
336+
);
337+
assert_eq!(
338+
encode_oid(oid::SLH_DSA_SHAKE_128F).unwrap(),
339+
oid::SLH_DSA_SHAKE_128F_BYTES
340+
);
341+
assert_eq!(
342+
encode_oid(oid::SLH_DSA_SHAKE_192S).unwrap(),
343+
oid::SLH_DSA_SHAKE_192S_BYTES
344+
);
345+
assert_eq!(
346+
encode_oid(oid::SLH_DSA_SHAKE_192F).unwrap(),
347+
oid::SLH_DSA_SHAKE_192F_BYTES
348+
);
349+
assert_eq!(
350+
encode_oid(oid::SLH_DSA_SHAKE_256S).unwrap(),
351+
oid::SLH_DSA_SHAKE_256S_BYTES
352+
);
353+
assert_eq!(
354+
encode_oid(oid::SLH_DSA_SHAKE_256F).unwrap(),
355+
oid::SLH_DSA_SHAKE_256F_BYTES
356+
);
306357
}
307358
}

packages/pq-oid/rust/src/types.rs

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -639,9 +639,15 @@ impl SlhDsa {
639639
#[inline]
640640
pub const fn security_level(&self) -> SecurityLevel {
641641
match self {
642-
SlhDsa::Sha2_128s | SlhDsa::Sha2_128f | SlhDsa::Shake128s | SlhDsa::Shake128f => SecurityLevel::Level1,
643-
SlhDsa::Sha2_192s | SlhDsa::Sha2_192f | SlhDsa::Shake192s | SlhDsa::Shake192f => SecurityLevel::Level3,
644-
SlhDsa::Sha2_256s | SlhDsa::Sha2_256f | SlhDsa::Shake256s | SlhDsa::Shake256f => SecurityLevel::Level5,
642+
SlhDsa::Sha2_128s | SlhDsa::Sha2_128f | SlhDsa::Shake128s | SlhDsa::Shake128f => {
643+
SecurityLevel::Level1
644+
}
645+
SlhDsa::Sha2_192s | SlhDsa::Sha2_192f | SlhDsa::Shake192s | SlhDsa::Shake192f => {
646+
SecurityLevel::Level3
647+
}
648+
SlhDsa::Sha2_256s | SlhDsa::Sha2_256f | SlhDsa::Shake256s | SlhDsa::Shake256f => {
649+
SecurityLevel::Level5
650+
}
645651
}
646652
}
647653

@@ -1105,7 +1111,10 @@ mod tests {
11051111
assert_eq!(info.public_key_size, 800);
11061112
assert!(matches!(
11071113
info.sizes,
1108-
AlgorithmSizes::Kem { ciphertext_size: 768, .. }
1114+
AlgorithmSizes::Kem {
1115+
ciphertext_size: 768,
1116+
..
1117+
}
11091118
));
11101119
}
11111120

0 commit comments

Comments
 (0)