Децентрализованный блокчейн – это тип технологии распределенного реестра, который обеспечивает децентрализованную и прозрачную запись транзакций на нескольких узлах или компьютерах. Он использует криптографические методы для обеспечения безопасности и целостности данных, хранящихся в блокчейне.
Вот несколько методов, обычно используемых в децентрализованных блокчейнах, а также примеры кода:
-
Механизмы консенсуса:
-
Доказательство работы (PoW):
Пример кода (Биткойн):import hashlib def calculate_proof_of_work(block, target): nonce = 0 while True: data = f"{block}{nonce}".encode() hash_value = hashlib.sha256(data).hexdigest() if hash_value < target: return nonce nonce += 1 -
Доказательство доли (PoS):
Пример кода (Ethereum):def calculate_proof_of_stake(block, validator): data = f"{block}{validator}".encode() hash_value = hashlib.sha256(data).hexdigest() return hash_value
-
-
Смарт-контракты:
Пример кода (Solidity – язык смарт-контрактов Ethereum):pragma solidity ^0.8.0; contract SimpleStorage { uint256 private storedData; function set(uint256 x) public { storedData = x; } function get() public view returns (uint256) { return storedData; } } -
Одноранговая сеть:
Пример кода (Python – использование сокетов для связи):import socket def send_data(data, address): with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s: s.connect(address) s.sendall(data.encode()) def receive_data(address): with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s: s.bind(address) s.listen() conn, addr = s.accept() with conn: data = conn.recv(1024).decode() return data