Solana: Kiến trúc mới cho blockchain hiệu suất cao

Solana: A new architecture for a high performance blockchain

द्वारा Anatoly Yakovenko · 2017

सिंगल मोड PDF solana.com

Abstract

This paper presents a new blockchain architecture based on Proof of History (PoH) — a proof for verifying order and passage of time between events. PoH is used to encode trustless passage of time into a ledger, creating a historical record that proves that an event occurred at a specific moment in time. When used alongside a Proof of Stake consensus algorithm, PoH can reduce messaging overhead in a Byzantine Fault Tolerant replicated state machine, resulting in sub-second finality times.

The key innovation is the construction of a verifiable delay function implemented as a sequential pre-image resistant hash chain. The PoH sequence continuously runs and outputs a cryptographic proof that some amount of time has elapsed between two events. Data can be inserted into the sequence by appending it to the state that is hashed, thereby creating a timestamp that guarantees the data existed before the next hash was generated. This mechanism establishes a globally available, non-interactive source of time that all participants can verify independently.

By providing a trusted clock before consensus, PoH dramatically reduces the communication complexity of agreement. Validators can verify the relative ordering of events and the passage of time between them without communicating with each other. This allows the system to choose a leader, have that leader sequence user messages, and have validators process those messages in the order dictated by the PoH sequence, all without the traditional overhead of two-phase commit or synchronous coordination. The result is a blockchain capable of processing hundreds of thousands of transactions per second on a standard gigabit network while preserving the decentralization and security guarantees expected of a permissionless system.

The architecture integrates PoH with a Tower BFT consensus mechanism, a data plane optimized for streaming (Turbine), a mempool-less transaction forwarding protocol (Gulf Stream), a parallel smart contract runtime (Sealevel), and a Proof of Replication scheme for distributed storage verification. Together these components form a system whose throughput scales naturally with improvements in hardware — faster processors generate more PoH hashes per second, faster GPUs verify more signatures, and higher-bandwidth networks carry more transaction data — allowing performance to track Moore's Law without protocol changes.

Abstract

Bài viết này trình bày một kiến ​​trúc mới cho một blockchain hiệu suất cao. Solana triển khai cơ chế chấm công mới được gọi là Bằng chứng lịch sử (PoH) — một bằng chứng để xác minh thứ tự và thời gian trôi qua giữa các sự kiện. PoH được sử dụng để mã hóa thời gian trôi qua không đáng tin cậy thành ledger, tạo ra bản ghi lịch sử chứng minh rằng một sự kiện đã xảy ra tại một thời điểm cụ thể.

Sự đổi mới quan trọng là PoH cho phép các nút trong mạng thiết lập thứ tự sự kiện tạm thời mà không yêu cầu chúng liên lạc với nhau. Bằng cách sử dụng hàm trì hoãn có thể kiểm chứng được triển khai dưới dạng chuỗi băm tuần tự, hệ thống sẽ tạo ra đồng hồ mật mã cung cấp cách xác minh thời gian trôi qua giữa các sự kiện. Điều này cho phép mạng xử lý hàng nghìn giao dịch mỗi giây trong khi vẫn duy trì tính phân cấp và bảo mật.

PoH được tích hợp cơ chế đồng thuận Proof of Stake (PoS). Sự kết hợp này cho phép kiến ​​trúc blockchain được tối ưu hóa cao, trong đó validators có thể xác minh các giao dịch song song và đạt được sự đồng thuận một cách hiệu quả. Hệ thống này được thiết kế để mở rộng quy mô theo Định luật Moore, tận dụng sự gia tăng hiệu suất phần cứng để cải thiện thông lượng mà không phải hy sinh sự đảm bảo an ninh của mạng phi tập trung.

Introduction

Blockchains are an implementation of fault tolerant replicated state machines. Currently available public blockchains do not rely on time, or make a weak assumption about the participants' abilities to keep time. Each node in the network typically maintains its own local clock without any guarantee that it is consistent with any other node in the network. The lack of a trusted source of time means that when a message timestamp is used to accept or reject a message, there is no guarantee that every other participant in the network will make the exact same choice. This limitation forces blockchain protocols into complex coordination patterns where nodes must exchange messages to agree on ordering.

The key observation driving Solana's design is that if a reliable source of time is available — a clock that all participants can verify without trusting each other — many of the fundamental scaling limitations of existing blockchains can be removed. In traditional consensus systems like PBFT or Tendermint, every validator must communicate with every other validator to agree on the order of transactions. This produces O(n^2) message complexity, which limits the practical network size and throughput. If ordering is established before consensus begins, validators only need to confirm that they have seen the same sequence, dramatically reducing the communication required.

Proof of History provides exactly this: a cryptographic clock that produces a verifiable record of time passage. PoH is implemented as a sequential computation — a SHA-256 hash chain where each output is used as the input for the next hash. Because SHA-256 is a pre-image resistant function, the only way to produce the output for a given position in the chain is to compute every intermediate hash from the starting point. This means the chain cannot be parallelized or shortcut, and the number of hashes between two events represents a provable lower bound on the real time that has elapsed between them.

The PoH generator runs continuously, producing hashes as fast as the hardware allows. When an event occurs (such as a transaction arriving), its data is mixed into the hash chain by including it as part of the next hash input. The resulting hash and the current counter value form a timestamp for that event. Any verifier can check that the event was incorporated at that specific position in the chain by recomputing the hashes from a known checkpoint. Because SHA-256 is cheap to verify in parallel but expensive to generate sequentially, a single PoH generator can timestamp events at the rate of a single core, while thousands of verifier cores can confirm those timestamps simultaneously.

This paper describes a new blockchain design that leverages PoH as a global clock, enabling a pipeline of optimizations: leader-based block production with predetermined schedules, streaming block propagation, GPU-accelerated signature verification, and parallel transaction execution. The net effect is a system that pushes the bottleneck from consensus messaging to raw hardware throughput — specifically, the bandwidth of the network connection and the speed of the PoH generator's CPU core.

Introduction

Thách thức cơ bản trong các hệ thống blockchain là đạt được thông lượng giao dịch cao trong khi vẫn duy trì tính phân cấp và bảo mật. Việc triển khai blockchain hiện tại bị hạn chế bởi các cơ chế đồng thuận, đòi hỏi phải có sự giao tiếp rộng rãi giữa các nút để thống nhất về thời gian và thứ tự các sự kiện. Chi phí phối hợp này tạo ra một nút cổ chai ngăn cản các chuỗi khối hiện có mở rộng quy mô để đáp ứng nhu cầu của các ứng dụng quy mô toàn cầu.

Vấn đề cốt lõi là thời gian. Trong các hệ thống phân tán, các nút không thể dựa vào đồng hồ bên ngoài vì chúng không thể tin rằng dấu thời gian của các nút khác là chính xác. Các giao thức đồng thuận blockchain truyền thống giải quyết vấn đề này bằng cách cho các nút giao tiếp rộng rãi để thống nhất về trạng thái hiện tại và thứ tự giao dịch. Chi phí liên lạc này về cơ bản hạn chế thông lượng, vì mạng chỉ có thể xử lý các giao dịch nhanh như các nút có thể đạt được sự đồng thuận về thứ tự của chúng.

Solana giới thiệu Bằng chứng Lịch sử như một giải pháp cho vấn đề về thời gian này. PoH cung cấp một phương pháp mã hóa để chứng minh rằng một khoảng thời gian nhất định đã trôi qua giữa các sự kiện mà không dựa vào dấu thời gian từ các tác nhân độc hại tiềm ẩn. Bằng cách tạo một bản ghi lịch sử có thể kiểm chứng, PoH cho phép các nút xử lý các giao dịch một cách độc lập trong khi vẫn có thể chứng minh thứ tự các sự kiện xảy ra. Bước đột phá này cho phép mạng song song xử lý giao dịch và tăng đáng kể thông lượng.

Cái nhìn sâu sắc quan trọng là nếu chúng ta có thể tạo ra nguồn thời gian không cần tin cậy, chúng ta có thể loại bỏ nút thắt phối hợp khỏi sự đồng thuận. Với PoH cung cấp đồng hồ mật mã, validators có thể xử lý các giao dịch song song và chỉ cần giao tiếp để hoàn tất thứ tự chuẩn. Sự thay đổi kiến ​​trúc này cho phép Solana đạt được mức hiệu suất mà trước đây được cho là không thể có trong một chuỗi khối phi tập trung.

Outline

