Malleability attacks can be devastating for TLPs and their applications. This PR is an easy fix to prevent replaying valid ballots from other users by incorporating the msg.sender in the paramtersHash variable, whenever a Fiat-Shamir challenge is computed. I think, this might not be necessary for the Wesolowski proof, but I also attached it there. Maybe there replayability is rather a feature and not a bug, since we want to allow a single party to compute the VDF proof but to allow anyone to submit that to the chain. This might not be the case if we want to give rewards to incentivize the Wesolowski VDF proof submissions.
Malleability attacks can be devastating for TLPs and their applications. This PR is an easy fix to prevent replaying valid ballots from other users by incorporating the
msg.sender
in theparamtersHash
variable, whenever a Fiat-Shamir challenge is computed. I think, this might not be necessary for the Wesolowski proof, but I also attached it there. Maybe there replayability is rather a feature and not a bug, since we want to allow a single party to compute the VDF proof but to allow anyone to submit that to the chain. This might not be the case if we want to give rewards to incentivize the Wesolowski VDF proof submissions.