@@ -60,11 +60,12 @@ where
6060 fn prf_msg (
6161 sk_prf : & SkPrf < Self :: N > ,
6262 opt_rand : & Array < u8 , Self :: N > ,
63- msg : impl AsRef < [ u8 ] > ,
63+ msg : & [ impl AsRef < [ u8 ] > ] ,
6464 ) -> Array < u8 , Self :: N > {
6565 let mut mac = Hmac :: < Sha256 > :: new_from_slice ( sk_prf. as_ref ( ) ) . unwrap ( ) ;
6666 mac. update ( opt_rand. as_slice ( ) ) ;
67- mac. update ( msg. as_ref ( ) ) ;
67+ msg. iter ( )
68+ . for_each ( |msg_part| mac. update ( msg_part. as_ref ( ) ) ) ;
6869 let result = mac. finalize ( ) . into_bytes ( ) ;
6970 Array :: clone_from_slice ( & result[ ..Self :: N :: USIZE ] )
7071 }
@@ -73,13 +74,13 @@ where
7374 rand : & Array < u8 , Self :: N > ,
7475 pk_seed : & PkSeed < Self :: N > ,
7576 pk_root : & Array < u8 , Self :: N > ,
76- msg : impl AsRef < [ u8 ] > ,
77+ msg : & [ impl AsRef < [ u8 ] > ] ,
7778 ) -> Array < u8 , Self :: M > {
7879 let mut h = Sha256 :: new ( ) ;
7980 h. update ( rand) ;
8081 h. update ( pk_seed) ;
8182 h. update ( pk_root) ;
82- h. update ( msg . as_ref ( ) ) ;
83+ msg . iter ( ) . for_each ( |msg_part| h. update ( msg_part . as_ref ( ) ) ) ;
8384 let result = Array ( h. finalize ( ) . into ( ) ) ;
8485 let seed = rand. clone ( ) . concat ( pk_seed. 0 . clone ( ) ) . concat ( result) ;
8586 mgf1 :: < Sha256 , Self :: M > ( & seed)
@@ -220,11 +221,12 @@ where
220221 fn prf_msg (
221222 sk_prf : & SkPrf < Self :: N > ,
222223 opt_rand : & Array < u8 , Self :: N > ,
223- msg : impl AsRef < [ u8 ] > ,
224+ msg : & [ impl AsRef < [ u8 ] > ] ,
224225 ) -> Array < u8 , Self :: N > {
225226 let mut mac = Hmac :: < Sha512 > :: new_from_slice ( sk_prf. as_ref ( ) ) . unwrap ( ) ;
226227 mac. update ( opt_rand. as_slice ( ) ) ;
227- mac. update ( msg. as_ref ( ) ) ;
228+ msg. iter ( )
229+ . for_each ( |msg_part| mac. update ( msg_part. as_ref ( ) ) ) ;
228230 let result = mac. finalize ( ) . into_bytes ( ) ;
229231 Array :: clone_from_slice ( & result[ ..Self :: N :: USIZE ] )
230232 }
@@ -233,13 +235,13 @@ where
233235 rand : & Array < u8 , Self :: N > ,
234236 pk_seed : & PkSeed < Self :: N > ,
235237 pk_root : & Array < u8 , Self :: N > ,
236- msg : impl AsRef < [ u8 ] > ,
238+ msg : & [ impl AsRef < [ u8 ] > ] ,
237239 ) -> Array < u8 , Self :: M > {
238240 let mut h = Sha512 :: new ( ) ;
239241 h. update ( rand) ;
240242 h. update ( pk_seed) ;
241243 h. update ( pk_root) ;
242- h. update ( msg . as_ref ( ) ) ;
244+ msg . iter ( ) . for_each ( |msg_part| h. update ( msg_part . as_ref ( ) ) ) ;
243245 let result = Array ( h. finalize ( ) . into ( ) ) ;
244246 let seed = rand. clone ( ) . concat ( pk_seed. 0 . clone ( ) ) . concat ( result) ;
245247 mgf1 :: < Sha512 , Self :: M > ( & seed)
0 commit comments