The remainder of this paper is organized as follows. We first describe the Proof of History mechanism in detail, explaining its construction from sequential SHA-256 hashing and the properties that make it suitable as a verifiable delay function. We then describe how data is inserted into the PoH sequence and how the resulting timestamps can be verified efficiently.

Next, we present the network design of Solana, including the leader rotation mechanism, the data plane used for block-propagation/" class="glossary-link" data-slug="block-propagation" title="block propagation">block propagation, and the transaction forwarding protocol that eliminates the need for a traditional mempool. We explain how the predetermined leader schedule, made possible by PoH's trusted clock, enables clients to send transactions directly to the upcoming leader, reducing confirmation latency.

We then describe how Proof of History integrates with a Proof of Stake consensus algorithm. The consensus mechanism, bft/" class="glossary-link" data-slug="tower-bft" title="Tower BFT">Tower BFT, uses PoH as a cryptographic clock to implement time-based lockouts that grow exponentially with each consecutive vote. This design produces a system where the cost of reverting a confirmed block increases exponentially over time, providing practical finality within seconds.

The paper proceeds to describe Streaming Proof of Replication, a mechanism for validators to prove they are storing a copy of the ledger state. This component addresses data availability — the requirement that enough copies of the blockchain data exist across the network for any participant to reconstruct the full state.

Finally, we present the system architecture as an integrated pipeline. The Transaction Processing Unit (TPU) fetches transactions, verifies signatures on the GPU, executes transactions in parallel using the Sealevel runtime, and writes the results to the ledger. We present performance projections based on the computational limits of current hardware and demonstrate that the system can process over 710,000 transactions per second on a standard gigabit network, with this throughput scaling as hardware improves over time.

Throughout the paper, we compare our approach against existing designs where relevant. Traditional blockchains process transactions sequentially and reach consensus through all-to-all communication. Solana replaces these serial bottlenecks with a pipelined, parallelized architecture where the PoH sequence serves as the coordinating mechanism, allowing each component to operate at its maximum hardware-limited throughput.

Outline

Bài viết này mô tả kiến ​​trúc kỹ thuật của Solana, tập trung vào cách Bằng chứng Lịch sử cho phép vận hành chuỗi khối hiệu suất cao. Tài liệu đầu tiên giải thích cơ chế PoH - cách chuỗi băm tuần tự tạo ra thứ tự sự kiện theo thời gian có thể kiểm chứng được. Chúng tôi trình bày chi tiết các thuộc tính mật mã giúp PoH an toàn và chứng minh cách validators có thể xác minh chuỗi PoH một cách hiệu quả.

Sau đó, bài viết khám phá cách PoH tích hợp với sự đồng thuận Proof of Stake. Chúng tôi mô tả Tower BFT, một thuật toán PoS được thiết kế đặc biệt để tận dụng các đặc tính tạm thời của PoH. Việc tích hợp cho phép validators bỏ phiếu về trạng thái của ledger tại các dấu thời gian PoH cụ thể, tạo ra cơ chế đồng thuận vừa nhanh chóng vừa an toàn. Chúng tôi cũng giải thích các điều kiện cắt để ngăn chặn hành vi nguy hiểm.

Tiếp theo, chúng tôi trình bày các giao thức truyền dữ liệu và thiết kế mạng của Solana. Giao thức Gulf Stream cho phép chuyển tiếp giao dịch mà không cần mempool, cho phép khách hàng gửi giao dịch trực tiếp đến các nhà lãnh đạo sắp tới. Chúng tôi mô tả cách hoạt động của việc luân chuyển người lãnh đạo và cách mạng duy trì thông lượng cao ngay cả khi người lãnh đạo thay đổi.

Cuối cùng, chúng tôi thảo luận về kiến ​​trúc hệ thống bao gồm Đơn vị xử lý giao dịch (TPU), thời gian chạy song song Sealevel và Bằng chứng sao chép để xác minh lưu trữ dữ liệu. Các dự đoán về hiệu suất chứng minh rằng Solana có thể xử lý hơn 700.000 giao dịch mỗi giây trên mạng gigabit tiêu chuẩn, với khả năng mở rộng thông lượng khi phần cứng được cải thiện.

Network Design

Solana's network operates on a rotating leader model where a single validator at a time is designated as the leader, responsible for producing the PoH sequence and ordering transactions into blocks. Validators are assigned leader slots according to a stake-weighted schedule that is derived deterministically from the PoH sequence itself. Because every validator can independently compute the same leader schedule from the same PoH state, the rotation is globally consistent without requiring any coordination messages.

Solana network design showing transaction flow through the leader validator to the rest of the network

A leader slot lasts for a fixed number of PoH ticks (currently configured at 800ms worth of hashes). During its slot, the leader ingests transactions from clients, orders them into the PoH stream, and produces a block that is streamed to the rest of the network. At the end of its slot, the next leader in the schedule takes over, continuing the PoH sequence from where the previous leader stopped. If a leader fails to produce a block during its slot — due to a crash, network partition, or malicious behavior — the slot is skipped and the next leader begins its rotation, with the gap in the PoH sequence serving as a verifiable record that time passed but no block was produced.

The data plane uses a protocol called Turbine, which is designed to maximize the use of network bandwidth while minimizing the data each individual validator must transmit. When a leader produces a block, it does not broadcast the entire block to every validator. Instead, the block is broken into small packets called shreds using Reed-Solomon erasure coding. The leader sends each shred to a different validator in a tree structure called a fanout tree. Each validator that receives a shred retransmits it to a fixed number of downstream validators in the tree, and those validators retransmit to their downstream neighbors, and so on. This creates a propagation pattern similar to BitTorrent, where the network's aggregate bandwidth is used to distribute the block rather than requiring the leader to have enough bandwidth to serve every validator directly.

Erasure coding is critical to Turbine's design. The leader encodes each block into data shreds and recovery shreds such that any sufficiently large subset of the total shreds is enough to reconstruct the full block. Even if some shreds are lost due to network failures or if some validators in the fanout tree fail to retransmit, the remaining validators can still recover the complete block from the shreds they did receive. This provides resilience against both random packet loss and targeted adversarial behavior.

Gulf Stream is Solana's transaction forwarding protocol, which eliminates the traditional mempool used by most blockchain networks. In a conventional blockchain, transactions are broadcast to the entire network and stored in each node's mempool until they are included in a block. This approach wastes bandwidth, as every transaction is transmitted to every node regardless of whether that node will process it. Gulf Stream instead forwards transactions directly to the expected leader. Because the leader schedule is known in advance (derived from the PoH state), clients and validators can determine which validator will be the leader for upcoming slots and forward transactions accordingly.

When a client submits a transaction, it includes a recent blockhash (a reference to a recent PoH checkpoint) that serves as a transaction lifetime marker. The transaction is valid only for a limited number of slots after the referenced blockhash. If the transaction is not processed within that window, it expires and the client must resubmit it with a more recent blockhash. This expiration mechanism prevents stale transactions from accumulating and allows validators to prune unprocessed transactions efficiently, keeping memory usage bounded without maintaining a global mempool.

The combination of known leader schedules, direct transaction forwarding, and transaction expiration means that by the time a validator becomes the leader, it already has most of the transactions it needs to build its block. There is no need to wait for mempool synchronization or to gossip unconfirmed transactions across the network. This design reduces confirmation latency because transactions arrive at the leader before it begins its slot, and it reduces network bandwidth consumption because transactions are forwarded along targeted paths rather than broadcast to all validators.

Network Design

Thiết kế mạng của Solana xoay quanh hệ thống lãnh đạo luân phiên trong đó validators thay phiên nhau sản xuất các khối. Người đứng đầu chịu trách nhiệm sắp xếp các giao dịch đến vào luồng PoH và xuất bản các khối kết quả lên mạng. Các nhà lãnh đạo được lựa chọn thông qua thuật toán có trọng số cổ phần và lịch trình luân chuyển được biết trước, cho phép mạng tối ưu hóa việc chuyển tiếp giao dịch.

Solana network design showing transaction flow through the leader validator to the rest of the network

Giao thức Gulf Stream loại bỏ sự cần thiết của một mempool truyền thống bằng cách cho phép khách hàng chuyển tiếp các giao dịch trực tiếp đến các nhà lãnh đạo sắp tới. Khi khách hàng gửi một giao dịch, nó sẽ được chuyển tiếp đến người lãnh đạo dự kiến ​​dựa trên lịch trình luân chuyển. Nếu người lãnh đạo hiện tại không thể xử lý giao dịch, nó sẽ chuyển tiếp nó đến người lãnh đạo dự kiến ​​tiếp theo. Thiết kế này giúp giảm độ trễ xác nhận và cho phép validators thực hiện các giao dịch trước thời hạn, tối ưu hóa hơn nữa thông lượng.

