@@ -23,6 +23,12 @@ impl Message32Bytes {
2323 }
2424}
2525
26+ fn generate_random_message ( csprng : & mut impl RngCore ) -> Message32Bytes {
27+ let mut msg_bytes = [ 0u8 ; 32 ] ;
28+ csprng. fill_bytes ( & mut msg_bytes) ;
29+ Message32Bytes :: new ( msg_bytes)
30+ }
31+
2632fn benchmark_groups ( c : & mut Criterion ) {
2733 let mut group = c. benchmark_group ( "slh_dsa/sha2-128s" ) ;
2834
@@ -45,9 +51,7 @@ fn sig_deserialize<M: Measurement>(g: &mut BenchmarkGroup<M>) {
4551 b. iter_with_setup (
4652 || {
4753 let priv_key = PrivateKey :: generate ( & mut csprng) ;
48- let mut msg_bytes = [ 0u8 ; 32 ] ;
49- csprng. fill_bytes ( & mut msg_bytes) ;
50- let msg = Message32Bytes :: new ( msg_bytes) ;
54+ let msg = generate_random_message ( & mut csprng) ;
5155 priv_key. sign ( & msg) . unwrap ( ) . to_bytes ( )
5256 } ,
5357 |sig_bytes| Signature :: try_from ( & sig_bytes[ ..] ) ,
@@ -79,9 +83,7 @@ fn sign_32_bytes<M: Measurement>(g: &mut BenchmarkGroup<M>) {
7983 b. iter_with_setup (
8084 || {
8185 // Generate a random 32-byte message
82- let mut msg_bytes = [ 0u8 ; 32 ] ;
83- csprng. fill_bytes ( & mut msg_bytes) ;
84- Message32Bytes :: new ( msg_bytes)
86+ generate_random_message ( & mut csprng)
8587 } ,
8688 |msg| priv_key. sign ( & msg) . unwrap ( ) ,
8789 )
@@ -100,9 +102,7 @@ fn verify_32_bytes<M: Measurement>(g: &mut BenchmarkGroup<M>) {
100102 b. iter_with_setup (
101103 || {
102104 // Generate a random 32-byte message
103- let mut msg_bytes = [ 0u8 ; 32 ] ;
104- csprng. fill_bytes ( & mut msg_bytes) ;
105- let msg = Message32Bytes :: new ( msg_bytes) ;
105+ let msg = generate_random_message ( & mut csprng) ;
106106 let sig = priv_key. sign ( & msg) . unwrap ( ) ;
107107 ( sig, msg)
108108 } ,
0 commit comments