I want a client to send me a signature which I can "unsign" I found a cool package written in Python called itsdangerous which does everything I need...
>>> from itsdangerous import Signer
>>> s = Signer('secret-key')
>>> s.sign('Things you and me should only know')
'my string.wh6tMHxLgJqB6oY1uT73iMlyrOA'
>>> s.unsign('my string.wh6tMHxLgJqB6oY1uT73iMlyrOA')
'my string'
It works perfectly, however my client is not using Python so how do they sign the string i.e. what does itsdangerous actually do to hash the sting that my client needs to recreate.