Tuyên truyền giao dịch sử dụng cách tiếp cận nhiều lớp. Khách hàng gửi giao dịch tới validators, người này sẽ chuyển tiếp chúng tới người lãnh đạo hiện tại hoặc sắp tới. Người lãnh đạo sắp xếp các giao dịch vào luồng PoH, tạo ra thứ tự tổng thể. Sau khi được sắp xếp theo trình tự, người lãnh đạo sẽ truyền luồng PoH và dữ liệu giao dịch tới validators, người sẽ xác minh trình tự PoH và thực hiện các giao dịch song song.

Thiết kế mạng cũng bao gồm giao thức truyền khối tuabin giúp chia các khối thành các gói nhỏ hơn và phân phối chúng trên mạng theo cấu trúc cây. Cách tiếp cận này giảm thiểu yêu cầu về băng thông cho validators riêng lẻ trong khi vẫn đảm bảo việc truyền khối nhanh chóng. Kết hợp với khả năng xác minh thứ tự giao dịch của PoH, kiến ​​trúc này cho phép Solana đạt được thông lượng cao mà không phải hy sinh khả năng phân cấp.

Proof of History

Proof of History is a sequence of computations that provides a cryptographic way to verify the passage of time between two events. It uses a sequential pre-image resistant hash function — specifically SHA-256 — that is run continuously, with the previous output used as the next input. Periodically, the current count and hash output are recorded, and each recorded sample can be verified by an external computer in the time it takes to evaluate the hash function from the starting state to the recorded sample.

The construction is straightforward. Starting from some initial hash value hash_0, the PoH generator computes:

hash_1 = SHA256(hash_0)
hash_2 = SHA256(hash_1)
hash_3 = SHA256(hash_2)
...
hash_n = SHA256(hash_{n-1})

Proof of History sequence showing sequential SHA-256 hash outputs with counter values

Each hash in the sequence can only be computed after the previous one. Because SHA-256 is pre-image resistant, there is no known way to find hash_n without computing all intermediate hashes hash_1 through hash_{n-1}. This property means the sequence acts as a verifiable delay function (VDF): producing n hashes requires sequential work proportional to n, and no amount of parallel hardware can accelerate the computation. The elapsed wall-clock time to generate n hashes on a given processor provides a lower bound on the real time that passed during generation.

The critical asymmetry exploited by PoH is between generation and verification. While the hash chain must be generated sequentially on a single core, it can be verified in parallel by splitting it into segments. If a verifier receives the sequence along with checkpoints (hash value and counter pairs), it can divide the work among multiple cores. For example, given checkpoints at positions 0, 1000, 2000, and 3000, four cores can simultaneously verify the segments [0,1000], [1000,2000], [2000,3000] by each recomputing 1000 hashes and checking that the endpoint matches. This means verification is approximately c times faster than generation, where c is the number of cores available to the verifier.

Generation (sequential, single core):

  hash_0 → hash_1 → hash_2 → ... → hash_999 → hash_1000 → ... → hash_2000

Verification (parallel, multi-core):

  Core 1: hash_0    → ... → hash_999  ✓ matches checkpoint
  Core 2: hash_1000 → ... → hash_1999 ✓ matches checkpoint
  Core 3: hash_2000 → ... → hash_2999 ✓ matches checkpoint

Proof of History verification using multiple CPU cores to check hash chain segments in parallel

Inserting external data into the Proof of History hash sequence to create a verifiable timestamp

Proof of History input with a back reference ensuring consistency and causal ordering of events

Data can be inserted into the PoH sequence to create timestamps. When external data — such as a transaction hash, a photograph of a newspaper front page, or any arbitrary bytes — needs to be timestamped, it is appended to the current hash state and included in the next hash computation. For example, if the current state is hash_n and external data D arrives, the generator computes hash_{n+1} = SHA256(hash_n || SHA256(D)), where || denotes concatenation. The PoH record then includes the entry (n+1, D, hash_{n+1}), proving that data D existed before hash_{n+1} was computed and after hash_n was computed. The data insertion is irreversible: removing or altering D would change hash_{n+1} and every subsequent hash in the chain.

This data insertion mechanism provides a total ordering of events. If event A is inserted at position n and event B is inserted at position m where n m, then the hash chain proves that A was recorded before B. The number of hashes between positions n and m provides a lower bound on the time that elapsed between the two events. This ordering is non-interactive — any observer who has access to the hash chain can independently verify the ordering without communicating with the generator or any other observer.

The security of PoH rests on the pre-image resistance of SHA-256. An attacker who wants to forge a PoH sequence — inserting a different event at a given position while maintaining a valid hash chain — would need to recompute the entire chain from the point of forgery. Because the generator is running continuously at the maximum speed of a single core, the attacker's forged chain would always be behind the legitimate chain. To catch up, the attacker would need hardware that is faster than the generator's hardware on a single-core sequential SHA-256 computation, which is bounded by the laws of physics and the current state of semiconductor technology. This makes PoH manipulation economically and physically impractical for any reasonably provisioned generator.

Proof of History

Bằng chứng lịch sử là một hàm trì hoãn có thể kiểm chứng được triển khai dưới dạng chuỗi băm tuần tự sử dụng SHA-256. Trình tạo PoH liên tục tính toán các hàm băm SHA-256, sử dụng mỗi đầu ra làm đầu vào cho hàm băm tiếp theo. Điều này tạo ra một chuỗi tuần tự trong đó mỗi hàm băm chỉ có thể được tính sau chuỗi trước đó, thiết lập một thứ tự thời gian có thể kiểm chứng được. Yêu cầu tính toán để tạo ra mỗi hàm băm buộc phải có độ trễ thời gian tối thiểu giữa các sự kiện.

Proof of History sequence showing sequential SHA-256 hash outputs with counter values

Đặc tính quan trọng của PoH là chi phí xác minh rẻ nhưng chi phí sản xuất đắt. Trình xác minh có thể kiểm tra song song toàn bộ chuỗi băm bằng cách chia nó thành các phân đoạn và kiểm tra từng phân đoạn một cách độc lập, sau đó xác minh rằng các phân đoạn đó kết nối đúng cách. Tuy nhiên, việc tạo phải tuần tự - không có cách nào để dự đoán đầu ra của chuỗi băm mà không thực sự tính toán từng bước trung gian. Sự bất cân xứng giữa việc tạo và xác minh này là điều khiến PoH trở nên thiết thực.

Proof of History verification using multiple CPU cores to check hash chain segments in parallel

Các sự kiện bên ngoài và dữ liệu giao dịch được chèn vào chuỗi PoH bằng cách trộn chúng vào chuỗi băm. Khi một giao dịch đến, hàm băm của nó được kết hợp với trạng thái PoH hiện tại, tạo ra một bản ghi chứng minh giao dịch tồn tại tại thời điểm đó trong chuỗi. Trình tạo PoH ghi lại các điểm kiểm tra định kỳ, xuất bản giá trị băm hiện tại cùng với số lượng giá trị băm được tính kể từ điểm kiểm tra cuối cùng. Các điểm kiểm tra này cho phép validators xác minh hiệu quả chuỗi PoH mà không cần tính toán lại mọi hàm băm.

Inserting external data into the Proof of History hash sequence to create a verifiable timestamp

Chuỗi PoH đóng vai trò là đồng hồ mật mã cho toàn bộ mạng. Bởi vì chuỗi băm là tuần tự và có thể kiểm chứng được nên bất kỳ nút nào cũng có thể chứng minh rằng một khoảng thời gian nhất định đã trôi qua giữa hai sự kiện chỉ bằng cách hiển thị các giá trị băm được tính toán trong khoảng thời gian đó. Điều này giúp loại bỏ nhu cầu các nút phải tin cậy vào dấu thời gian bên ngoài hoặc phối hợp với nhau để thiết lập thứ tự tạm thời, loại bỏ nút thắt cơ bản trong sự đồng thuận blockchain truyền thống.

Proof of History input with a back reference ensuring consistency and causal ordering of events

Proof of History Sequence

The Proof of History sequence is a continuous stream of hash computations that serves as the backbone of Solana's temporal ordering system. The sequence begins with an arbitrary seed value and proceeds indefinitely, with the generator computing SHA-256 hashes as fast as the underlying hardware allows. Alongside the hash values, the generator maintains a monotonically increasing counter that records the total number of hashes computed since the sequence began. This counter serves as the canonical "clock tick" for the network.

The PoH output is recorded as a series of entries, each containing the counter value, the hash output, and optionally any data that was mixed into the hash at that position. Not every hash is recorded — the generator may output entries at regular intervals (for example, every 800,000 hashes), producing checkpoints that divide the sequence into verifiable segments. Between checkpoints, the generator may also produce entries at irregular intervals whenever data is inserted into the sequence. The complete sequence of entries forms the PoH log, which serves as a verifiable timeline for all events on the network.

Two Proof of History generators synchronizing by inserting each other's output state for horizontal scaling

Multiple data items can be inserted at the same PoH index by hashing them together before mixing into the state. For example, if transactions Tx_1 and Tx_2 arrive simultaneously, the generator computes hash_{n+1} = SHA256(hash_n || SHA256(Tx_1) || SHA256(Tx_2)). The ordering within a single PoH index is determined by the generator (the leader), while the ordering between different PoH indices is determined by the hash chain. This two-level ordering scheme provides both fine-grained (intra-tick) and coarse-grained (inter-tick) temporal resolution.

Verification of the PoH sequence proceeds in two phases. In the first phase, a verifier checks the structural integrity of the hash chain by recomputing hashes between checkpoints and confirming that the computed output matches the recorded checkpoint value. This can be parallelized across multiple cores, with each core independently verifying one segment. In the second phase, the verifier checks that data insertions are correct by confirming that the hash at each insertion point correctly incorporates the declared data. Both phases can run simultaneously on different cores, making verification significantly faster than generation.

The PoH sequence also supports light proofs. A node that wants to prove that a specific event occurred at a specific position in the PoH sequence need not transmit the entire hash chain. Instead, it can provide the event data, the PoH hash at the insertion point, the hashes at the surrounding checkpoints, and a compact proof that the checkpoints are part of the canonical PoH sequence (confirmed by validator votes). The verifier can then check the segment containing the insertion point and confirm the event's position without processing the full sequence.

A critical design consideration is the speed of the PoH generator. The generator should use the fastest available single-core hardware for SHA-256 computation, because the rate of hash production determines the "tick rate" of the cryptographic clock. If an adversary has access to significantly faster hardware, they could generate an alternative PoH sequence faster than the legitimate generator, potentially creating a forged timeline. In practice, the fastest SHA-256 hardware available is commodity ASIC or high-end CPU hardware, and the difference in single-core performance between the fastest and second-fastest hardware is small — typically within a factor of two. This means an attacker's forged sequence would still fall behind the legitimate sequence as long as the legitimate generator starts first and the attacker cannot sustain twice the single-core hash rate indefinitely.

The PoH sequence naturally handles the passage of time during periods of inactivity. When no transactions are being submitted, the generator continues to compute hashes, producing "empty ticks" that advance the clock without recording any events. These empty ticks prove that time passed even when no activity occurred, which is important for features like transaction expiration and for distinguishing between a leader that produced an empty slot (because no transactions arrived) and a leader that failed to produce any output at all.

Proof of History Sequence

Chuỗi Bằng chứng Lịch sử là một chuỗi băm SHA-256 liên tục trong đó mỗi hàm băm phụ thuộc vào đầu ra trước đó. Chuỗi bắt đầu bằng giá trị hạt giống ban đầu, được băm để tạo ra đầu ra đầu tiên. Đầu ra này trở thành đầu vào cho hàm băm tiếp theo và quá trình lặp lại vô thời hạn. Trình tạo cũng duy trì một bộ đếm theo dõi tổng số giá trị băm được tính toán, đóng vai trò là "dấu thời gian" PoH cho các sự kiện trong ledger.

Two Proof of History generators synchronizing by inserting each other's output state for horizontal scaling

Khi dữ liệu cần được chèn vào chuỗi (chẳng hạn như băm giao dịch hoặc chữ ký validator), nó sẽ được kết hợp với trạng thái băm hiện tại bằng cách sử dụng hàm trộn xác định. Ví dụ: nếu trạng thái băm hiện tại là hash_n và chúng tôi muốn chèn dữ liệu D, chúng tôi tính toán hash_{n+1} = SHA256(hash_n || D), trong đó || biểu thị sự nối. Điểm chèn được ghi lại cùng với giá trị bộ đếm, chứng minh rằng dữ liệu D tồn tại tại điểm cụ thể đó trong chuỗi.

Việc xác minh trình tự PoH có thể được thực hiện song song bằng cách chia chuỗi thành các đoạn. Ví dụ: validator có thể nhận được điểm kiểm tra PoH sau mỗi 10.000 lần băm. Để xác minh trình tự giữa các điểm kiểm tra, validator có thể chia 10.000 giá trị băm thành 100 phân đoạn, mỗi phân đoạn có 100 giá trị băm, xác minh song song từng phân đoạn một cách độc lập và sau đó xác minh rằng các phân đoạn đó kết nối đúng cách. Điều này cho phép xác minh mở rộng theo chiều ngang với số lượng lõi CPU có sẵn.

Trình tự này cũng hỗ trợ các bằng chứng hiệu quả cho thấy hai sự kiện xảy ra theo một thứ tự cụ thể. Cho hai phần chèn dữ liệu tại các giá trị bộ đếm nm trong đó n m, bất kỳ ai cũng có thể xác minh rằng sự kiện tại n đã xảy ra trước sự kiện tại m bằng cách kiểm tra chuỗi băm giữa các điểm đó. Thuộc tính này cho phép Solana tạo bản ghi lịch sử có thể xác minh được về tất cả các sự kiện trong mạng mà không yêu cầu các nút phải trực tuyến liên tục hoặc tin cậy vào các nguồn thời gian bên ngoài.

Timestamp

Each hash and counter published by the PoH generator represents a unique timestamp. This timestamp is a proof that the data was created before the hash was generated. The PoH sequence can be used to embed wall-clock time estimates that validators collectively agree upon, creating a bridge between the cryptographic clock and human-readable time.

The mechanism works as follows. Each PoH tick represents a cryptographic timestamp — a position in the hash chain that can be verified but that does not directly correspond to a wall-clock time. To establish a mapping between PoH ticks and real-world time, validators periodically submit signed observations of their local wall-clock time along with the current PoH tick count. These observations are recorded in the PoH stream. After collecting observations from a sufficient number of validators, the network can compute a bounded estimate of the real-world time at each PoH tick by taking the stake-weighted median of the reported times.

Validator Timestamp Observations:

PoH Tick 500000:
  Validator A (10% stake): 2017-11-15T12:00:00.000Z
  Validator B (15% stake): 2017-11-15T12:00:00.012Z
  Validator C (20% stake): 2017-11-15T12:00:00.005Z
  Validator D (5% stake):  2017-11-15T12:00:00.008Z

Stake-weighted median → 2017-11-15T12:00:00.006Z
Bound: ±20ms (based on PoH tick rate and observation spread)

The bound on the wall-clock estimate depends on two factors: the variance in network propagation delays (which affects when different validators observe the same PoH tick) and the granularity of the PoH clock (which depends on the hash rate of the generator). On a 4GHz processor computing approximately 4 million SHA-256 hashes per second, the PoH clock has a resolution of approximately 0.25 microseconds per tick. Network propagation delays are typically on the order of tens to hundreds of milliseconds, so the bound on wall-clock estimates is dominated by network latency rather than PoH resolution.

This timestamp mechanism is important for several protocol features. Transaction expiration relies on timestamps to determine when a transaction's referenced blockhash has become too old. Stake lockup periods use timestamps to determine when staked tokens can be withdrawn. Oracle integrations use timestamps to verify the freshness of external data feeds. And any on-chain program that needs to implement time-dependent logic — such as scheduled payments, time-locked contracts, or rate limiting — can use the PoH-derived timestamps as a trusted time source.

A critical security property of PoH timestamps is that they cannot be manipulated by a single malicious leader. A leader could attempt to assign incorrect wall-clock times to PoH ticks, but because the wall-clock estimates are computed from the stake-weighted median of multiple validators' observations, a single malicious validator (even one with significant stake) cannot significantly skew the median. To shift the median by more than the normal observation variance, an attacker would need to control a majority of the stake, which would compromise the security of the consensus mechanism itself and is therefore outside the threat model.

The PoH clock also provides a mechanism for detecting leaders that are running at an abnormal rate. If a leader is generating PoH hashes significantly faster or slower than expected (relative to the observed wall-clock rate of previous leaders), validators can detect this discrepancy and reject blocks from that leader. This prevents attacks where a malicious leader attempts to compress or extend time by manipulating the rate of PoH generation. The expected PoH rate is calibrated based on the observed performance of the network's hardware, and validators maintain a running estimate of the normal rate to detect anomalies.

Timestamp

Proof of History functions as a decentralized clock that assigns timestamps to events without relying on wall-clock time. Each PoH hash represents a discrete "tick" of the cryptographic clock, and the counter value serves as the timestamp. Bởi vì chuỗi băm là tuần tự và có thể xác minh được nên những dấu thời gian này không đáng tin cậy — bất kỳ người quan sát nào cũng có thể xác minh rằng dấu thời gian là hợp pháp bằng cách kiểm tra chuỗi băm.

Trong Solana, mỗi validator có thể tạo chuỗi PoH của riêng mình khi đóng vai trò là người dẫn đầu. Khi validators luân phiên lãnh đạo, họ đồng bộ hóa trình tự PoH của mình bằng cách sử dụng điểm kiểm tra được xác nhận cuối cùng từ người lãnh đạo trước đó. Điều này đảm bảo tính liên tục của bản ghi tạm thời ngay cả khi các validators khác nhau lần lượt tạo ra các khối. Mạng thiết lập một dòng thời gian chuẩn bằng cách đạt được sự đồng thuận về việc chấp nhận các chuỗi PoH nào như một phần của ledger chính thức.

Hệ thống xử lý độ lệch xung nhịp và sự khác biệt trong hiệu suất phần cứng thông qua sự kết hợp giữa xoay vòng chỉ huy và đồng thuận. Nếu một nhà lãnh đạo độc hại hoặc bị lỗi cố gắng tạo dấu thời gian PoH với tốc độ không chính xác (quá nhanh hoặc quá chậm), validators có thể phát hiện điều này bằng cách so sánh tốc độ đánh dấu PoH với các trình tạo PoH cục bộ của chúng. Những sai lệch đáng kể so với tỷ lệ dự kiến ​​cho thấy có vấn đề và validators có thể từ chối các khối từ các nhà lãnh đạo có trình tự PoH phân kỳ quá xa so với mức trung bình của mạng.

Cơ chế đánh dấu thời gian này giải quyết một trong những vấn đề cơ bản trong hệ thống phân tán: thiết lập một khái niệm chung về thời gian mà không cần có cơ quan trung ương đáng tin cậy. Bằng cách sử dụng PoH làm đồng hồ phi tập trung, Solana cho phép validators xử lý các giao dịch song song trong khi vẫn duy trì trật tự nhất quán trên toàn cầu. Dấu thời gian cũng cung cấp nền tảng cho các tính năng dựa trên thời gian như hết hạn giao dịch, hoạt động theo lịch trình và đo lường hiệu suất.

Proof of Stake Consensus

Solana uses a Proof of Stake consensus mechanism called bft/" class="glossary-link" data-slug="tower-bft" title="Tower BFT">Tower BFT that is specifically designed to leverage the temporal guarantees provided by Proof of History. In Tower BFT, validators stake SOL tokens as collateral and vote on the validity of blocks produced by leaders. Validators earn rewards proportional to their stake for correctly participating in consensus, and they risk having their stake slashed if they violate the protocol rules. The stake-weighted voting ensures that the consensus decision reflects the economic interests of the network's stakeholders.

The fundamental innovation in Tower BFT is the use of PoH as a clock for implementing exponentially increasing lockout periods. When a validator votes on a block at a specific PoH slot, it commits to that fork of the ledger. Each consecutive vote on the same fork doubles the lockout period before the validator can switch to an alternative fork. Specifically, if a validator has made n consecutive votes on a particular fork, the lockout period before the oldest of those votes expires is 2^n PoH slots. This exponential growth means that after a modest number of consecutive votes (for example, 32), the lockout period becomes astronomically long — over 4 billion slots, which at typical slot times would take decades to expire.

Tower BFT Exponential Lockout:

Vote #  Lockout (slots)   Cumulative commitment
─────────────────────────────────────────────────
1       2                 Low — can switch forks quickly
2       4
3       8
4       16
5       32
...
12      4,096             Minutes of lockout
...
20      1,048,576         Hours of lockout
...
32      4,294,967,296     Effectively permanent (decades)

This lockout mechanism creates a natural finality gradient. A block that has received votes from validators representing a supermajority of stake, where those validators have many consecutive votes on the fork containing that block, is effectively finalized. Reverting such a block would require those validators to wait for their lockouts to expire — a period that grows exponentially and quickly becomes impractical. In practice, blocks achieve effective finality within seconds, as validators rapidly accumulate consecutive votes on the canonical fork.

The integration with PoH is what makes this lockout scheme practical. In traditional BFT systems, lockout periods would need to be measured in wall-clock time, which requires nodes to trust each other's clocks or engage in complex time-synchronization protocols. With PoH, lockout periods are measured in PoH slots — a verifiable, tamper-proof unit of time. Every validator can independently verify whether a given lockout has expired by checking the PoH sequence, without trusting any other node's clock. This eliminates the ambiguity that would otherwise make time-based lockouts vulnerable to manipulation.

Slashing is the mechanism by which validators are penalized for violating protocol rules. The primary slashable offense is equivocation: voting on two conflicting forks during a period when the validator should be locked out on one fork. If a validator votes on fork A and then votes on a conflicting fork B before their lockout on A expires, any observer who possesses both votes can construct a slashing proof. This proof demonstrates that the validator violated its lockout commitment, and the network can automatically destroy a portion of the validator's staked tokens as punishment. The economic cost of slashing makes equivocation irrational for any validator whose stake exceeds the potential profit from the attack.

Leader selection in Tower BFT is determined by the PoH sequence and the current stake distribution. The leader schedule is computed deterministically from a recent snapshot of the stake distribution and a seed derived from the PoH state. This computation is performed independently by every validator, and because both inputs (stake distribution and PoH state) are part of the consensus state, all honest validators arrive at the same leader schedule. The schedule is computed for upcoming epochs (periods of several hundred thousand slots), giving the network advance notice of which validator will lead each slot. This predictability enables the Gulf Stream transaction forwarding protocol and allows validators to prepare for their leadership slots in advance.

Validators that are not currently serving as leader participate in consensus by voting on blocks produced by the current leader. When a validator receives a block, it verifies the PoH sequence, executes the transactions in the block, and if everything is valid, casts a vote for that block by signing the block's hash along with the PoH slot number. These votes are themselves transactions that are submitted to the leader of the current slot for inclusion in the PoH stream. Once a block has received votes representing more than two-thirds of the total stake, it is considered confirmed and all validators can advance their local view of the finalized state.

Proof of Stake Consensus

Cơ chế đồng thuận của Solana, được gọi là Tower BFT, là một thuật toán Proof of Stake được thiết kế đặc biệt để tận dụng các thuộc tính tạm thời của Proof of History. Người xác thực đặt cược mã thông báo SOL để tham gia đồng thuận và kiếm phần thưởng cho việc xác thực các khối một cách chính xác. Hệ thống bỏ phiếu theo tỷ lệ cổ phần đảm bảo rằng validators có nhiều lợi ích kinh tế hơn trong mạng sẽ có ảnh hưởng tương ứng nhiều hơn đến các quyết định đồng thuận.

Sự đổi mới cốt lõi trong Tower BFT là việc sử dụng thời gian khóa tăng theo cấp số nhân với mỗi lần bỏ phiếu liên tiếp. Khi validator bỏ phiếu cho hàm băm PoH, họ cam kết thực hiện phân nhánh đó của ledger cho một số lượng dấu tích PoH nhất định. Nếu họ bỏ phiếu cho khối tiếp theo trong nhánh đó, thời gian khóa sẽ tăng gấp đôi. Điều này tạo ra động lực kinh tế mạnh mẽ để validators tiếp tục bỏ phiếu trên cùng một nhánh, vì việc chuyển đổi nhánh sẽ yêu cầu phải đợi thời gian khóa trước đó hết hạn.

Cụ thể, nếu validator bỏ phiếu cho một khối ở dấu thời gian PoH t, họ không thể bỏ phiếu cho một fork xung đột cho đến khi 2^n tích tắc trôi qua, trong đó n là số phiếu bầu liên tiếp mà họ đã thực hiện trên fork hiện tại. Cơ chế khóa theo cấp số nhân này giúp hệ thống an toàn trước các cuộc tấn công tầm xa đồng thời cho phép thực hiện nhanh chóng. Khi đa số cổ phần đã bỏ phiếu cho một khối có đủ độ sâu, khối đó sẽ được hoàn thiện một cách hiệu quả.

Điều kiện chặt chém buộc hành vi trung thực. Nếu validator bỏ phiếu trên hai nhánh xung đột trong khoảng thời gian đáng lẽ chúng phải bị khóa, thì chúng sẽ bị cắt — mã thông báo đặt cược của chúng bị phá hủy một phần và chúng bị xóa khỏi bộ validator. Điều này làm cho việc cố gắng nói lập lờ hoặc hành vi Byzantine khác trở nên phi lý về mặt kinh tế. Sự kết hợp giữa dấu thời gian có thể xác minh của PoH và khóa theo cấp số nhân của Tower BFT tạo ra cơ chế đồng thuận vừa nhanh chóng vừa an toàn, đạt được kết quả cuối cùng trong vài giây trong khi vẫn duy trì sự đảm bảo an ninh của các hệ thống BFT truyền thống.

Streaming Proof of Replication

Proof of Replication (PoRep) addresses the data availability problem in blockchain systems: ensuring that sufficient copies of the ledger data exist across the network so that any participant can reconstruct the complete state. In many blockchain designs, there is no verifiable mechanism to ensure that validators are actually storing the data they claim to store. A validator might discard historical data after processing it, relying on other validators to maintain copies. If enough validators adopt this strategy, the network's data redundancy degrades and the ledger may become unrecoverable.

Solana implements a streaming version of PoRep that allows validators to continuously prove they are storing and replicating ledger segments. The approach is based on encrypting the ledger data with a validator-specific key and then proving that the encrypted data exists and is stored correctly. Because each validator's encrypted copy is unique (due to the validator-specific key), a validator cannot fake their storage proof by copying another validator's encrypted data.

The encryption process uses CBC (Cipher Block Chaining) mode, where each encrypted block depends on the plaintext of the current block and the ciphertext of the previous block. This chaining property is essential: to produce the encrypted version of block n, the validator must possess both the plaintext of block n and the ciphertext of block n-1. This means the validator cannot compute arbitrary encrypted blocks without having processed all preceding blocks, ensuring that the encrypted ledger is a faithful replica of the original data.

Sequential CBC encryption diagram showing chained block cipher used in Solana Proof of Replication

Fast Proof of Replication using Merkle hash tree for verifiable storage challenges

The validator-specific encryption key is derived from the validator's identity (their public key) and a PoH-derived seed that changes periodically. This periodic key rotation ensures that validators must re-encrypt their stored data at regular intervals, preventing them from performing the encryption once and then discarding the plaintext. The PoH seed for key derivation is chosen such that the encryption key for a given period cannot be known until that period begins, preventing validators from pre-computing encrypted data.

Storage challenges are issued through the PoH sequence. The network periodically selects random positions in the encrypted ledger and requests validators to provide the encrypted block at that position along with a Merkle proof demonstrating its position in the validator's encrypted ledger tree. Because the challenge positions are derived from the PoH state (which cannot be predicted in advance), validators cannot selectively store only the blocks that they expect to be challenged on. They must store the complete encrypted ledger to respond correctly to arbitrary challenges.

The verification of challenge responses is efficient. A verifier needs only the validator's public key, the PoH-derived encryption seed, the challenged position, and the Merkle root of the validator's encrypted ledger (which is published on-chain). The verifier computes the expected encryption key, checks that the provided encrypted block is consistent with the claimed plaintext at that position using CBC decryption, and verifies the Merkle proof against the published root. This entire verification can be done without accessing the validator's full encrypted ledger.

The streaming aspect of Solana's PoRep means that the encryption and proof generation happen continuously as new blocks are produced, rather than in discrete rounds. As the leader produces new blocks, validators encrypt them into their local PoRep store immediately. Challenge responses can be generated at any time by looking up the requested position in the local encrypted ledger and constructing a Merkle proof. This continuous operation ensures that proof of replication is always current and does not introduce latency spikes from periodic proof generation.

The combination of PoRep with PoH creates a complete accountability framework for data storage. PoH provides verifiable timestamps that record when data was created, and PoRep provides verifiable proofs that the data is being stored and replicated across the network. Together, they ensure that the blockchain's historical data remains available and intact, even if individual validators leave the network or attempt to discard data to reduce their storage costs.

Streaming Proof of Replication

Bằng chứng sao chép (PoRep) là một cơ chế cho phép validators chứng minh rằng họ đang lưu trữ dữ liệu ledger mà không tiết lộ chính dữ liệu đó hoặc yêu cầu tính toán chuyên sâu. Solana triển khai phiên bản phát trực tuyến của PoRep trong đó validators liên tục chứng minh rằng họ đang sao chép trạng thái blockchain. Điều này rất cần thiết cho bảo mật mạng vì nó đảm bảo rằng dữ liệu ledger được phân phối hợp lý trên validators và không tập trung ở một vài vị trí.

Cơ chế PoRep hoạt động bằng cách mã hóa validators các phân đoạn của ledger bằng cách sử dụng mã hóa chế độ CBC (Chuỗi khối mật mã) bằng khóa dành riêng cho validator bắt nguồn từ danh tính của chúng. Quá trình mã hóa sao cho mỗi khối được mã hóa phụ thuộc vào khối trước đó, tạo ra một chuỗi duy nhất cho mỗi validator. Điều này ngăn validators sao chép dữ liệu được mã hóa lẫn nhau — mỗi validator phải lưu trữ và xử lý dữ liệu ledger gốc để tạo phiên bản mã hóa duy nhất của chúng.

Sequential CBC encryption diagram showing chained block cipher used in Solana Proof of Replication

Theo định kỳ, mạng đưa ra thách thức đối với validators yêu cầu họ cung cấp các khối được mã hóa cụ thể. Vì mã hóa được xâu chuỗi nên validator phải lưu trữ tất cả các khối trước đó để tạo ra phản hồi chính xác. validator gửi khối được mã hóa của họ cùng với bằng chứng Merkle cho thấy vị trí của nó trong ledger được mã hóa của họ. Mạng có thể xác minh bằng chứng này một cách nhanh chóng mà không cần giải mã hoặc mã hóa lại dữ liệu.

Fast Proof of Replication using Merkle hash tree for verifiable storage challenges

Phương pháp phát trực tuyến tới PoRep này có chi phí hoạt động thấp so với các hệ thống chứng minh lưu trữ truyền thống. Người xác thực có thể mã hóa dữ liệu khi dữ liệu đến và phản hồi các thách thức với độ trễ tối thiểu. Hệ thống cũng cho phép khôi phục trong trường hợp mất dữ liệu — nếu validator mất một phần ledger, họ có thể tải xuống lại từ validators khác và mã hóa lại. Sự kết hợp giữa PoRep với dấu thời gian PoH tạo ra một hệ thống giải trình hoàn chỉnh trong đó mạng có thể xác minh cả thời điểm dữ liệu được tạo và dữ liệu đó được lưu trữ đúng cách trên mạng validator.

System Architecture

Solana's system architecture is organized as a multi-stage pipeline, analogous to the instruction pipeline in a modern CPU. Each stage of the pipeline performs a specific function, and multiple stages operate concurrently on different batches of transactions. This pipelining ensures that the hardware is utilized continuously — while one batch of transactions is being executed, the next batch is having its signatures verified, and the batch after that is being fetched from the network. The result is a system that achieves throughput limited by the slowest pipeline stage rather than the sum of all stage latencies.

Solana system architecture showing the Transaction Processing Unit pipeline from fetch to write

The Transaction Processing Unit (TPU) is the core component of the pipeline. It consists of four stages that process transactions sequentially within each stage but concurrently across stages:

Solana PoH generator network throughput limits showing bandwidth and processing constraints

The Fetch stage receives transaction packets from the network. Transactions arrive via UDP, and the fetch stage groups them into batches for the next pipeline stage. UDP is used instead of TCP because the overhead of TCP connection management and congestion control is unnecessary when transactions are small, independently verifiable, and can be safely dropped and retried. The fetch stage also performs basic structural validation, discarding malformed packets before they consume resources in later stages.

The SigVerify stage performs cryptographic signature verification on each transaction. Solana uses Ed25519 signatures, and this stage offloads the verification to GPUs using CUDA. A single modern GPU can verify over 900,000 Ed25519 signatures per second by executing thousands of verification operations in parallel across its CUDA cores. This is the key to removing signature verification as a bottleneck — while a single CPU core might verify only a few thousand signatures per second, a commodity GPU can handle nearly a million. The GPU receives a batch of transactions, verifies all signatures in parallel, and returns the results indicating which transactions have valid signatures.

The Banking stage is where transactions are actually executed against the current state of the ledger. This stage uses Sealevel, Solana's parallel smart contract runtime. Sealevel analyzes each transaction to determine which accounts it reads from and writes to. Transactions that access disjoint sets of accounts can be executed in parallel across multiple CPU cores, because they cannot interfere with each other. Transactions that access overlapping accounts are serialized to prevent race conditions.

Executing user-supplied BPF programs in Solana Sealevel runtime with shared intrinsic calls

This account-level parallelism is possible because Solana programs (smart contracts) must declare upfront which accounts they will access. The runtime uses this declaration to build a dependency graph and schedule non-conflicting transactions across available CPU cores. Programs are executed in a sandboxed BPF (Berkeley Packet Filter) virtual machine, which provides memory safety and deterministic execution. The BPF runtime also enforces compute budgets to prevent any single transaction from consuming excessive resources.

The Write stage commits the executed transactions to the ledger and integrates them into the PoH sequence. The leader's PoH generator incorporates the transaction results into the hash chain, producing a PoH entry that timestamps the batch of executed transactions. The entry, along with the transaction data and execution results, is then transmitted to other validators via the Turbine protocol and written to local persistent storage.

The Cloudbreak state storage system is designed to support the parallelism required by the rest of the pipeline. Traditional blockchain state storage uses a single key-value store (such as LevelDB or RocksDB) that serializes all read and write operations. Cloudbreak uses memory-mapped files and a concurrent data structure that allows multiple threads to read and write different accounts simultaneously. Accounts are stored in separate memory regions, so accessing one account does not block access to another. This architecture ensures that the state storage layer does not become a bottleneck even when thousands of transactions are being executed in parallel.

The overall system architecture also includes the Archiver network, which provides long-term decentralized storage for historical ledger data. Active validators need only maintain the recent state and a sliding window of recent blocks. Older blocks are offloaded to Archiver nodes, which prove they are storing the data using the Proof of Replication mechanism described earlier. This separation of concerns allows validators to operate with bounded storage requirements while ensuring that the full history of the ledger remains available to any participant who needs it.

System Architecture

Kiến trúc hệ thống của Solana được thiết kế dưới dạng một đường dẫn trong đó các giai đoạn xử lý giao dịch khác nhau diễn ra song song. Đơn vị xử lý giao dịch (TPU) là thành phần cốt lõi chịu trách nhiệm xử lý các giao dịch đến. TPU bao gồm một số giai đoạn: tìm nạp (thu thập giao dịch), xác minh chữ ký, lưu trữ (thực hiện giao dịch) và ghi (cam kết lưu trữ). Mỗi giai đoạn hoạt động song song trên các giao dịch khác nhau, tương tự như đường ống CPU.

Solana system architecture showing the Transaction Processing Unit pipeline from fetch to write

Việc xác minh chữ ký được tăng tốc bằng cách sử dụng GPU, có hiệu quả cao đối với các hoạt động mã hóa đường cong elip cần thiết để xác minh chữ ký giao dịch. Bằng cách chuyển nhiệm vụ tính toán chuyên sâu này sang GPU, Solana có thể xác minh chữ ký với tốc độ vượt quá 900.000 mỗi giây trên phần cứng thông thường. Việc xác minh chữ ký song song này ngăn việc xác thực mật mã trở thành nút thắt cổ chai ngay cả ở tốc độ giao dịch rất cao.

Solana PoH generator network throughput limits showing bandwidth and processing constraints

Thời gian chạy Sealevel là công cụ thực thi hợp đồng thông minh song song của Solana. Không giống như các chuỗi khối truyền thống thực hiện các giao dịch một cách tuần tự, Sealevel phân tích các giao dịch để xác định tài khoản nào chúng truy cập và thực hiện các giao dịch không xung đột song song trên nhiều lõi CPU. Các giao dịch truy cập vào cùng một tài khoản được thực hiện tuần tự để duy trì tính nhất quán, nhưng các giao dịch truy cập vào các tài khoản khác nhau có thể chạy đồng thời. Sự song song này có thể thực hiện được vì PoH thiết lập trật tự toàn cầu — validators có thể thực hiện các giao dịch theo bất kỳ thứ tự nào miễn là chúng áp dụng chúng cho trạng thái theo trình tự do PoH chỉ định.

Executing user-supplied BPF programs in Solana Sealevel runtime with shared intrinsic calls

Kiến trúc cũng bao gồm các thành phần được tối ưu hóa để truyền và lưu trữ khối. Giao thức truyền khối tuabin sử dụng mã hóa xóa để chia các khối thành các gói nhỏ hơn được phân phối trên mạng theo cấu trúc cây, giảm thiểu yêu cầu băng thông. Mạng Archivers cung cấp khả năng lưu trữ phi tập trung cho dữ liệu ledger lịch sử, sử dụng PoRep để đảm bảo tính khả dụng của dữ liệu. Cùng với nhau, các thành phần này tạo ra một hệ thống có thể xử lý hàng trăm nghìn giao dịch mỗi giây trong khi vẫn duy trì các đặc tính phân quyền và bảo mật của một blockchain.

Performance

The theoretical throughput of the Solana architecture is determined by three potential bottlenecks: network bandwidth, signature verification rate, and transaction execution rate. The system is designed so that improvements in any of these dimensions directly increase throughput, with the overall rate limited by whichever bottleneck is currently the tightest.

On a standard 1 gigabit per second (Gbps) network connection, the maximum data throughput is approximately 125 megabytes per second. A typical Solana transaction is 250 bytes including the signature, account addresses, instruction data, and metadata. At 250 bytes per transaction, a 1 Gbps connection can carry approximately 500,000 transactions per second. With 10 Gbps networking (increasingly available in data centers), this number rises to approximately 5 million transactions per second. The Turbine block-propagation/" class="glossary-link" data-slug="block-propagation" title="block propagation">block propagation protocol ensures that the network's aggregate bandwidth is utilized efficiently, so the bottleneck is the leader's outbound bandwidth rather than the total network capacity.

Throughput Projections by Network Bandwidth:

Network    Bandwidth     Tx Size    Max Throughput
──────────────────────────────────────────────────
1 Gbps     125 MB/s      250 B      500,000 TPS
10 Gbps    1.25 GB/s     250 B      5,000,000 TPS
40 Gbps    5 GB/s        250 B      20,000,000 TPS

Signature verification, often the computational bottleneck in blockchain systems, is addressed through GPU parallelization. A single NVIDIA GTX 1080 Ti GPU can verify approximately 900,000 Ed25519 signatures per second. Higher-end GPUs and future hardware generations will increase this rate further. Because signature verification is embarrassingly parallel (each signature is independent), the verification rate scales linearly with the number of GPU cores. With multiple GPUs, a single node can verify millions of signatures per second, ensuring that cryptographic validation does not constrain the system.

The PoH generator runs on a dedicated CPU core, producing approximately 4 million SHA-256 hashes per second on a 4 GHz processor. This provides a clock resolution of 0.25 microseconds per tick, which is more than sufficient for ordering millions of transactions per second. The sequential nature of PoH generation means this component cannot be parallelized, but the hash rate is high enough that the PoH generator is not a bottleneck. As CPU clock speeds increase and SHA-256 instruction sets improve (Intel SHA Extensions, ARM Cryptography Extensions), the PoH tick rate will increase accordingly.

Transaction execution throughput depends on the complexity of the transactions and the degree of parallelism achievable. For simple value transfers that access only two accounts (sender and receiver), the execution rate is very high because most transfers involve different accounts and can be executed in parallel. For smart contract interactions that access shared state, parallelism is reduced and execution becomes the bottleneck. The Sealevel runtime is designed to maximize parallelism by executing non-conflicting transactions on different CPU cores, and modern server hardware with 32 or more cores provides substantial parallel execution capacity.

Pipeline Stage Throughput (approximate, current hardware):

Stage              Hardware         Throughput
─────────────────────────────────────────────────
Fetch              1 Gbps NIC       500,000 TPS
SigVerify          1x GTX 1080 Ti   900,000 SPS
Banking/Execute    32-core CPU      ~400,000 TPS (simple transfers)
PoH Generator      4 GHz core       4,000,000 hashes/sec
Write/Storage      NVMe SSD         ~1,000,000 IOPS

A critical property of Solana's performance model is that it scales with Moore's Law. As hardware improves across all dimensions — faster CPUs, more powerful GPUs, higher-bandwidth networks, faster storage — the system's throughput increases proportionally without requiring any changes to the protocol. This is a deliberate design choice that distinguishes Solana from blockchains whose throughput is limited by protocol-level constraints (such as fixed block sizes or fixed block intervals) that require governance decisions and hard forks to change. In Solana, the protocol automatically takes advantage of whatever hardware is available, meaning that the performance ceiling rises continuously as technology advances.

Latency is another critical performance dimension. The end-to-end latency from transaction submission to confirmation depends on several factors: network propagation time to the leader, the leader's slot length (currently approximately 400ms), the time for the block to propagate to validators via Turbine, and the time for validators to vote and reach confirmation (typically 1-2 additional slots). In total, a transaction submitted to the current leader can be confirmed in approximately 400ms to 800ms under normal conditions. This latency is orders of magnitude lower than proof-of-work blockchains (which require minutes) and comparable to or faster than most proof-of-stake systems.

Performance

Kiến trúc của Solana được thiết kế để đạt được mức hiệu suất mở rộng theo quy mô cải tiến phần cứng, tuân theo Định luật Moore. Trên kết nối mạng 1 gigabit tiêu chuẩn, thông lượng tối đa theo lý thuyết là khoảng 710.000 giao dịch mỗi giây, giả sử 176 byte mỗi giao dịch (bao gồm chữ ký và siêu dữ liệu). Tính toán này dựa trên băng thông mạng là nút thắt cổ chai chính, với các nút thắt cổ chai tính toán được loại bỏ thông qua quá trình song song hóa.

Xác minh chữ ký, thường là yếu tố hạn chế trong hiệu suất blockchain, được tăng tốc bằng cách sử dụng song song GPU. Một GPU có thể xác minh hơn 900.000 chữ ký ed25519 mỗi giây, vượt quá giới hạn thông lượng mạng. Điều này có nghĩa là việc xác minh chữ ký không hạn chế hiệu suất của hệ thống — nút thắt cổ chai chuyển sang băng thông mạng và thực hiện giao dịch. Đối với các giao dịch đơn giản chỉ chuyển giá trị mà không có logic hợp đồng thông minh phức tạp, giai đoạn ngân hàng có thể xử lý các giao dịch ở mức phù hợp với tốc độ đầu vào của mạng.

Trình tạo PoH chạy trên lõi CPU chuyên dụng, tạo ra khoảng 4.000 băm mỗi mili giây trên bộ xử lý 4GHz. Với tốc độ này, chuỗi PoH cung cấp dấu thời gian với độ chi tiết 0,25 micro giây, đủ để đặt hàng hàng triệu giao dịch mỗi giây. Bản chất tuần tự của việc tạo PoH có nghĩa là thành phần này không thể song song, nhưng thông lượng đủ cao để không giới hạn hiệu suất tổng thể của hệ thống.

Khi phần cứng được cải thiện, thông lượng của Solana sẽ tăng theo. Mạng nhanh hơn, GPU mạnh hơn và CPU cải tiến đều góp phần mang lại tỷ lệ giao dịch cao hơn. Hệ thống được thiết kế để tận dụng những cải tiến này mà không yêu cầu thay đổi giao thức. Cách tiếp cận về khả năng mở rộng này trái ngược với các chuỗi khối về cơ bản bị hạn chế bởi các cơ chế đồng thuận tuần tự, cho phép Solana đạt được mức hiệu suất mà trước đây được cho là không thể có trong một hệ thống phi tập trung trong khi vẫn duy trì bảo đảm an ninh và phân cấp.

Conclusion

This paper has presented a new blockchain architecture built on Proof of History, a mechanism for creating a verifiable, trustless record of time passage using sequential SHA-256 hashing. By establishing a cryptographic clock before consensus, PoH removes the coordination bottleneck that limits the throughput of existing blockchain systems. Validators no longer need to communicate extensively to agree on the ordering of events — the PoH sequence provides a canonical timeline that all participants can verify independently.

The key insight underlying Solana's design is that time is the missing primitive in distributed systems. Traditional consensus protocols must solve two problems simultaneously: agreeing on what happened and agreeing on when it happened. By separating these concerns — using PoH to establish when and consensus to confirm what — the system reduces the complexity of consensus from a coordination-intensive process to a simple confirmation step. This separation enables a pipeline architecture where block production, propagation, signature verification, and transaction execution all happen concurrently, maximizing hardware utilization.

The integration of PoH with the other components of the architecture produces a system with several distinctive properties. bft/" class="glossary-link" data-slug="tower-bft" title="Tower BFT">Tower BFT provides fast finality through exponentially increasing lockouts anchored to verifiable PoH timestamps. Gulf Stream eliminates the mempool by leveraging the predictable leader-schedule/" class="glossary-link" data-slug="leader-schedule" title="leader schedule">leader schedule that PoH enables. Turbine uses erasure coding and tree-structured propagation to distribute blocks efficiently. Sealevel executes non-conflicting transactions in parallel across multiple CPU cores. And Streaming Proof of Replication ensures that the ledger data is properly stored and replicated across the network.

The performance characteristics of this architecture are fundamentally different from those of previous blockchain designs. Instead of being limited by protocol-level constraints — fixed block sizes, fixed block intervals, sequential execution — Solana's throughput is limited only by the hardware available to validators. On current commodity hardware, the system can process hundreds of thousands of transactions per second with sub-second confirmation times. As hardware continues to improve following Moore's Law, these numbers will increase without requiring protocol changes or governance decisions.

The implications for blockchain adoption are significant. Many applications that require high throughput and low latency — decentralized exchanges, payment systems, gaming platforms, social networks, and Internet-of-Things data processing — have been unable to build on existing blockchain infrastructure due to performance limitations. Solana's architecture demonstrates that it is possible to build a blockchain that achieves performance levels comparable to centralized systems while maintaining the decentralization, security, and censorship resistance that make blockchains valuable. Proof of History provides the foundation for a new generation of decentralized applications that can operate at the scale demanded by global adoption.

Conclusion

Bằng chứng lịch sử thể hiện bước đột phá cơ bản trong kiến ​​trúc blockchain bằng cách giải quyết vấn đề về thời gian đã hạn chế khả năng mở rộng của ledger phân tán. Bằng cách tạo ra một đồng hồ mật mã có thể xác minh được, PoH cho phép validators thiết lập thứ tự tạm thời của các sự kiện mà không cần tốn nhiều chi phí liên lạc như các cơ chế đồng thuận truyền thống yêu cầu. Sự đổi mới này loại bỏ nút thắt cổ chai quan trọng và cho phép xử lý giao dịch được song song trên mạng.

Việc tích hợp PoH với các thành phần hệ thống được tối ưu hóa – xác minh chữ ký được tăng tốc GPU, thực hiện giao dịch song song thông qua Sealevel và các giao thức truyền khối hiệu quả – tạo ra một chuỗi khối có thể xử lý hàng trăm nghìn giao dịch mỗi giây trên phần cứng hàng hóa. Quan trọng hơn, kiến ​​trúc được thiết kế để mở rộng quy mô nhờ những cải tiến về phần cứng, nghĩa là hiệu suất sẽ tiếp tục tăng khi bộ xử lý trở nên nhanh hơn và mạng có nhiều khả năng hơn.

Thiết kế của Solana chứng minh rằng hiệu suất cao và sự phân quyền không loại trừ lẫn nhau. Bằng cách tận dụng PoH làm nền tảng cho sự đồng thuận và phối hợp hệ thống, mạng đạt được mức thông lượng tương đương với cơ sở dữ liệu tập trung trong khi vẫn duy trì các đặc tính bảo mật và chống kiểm duyệt của một chuỗi khối phi tập trung. Cơ chế đồng thuận Tower BFT có trọng số cổ phần đảm bảo rằng mạng vẫn an toàn trước các tác nhân Byzantine trong khi đạt được tính hữu hạn nhanh chóng.

Việc triển khai kiến ​​trúc này cung cấp một con đường thực tế để công nghệ blockchain có thể mở rộng quy mô áp dụng trên toàn cầu. Các ứng dụng yêu cầu thông lượng giao dịch cao — chẳng hạn như sàn giao dịch phi tập trung, nền tảng trò chơi và hệ thống tài chính — giờ đây có thể được xây dựng trên cơ sở hạ tầng phi tập trung thực sự mà không ảnh hưởng đến hiệu suất. Bằng chứng lịch sử mở ra cánh cửa cho một thế hệ ứng dụng blockchain mới mà trước đây không khả thi do hạn chế về khả năng mở rộng.