@@ -996,7 +996,30 @@ recovery data to this participant.
996
996
def participant_investigate(error: UnknownFaultyParticipantOrCoordinatorError, cinv: CoordinatorInvestigationMsg) -> NoReturn
997
997
```
998
998
999
- Perform a participant' s blame step of a ChillDKG session. TODO
999
+ Investigate who is to blame for a failed ChillDKG session.
1000
+
1001
+ This function can optionally be called when `participant_step2` raises
1002
+ `UnknownFaultyParticipantOrCoordinatorError` . It narrows down the suspected
1003
+ faulty parties by analyzing the investigation message provided by the coordinator.
1004
+
1005
+ This function does not return normally. Instead, it raises one of two
1006
+ exceptions.
1007
+
1008
+ * Arguments* :
1009
+
1010
+ - `error` - `UnknownFaultyParticipantOrCoordinatorError` raised by
1011
+ `participant_step2` .
1012
+ - `cinv` - Coordinator investigation message for this participant as output
1013
+ by `coordinator_investigate` .
1014
+
1015
+
1016
+ * Raises* :
1017
+
1018
+ - `FaultyParticipantOrCoordinatorError` - If another known participant or the
1019
+ coordinator is faulty. See the documentation of the exception for
1020
+ further details.
1021
+ - `FaultyCoordinatorError` - If the coordinator is faulty. See the
1022
+ documentation of the exception for further details.
1000
1023
1001
1024
# ### coordinator\_step1
1002
1025
@@ -1080,7 +1103,24 @@ other participants via a communication channel beside the coordinator.
1080
1103
def coordinator_investigate(pmsgs: List[ParticipantMsg1]) -> List[CoordinatorInvestigationMsg]
1081
1104
```
1082
1105
1083
- Perform the coordinator' s blame step of a ChillDKG session. TODO
1106
+ Generate investigation messages for a ChillDKG session.
1107
+
1108
+ The investigation messages will allow the participants to investigate who is
1109
+ to blame for a failed ChillDKG session (see `participant_investigate` ).
1110
+
1111
+ Each message is intended for a single participant but can be safely
1112
+ broadcast to all participants because the messages contain no confidential
1113
+ information.
1114
+
1115
+ * Arguments* :
1116
+
1117
+ - `pmsgs` - List of first messages received from the participants.
1118
+
1119
+
1120
+ * Returns* :
1121
+
1122
+ - `List[CoordinatorInvestigationMsg]` - A list of investigation messages, each
1123
+ intended for a single participant.
1084
1124
1085
1125
# ### recover
1086
1126
@@ -1215,7 +1255,7 @@ information to determine which participant should be suspected.
1215
1255
1216
1256
To determine a suspected participant, the raising participant may choose to
1217
1257
run the optional investigation procedure of the protocol, which requires
1218
- obtaining an investigation message by the coordinator. See the
1258
+ obtaining an investigation message from the coordinator. See the
1219
1259
`participant_investigate` function for details.
1220
1260
1221
1261
This is only raised for specific faulty behavior by another participant
0 commit comments