@@ -20,7 +20,7 @@ use serde::{Deserialize, Serialize};
20
20
use super :: { Bug , KeyRefreshError , PregeneratedPrimes , ProtocolAborted } ;
21
21
use crate :: {
22
22
errors:: IoError ,
23
- key_share:: { AuxInfo , DirtyAuxInfo , DirtyIncompleteKeyShare , KeyShare , PartyAux } ,
23
+ key_share:: { DirtyAuxInfo , DirtyIncompleteKeyShare , KeyShare , PartyAux , Validate } ,
24
24
progress:: Tracer ,
25
25
security_level:: SecurityLevel ,
26
26
utils,
@@ -661,8 +661,8 @@ where
661
661
x : SecretScalar :: new ( & mut x_star) ,
662
662
..old_core_share
663
663
}
664
- . try_into ( )
665
- . map_err ( Bug :: InvalidShareGenerated ) ?;
664
+ . validate ( )
665
+ . map_err ( |err| Bug :: InvalidShareGenerated ( err . into_error ( ) . into ( ) ) ) ?;
666
666
tracer. stage ( "Assemble auxiliary info" ) ;
667
667
let mut party_auxes = decommitments
668
668
. iter_including_me ( & decommitment)
@@ -675,14 +675,12 @@ where
675
675
} )
676
676
. collect :: < Vec < _ > > ( ) ;
677
677
party_auxes[ usize:: from ( i) ] . crt = crt;
678
- let mut aux: AuxInfo < L > = DirtyAuxInfo {
678
+ let mut aux = DirtyAuxInfo {
679
679
p,
680
680
q,
681
681
parties : party_auxes,
682
682
security_level : std:: marker:: PhantomData ,
683
- }
684
- . try_into ( )
685
- . map_err ( Bug :: InvalidShareGenerated ) ?;
683
+ } ;
686
684
687
685
if build_multiexp_tables {
688
686
tracer. stage ( "Build multiexp tables" ) ;
@@ -691,8 +689,13 @@ where
691
689
. map_err ( Bug :: BuildMultiexpTables ) ?;
692
690
}
693
691
692
+ let aux = aux
693
+ . validate ( )
694
+ . map_err ( |err| Bug :: InvalidShareGenerated ( err. into_error ( ) ) ) ?;
695
+
694
696
tracer. stage ( "Assemble key share" ) ;
695
- let key_share = KeyShare :: make ( new_core_share, aux) . map_err ( Bug :: InvalidShareGenerated ) ?;
697
+ let key_share = KeyShare :: from_parts ( ( new_core_share, aux) )
698
+ . map_err ( |err| Bug :: InvalidShareGenerated ( err. into_error ( ) ) ) ?;
696
699
697
700
tracer. protocol_ends ( ) ;
698
701
Ok ( key_share)
0 commit comments