Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import electrum
- import ecdsa
- import base64
- import hashlib
- from electrum import SECP256k1
- from ecdsa.curves import curves
- curves.append(SECP256k1)
- privkey_pem = '''-----BEGIN EC PRIVATE KEY-----
- MHQCAQEEIEYfyzvUn+PhkgCAFjppmfOhsTtvxmiwgM0xdwt+aaOroAcGBSuBBAAK
- oUQDQgAEE/ju0/aNCJAXefHLOQ7khd+vr1vBZ7gipGVPjdc57tWkKlDuv3ecfy1v
- YWOh6CM0CNkmFbSxul7arpwDIh441A==
- -----END EC PRIVATE KEY-----'''
- pubkey_pem = '''-----BEGIN PUBLIC KEY-----
- MFYwEAYHKoZIzj0CAQYFK4EEAAoDQgAEE/ju0/aNCJAXefHLOQ7khd+vr1vBZ7gi
- pGVPjdc57tWkKlDuv3ecfy1vYWOh6CM0CNkmFbSxul7arpwDIh441A==
- -----END PUBLIC KEY-----'''
- data = hashlib.sha256('Some data to sign').digest()
- # Signing data using privkey
- private_key = ecdsa.SigningKey.from_pem(privkey_pem)
- public_key = private_key.get_verifying_key()
- signature = private_key.sign_digest(data, sigencode=ecdsa.util.sigencode_der)
- print base64.b64encode(signature)
- # Verifying signed data using pubkey
- ecdsa.VerifyingKey.from_pem(pubkey_pem)
- print public_key.verify_digest(signature, data, sigdecode=ecdsa.util.sigdecode_der)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement