Changeset View
Changeset View
Standalone View
Standalone View
test/functional/rpc_signmessage.py
Show All 16 Lines | def run_test(self): | ||||
message = 'This is just a test message' | message = 'This is just a test message' | ||||
self.log.info('test signing with priv_key') | self.log.info('test signing with priv_key') | ||||
priv_key = 'cUeKHd5orzT3mz8P9pxyREHfsWtVfgsfDjiZZBcjUBAaGk1BTj7N' | priv_key = 'cUeKHd5orzT3mz8P9pxyREHfsWtVfgsfDjiZZBcjUBAaGk1BTj7N' | ||||
address = 'mpLQjfK79b7CCV4VMJWEWAj5Mpx8Up5zxB' | address = 'mpLQjfK79b7CCV4VMJWEWAj5Mpx8Up5zxB' | ||||
expected_signature = 'IPDOIFcWd8LzOr70CXaal4+uG2ZZWcbHqutyGeO7AJ0MWbqq9C+u3KP9ScjtLzsIgY3st5n8XFQvgMZ0KrDQ9vg=' | expected_signature = 'IPDOIFcWd8LzOr70CXaal4+uG2ZZWcbHqutyGeO7AJ0MWbqq9C+u3KP9ScjtLzsIgY3st5n8XFQvgMZ0KrDQ9vg=' | ||||
signature = self.nodes[0].signmessagewithprivkey(priv_key, message) | signature = self.nodes[0].signmessagewithprivkey(priv_key, message) | ||||
assert_equal(expected_signature, signature) | assert_equal(expected_signature, signature) | ||||
assert(self.nodes[0].verifymessage(address, signature, message)) | assert self.nodes[0].verifymessage(address, signature, message) | ||||
self.log.info('test signing with an address with wallet') | self.log.info('test signing with an address with wallet') | ||||
address = self.nodes[0].getnewaddress() | address = self.nodes[0].getnewaddress() | ||||
signature = self.nodes[0].signmessage(address, message) | signature = self.nodes[0].signmessage(address, message) | ||||
assert(self.nodes[0].verifymessage(address, signature, message)) | assert self.nodes[0].verifymessage(address, signature, message) | ||||
self.log.info('test verifying with another address should not work') | self.log.info('test verifying with another address should not work') | ||||
other_address = self.nodes[0].getnewaddress() | other_address = self.nodes[0].getnewaddress() | ||||
other_signature = self.nodes[0].signmessage(other_address, message) | other_signature = self.nodes[0].signmessage(other_address, message) | ||||
assert(not self.nodes[0].verifymessage( | assert not self.nodes[0].verifymessage( | ||||
other_address, signature, message)) | other_address, signature, message) | ||||
assert(not self.nodes[0].verifymessage( | assert not self.nodes[0].verifymessage( | ||||
address, other_signature, message)) | address, other_signature, message) | ||||
if __name__ == '__main__': | if __name__ == '__main__': | ||||
SignMessagesTest().main() | SignMessagesTest().main() |