└── generate_signature.cpp /generate_signature.cpp: -------------------------------------------------------------------------------- 1 | import hashlib 2 | import ecdsa 3 | 4 | def generate_signature(private_key, message): 5 | sk = ecdsa.SigningKey.from_string(private_key, curve=ecdsa.SECP256k1) 6 | signature = sk.sign(message.encode()) 7 | return signature 8 | 9 | def verify_signature(public_key, message, signature): 10 | vk = ecdsa.VerifyingKey.from_string(public_key, curve=ecdsa.SECP256k1) 11 | try: 12 | vk.verify(signature, message.encode()) 13 | return True 14 | except ecdsa.BadSignatureError: 15 | return False 16 | 17 | # Example 18 | private_key = b"your_private_key" 19 | public_key = b"your_public_key" 20 | message = "Blockchain transaction data" 21 | signature = generate_signature(private_key, message) 22 | 23 | print(verify_signature(public_key, message, signature)) # True if valid 24 | --------------------------------------------------------------------------------