Example #1
0
def create_check(signature, amount):
    """
    Creates a check to sign
    """
    random_number = random.getrandbits(128)
    check = {
        "amount": amount,
        "signature_customer_public_key": signature,
        "merchant_id": "01",
        "token": random_number
    }
    return serialize(check).decode()
Example #2
0
 def test_merchant_changed_check(self):
     path = "./cryptobank/test/functionalTests/keys/"
     """
     Check that a merchant cannot change the content of a check without the bank noticing
     """
     client_key = Key.import_key_from_path(path + "customer.pubkey")
     with open(path + "check.json", "r") as file_:
         signed_check = unserialize(file_.readline())
     
     check_signature = signed_check["signature"]
     base64_check = signed_check["base64_check"]
      
     #self.assertTrue(verify_signature_check(client_key, check_signature, base64_check))
      
     # check that if someone has changed something to the check, the bank does not accept the check
     false_check = unserialize(base64_check)
     false_check["amount"] = 100 
     false_check_64 = serialize(false_check).decode()
     self.assertFalse(verify_signature_check(client_key, check_signature, false_check_64))