diff --git a/blockchain/proof_of_work.py b/blockchain/proof_of_work.py deleted file mode 100644 index df4bdbd86..000000000 --- a/blockchain/proof_of_work.py +++ /dev/null @@ -1,33 +0,0 @@ -import hashlib -import time - - -def proof_of_work(difficulty: int) -> int: - """ - Simulates a Proof of Work mining process. - - The miner must find a nonce such that the hash of the nonce starts - with a specific number of leading zeros (difficulty). - - Args: - difficulty (int): The number of leading zeros required in the hash. - - Returns: - int: The nonce value that solves the puzzle. - - Example: - >>> result = proof_of_work(2) # Difficulty of 2 should be fast - >>> isinstance(result, int) - True - """ - prefix = "0" * difficulty - nonce = 0 - start = time.time() # Timing starts - - while True: - hash_result = hashlib.sha256(f"{nonce}".encode()).hexdigest() - if hash_result.startswith(prefix): - end = time.time() # Timing ends - print(f"Time taken: {end - start:.2f}s") # Print time taken - return nonce - nonce += 1