@@ -129,19 +129,18 @@ impl<D: Hash, G: Group> KeyExchange<D, G> for TripleDH {
129
129
]
130
130
. concat ( ) ;
131
131
132
- let mut hasher2 = D :: new ( ) ;
133
- hasher2 . update ( & transcript2) ;
134
- let hashed_transcript_without_mac = hasher2 . finalize ( ) ;
132
+ let mut hasher = D :: new ( ) ;
133
+ hasher . update ( & transcript2) ;
134
+ let hashed_transcript_without_mac = hasher . finalize_reset ( ) ;
135
135
136
136
let mut mac_hasher =
137
137
Hmac :: < D > :: new_varkey ( & km2) . map_err ( |_| InternalPakeError :: HmacError ) ?;
138
138
mac_hasher. update ( & hashed_transcript_without_mac) ;
139
139
let mac = mac_hasher. finalize ( ) . into_bytes ( ) ;
140
140
141
- let mut hasher3 = D :: new ( ) ;
142
- hasher3. update ( & transcript2) ;
143
- hasher3. update ( & mac) ;
144
- let hashed_transcript = hasher3. finalize ( ) ;
141
+ hasher. update ( & transcript2) ;
142
+ hasher. update ( & mac) ;
143
+ let hashed_transcript = hasher. finalize ( ) ;
145
144
146
145
Ok ( (
147
146
ke1_message. info ,
@@ -194,7 +193,7 @@ impl<D: Hash, G: Group> KeyExchange<D, G> for TripleDH {
194
193
195
194
let mut hasher = D :: new ( ) ;
196
195
hasher. update ( & transcript) ;
197
- let hashed_transcript_without_mac = hasher. finalize ( ) ;
196
+ let hashed_transcript_without_mac = hasher. finalize_reset ( ) ;
198
197
199
198
let mut server_mac =
200
199
Hmac :: < D > :: new_varkey ( & km2) . map_err ( |_| InternalPakeError :: HmacError ) ?;
@@ -206,10 +205,9 @@ impl<D: Hash, G: Group> KeyExchange<D, G> for TripleDH {
206
205
) ) ;
207
206
}
208
207
209
- let mut hasher2 = D :: new ( ) ;
210
- hasher2. update ( transcript) ;
211
- hasher2. update ( ke2_message. mac . to_vec ( ) ) ;
212
- let hashed_transcript = hasher2. finalize ( ) ;
208
+ hasher. update ( transcript) ;
209
+ hasher. update ( ke2_message. mac . to_vec ( ) ) ;
210
+ let hashed_transcript = hasher. finalize ( ) ;
213
211
214
212
let mut client_mac =
215
213
Hmac :: < D > :: new_varkey ( & km3) . map_err ( |_| InternalPakeError :: HmacError ) ?;
0 commit comments