mirror of
https://github.com/serai-dex/serai.git
synced 2025-12-08 12:19:24 +00:00
Hash the message before the challenge function in the Schnorr contract
Slightly more efficient.
This commit is contained in:
@@ -15,7 +15,7 @@ library Schnorr {
|
||||
// message := the message signed
|
||||
// c := Schnorr signature challenge
|
||||
// s := Schnorr signature solution
|
||||
function verify(bytes32 px, bytes memory message, bytes32 c, bytes32 s)
|
||||
function verify(bytes32 px, bytes32 message, bytes32 c, bytes32 s)
|
||||
internal
|
||||
pure
|
||||
returns (bool)
|
||||
|
||||
@@ -9,6 +9,6 @@ contract TestSchnorr {
|
||||
pure
|
||||
returns (bool)
|
||||
{
|
||||
return Schnorr.verify(public_key, message, c, s);
|
||||
return Schnorr.verify(public_key, keccak256(message), c, s);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -38,7 +38,7 @@ impl Signature {
|
||||
&Keccak256::digest(x_and_y_coordinates)[12 ..]
|
||||
});
|
||||
hash.update(key.eth_repr());
|
||||
hash.update(message);
|
||||
hash.update(Keccak256::digest(message));
|
||||
<Scalar as Reduce<KU256>>::reduce_bytes(&hash.finalize())
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user