Skip to content

Commit db91322

Browse files
author
zhiming-zhong
committed
Merge remote-tracking branch 'origin/sudo' into sudo
2 parents 3c6622c + 16b534c commit db91322

2 files changed

Lines changed: 8 additions & 9 deletions

File tree

pallets/identity-management-mock/src/lib.rs

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -546,7 +546,7 @@ pub mod pallet {
546546
) -> DispatchResult {
547547
let code =
548548
Self::challenge_codes(who, identity).ok_or(Error::<T>::ChallengeCodeNotExist)?;
549-
let msg = Self::get_expected_web3_message(who, identity, &code)?;
549+
let msg = Self::get_expected_payload(who, identity, &code)?;
550550

551551
ensure!(
552552
msg.as_slice() == validation_data.message.as_slice(),
@@ -599,7 +599,7 @@ pub mod pallet {
599599
) -> DispatchResult {
600600
let code =
601601
Self::challenge_codes(who, identity).ok_or(Error::<T>::ChallengeCodeNotExist)?;
602-
let msg = Self::get_expected_web3_message(who, identity, &code)?;
602+
let msg = Self::get_expected_payload(who, identity, &code)?;
603603
let digest = Self::compute_evm_msg_digest(&msg);
604604
if let IdentityMultiSignature::Ethereum(sig) = &validation_data.signature {
605605
let recovered_evm_address = Self::recover_evm_address(&digest, sig.as_ref())
@@ -621,18 +621,17 @@ pub mod pallet {
621621
Ok(())
622622
}
623623

624-
// web3 message format: <challeng-code> + <litentry-AccountId32> + <Identity>, where
625-
// <> means SCALE-encoded
626-
// Notice: actually we use the same format for web2 message too
627-
pub fn get_expected_web3_message(
624+
// Payload format: blake2_256(<challeng-code> + <litentry-AccountId32> + <Identity>), where
625+
// <> means SCALE-encoded. It applies to both web2 and web3 message
626+
pub fn get_expected_payload(
628627
who: &T::AccountId,
629628
identity: &Identity,
630629
code: &ChallengeCode,
631630
) -> Result<Vec<u8>, DispatchError> {
632631
let mut msg = code.encode();
633632
msg.append(&mut who.encode());
634633
msg.append(&mut identity.encode());
635-
Ok(msg)
634+
Ok(blake2_256(&msg).to_vec())
636635
}
637636

638637
// we use an EIP-191 message has computing

pallets/identity-management-mock/src/mock.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -177,7 +177,7 @@ pub fn create_mock_polkadot_validation_data(
177177
code: ChallengeCode,
178178
) -> ValidationData {
179179
let identity = create_mock_polkadot_identity(p.public().0);
180-
let msg = IdentityManagementMock::get_expected_web3_message(&who, &identity, &code)
180+
let msg = IdentityManagementMock::get_expected_payload(&who, &identity, &code)
181181
.expect("cannot calculate web3 message");
182182
let sig = p.sign(&msg);
183183

@@ -194,7 +194,7 @@ pub fn create_mock_eth_validation_data(
194194
code: ChallengeCode,
195195
) -> ValidationData {
196196
let identity = create_mock_eth_identity(p.address().0);
197-
let msg = IdentityManagementMock::get_expected_web3_message(&who, &identity, &code)
197+
let msg = IdentityManagementMock::get_expected_payload(&who, &identity, &code)
198198
.expect("cannot calculate web3 message");
199199
let digest = IdentityManagementMock::compute_evm_msg_digest(&msg);
200200
let sig = sign(p.secret(), &Message::from(digest)).unwrap();

0 commit comments

Comments
 (0)