Skip to content

Instantly share code, notes, and snippets.

@hanwencheng
Last active November 15, 2019 14:38
Show Gist options
  • Save hanwencheng/7185d7eb8ca6dfb0d01c9e3534a49810 to your computer and use it in GitHub Desktop.
Save hanwencheng/7185d7eb8ca6dfb0d01c9e3534a49810 to your computer and use it in GitHub Desktop.
signing test

Test CheatSheet

  1. Recover Identity with seed split cradle example drum veteran swear cruel pizza guilt surface mansion film grant benefit educate marble cargo ignore bind include advance grunt exile grow.
  2. Create account under Kusama Network which is//kusama_CC2//default.
  3. Commet out this line. line 134 and line 137 in QRScanner.js.
  4. Click scan will direct lead to the message detail page and signing page.

Signing test related data

// kusama_CC2//default

//Test Account sign extrinsic of sudo: setRemark 

const signedData = "0148106cfb9426aca99aacbde17f8175937692399ba6ec8c4d9341316baf82560abb18ddac642333c4fd9e2c3c42231651333ff0f7d36f7c09135f8063add8fc80";
const seed = 'split cradle example drum veteran swear cruel pizza guilt surface mansion film grant benefit educate marble cargo ignore bind include advance grunt exile grow'
const dataToSign = "47900000100005301023c36776005aec2f32a34c109dc791a82edef980eec3be80da938ac9bcc68217220170000010c11111165030000fa030000e3777fa922cafbff200cadeaea1a76bd7898ad5b89f7848999058b50e715f636dbb5aefb451e26bd64faf476301f980437d87c0d88dec1a8c7a3eb3cc82e9bbb0ec";

//substrate_dev//default

//Test account send 1 KSM to Alice

const signedData = '0166be967f9f37977cbb256f9d3f2d4702d65bd59424c96a7bbab0fc068f9f664a18531a6d466d5f5499a933b63b7b49239027e6d0e3205a4c95382c090c2f4e8a'
const seed = 'split cradle example drum veteran swear cruel pizza guilt surface mansion film grant benefit educate marble cargo ignore bind include advance grunt exile grow'
const dataToSign = "49a00000100005301020a06171a5ad1be958012949789fb94a2ba91210a42e2a38b33ef5376b1c43450a40600ffd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d070010a5d4e8f5030000b90000000d667fd278ec412cd9fccdb066f09ed5b4cfd9c9afa9eb747213acb02b1e70bca31fbad00ea7110bbf760cfa85f9d585f6651179d4ee698ef2c4794ff9dd51ac0ec11ec11ec11ec11ec11ec11ec11ec11ec11ec11ec11ec11ec11";

Failed Test in Rust

    #[test]
    fn test_substrate_sign1() {
        let msg = "47900000100005301023c36776005aec2f32a34c109dc791a82edef980eec3be80da938ac9bcc68217220170000010c11111165030000fa030000e3777fa922cafbff200cadeaea1a76bd7898ad5b89f7848999058b50e715f636dbb5aefb451e26bd64faf476301f980437d87c0d88dec1a8c7a3eb3cc82e9bbb0ec";
        let signature = "0148106cfb9426aca99aacbde17f8175937692399ba6ec8c4d9341316baf82560abb18ddac642333c4fd9e2c3c42231651333ff0f7d36f7c09135f8063add8fc80";
        let seed = "split cradle example drum veteran swear cruel pizza guilt surface mansion film grant benefit educate marble cargo ignore bind include advance grunt exile grow";
        let is_valid = schnorrkel_verify(&seed, &msg, &signature).unwrap();

        assert!(is_valid);
    }
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment