Skip to content

tokoinofficial/python-sign-verify-message

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

sign-verify-message

This repos shows the way to sign/verify an ethereum message. It's used for backend of third party where interacts with Tokoin Payment System.

Tokoin Payment System

How to use

  • Sign message
def sign(pk='', types=[], values=[]):
    '''
        - Web3.py only accepts checksum addresses
    '''
    assert (is_hex(pk) is True)
    hash = Web3.soliditySha3(
        types,
        values,
    )
    message = encode_defunct(bytes(hash))
    signed_message = w3.eth.account.sign_message(
        message, private_key=pk)
    return signed_message.signature
  • Verify message
def verify(from_address='', types=[], values=[], signature=None):
    assert (is_address(from_address)
            is True and signature is not None)
    hash = Web3.soliditySha3(
        types,
        values,
    )
    message = encode_defunct(bytes(hash))
    return from_address == w3.eth.account.recover_message(message, signature=signature)

How to run sample

  • pip3 install virualenv
  • virtualenv .venv
  • source .venv/bin/activate
  • pip3 install -r requirements.txt
  • python3 main.py

Demo

Created & Maintained By

Trong Dinh

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages