Skip to content

Commit 4797b13

Browse files
author
Ivo Georgiev
committed
adapter/src/ethereum: 0x prefix the signature on verify
1 parent 9187bef commit 4797b13

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

adapter/src/ethereum.rs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,10 @@ impl Adapter for EthereumAdapter {
130130
}
131131

132132
fn verify(&self, signer: &ValidatorId, state_root: &str, sig: &str) -> AdapterResult<bool> {
133-
let decoded_signature = hex::decode(sig)
133+
if !sig.starts_with("0x") {
134+
return Err(AdapterError::Signature("not 0x prefixed hex".to_string()));
135+
}
136+
let decoded_signature = hex::decode(&sig[2..])
134137
.map_err(|_| AdapterError::Signature("invalid signature".to_string()))?;
135138
let address = Address::from_slice(signer.inner());
136139
let signature = Signature::from_electrum(&decoded_signature);
@@ -473,7 +476,7 @@ mod test {
473476

474477
// Verify
475478
let signature =
476-
"ce654de0b3d14d63e1cb3181eee7a7a37ef4a06c9fabc204faf96f26357441b625b1be460fbe8f5278cc02aa88a5d0ac2f238e9e3b8e4893760d33bccf77e47f1b";
479+
"0xce654de0b3d14d63e1cb3181eee7a7a37ef4a06c9fabc204faf96f26357441b625b1be460fbe8f5278cc02aa88a5d0ac2f238e9e3b8e4893760d33bccf77e47f1b";
477480
let verify = eth_adapter
478481
.verify(
479482
&ValidatorId::try_from("2bDeAFAE53940669DaA6F519373f686c1f3d3393")

0 commit comments

Comments
 (0)