Solana: Arsitektur baru untuk blockchain berkinerja tinggi
Abstract
本論文は、高性能ブロックチェーンのための新しいアーキテクチャを提示する。SolanaはProof of History(PoH)と呼ばれる新しい時間管理メカニズムを実装している。これはイベント間の順序と時間の経過を検証するための証明である。PoHは信頼不要な時間の経過を台帳にエンコードするために使用され、特定の時点でイベントが発生したことを証明する履歴記録を作成する。
重要なイノベーションは、PoHによりネットワーク内のノードが互いに通信することなくイベントの時間的順序を確立できることである。逐次的ハッシュチェーンとして実装された検証可能な遅延関数を使用することで、システムはイベント間の時間の経過を検証する方法を提供する暗号学的時計を生成する。これにより、ネットワークは分散化とセキュリティを維持しながら、毎秒数千のトランザクションを処理できる。
PoHはProof of Stake(PoS)コンセンサスメカニズムと統合されている。この組み合わせにより、バリデータがトランザクションを並列に検証し、効率的にコンセンサスに達することができる高度に最適化されたブロックチェーンアーキテクチャが可能になる。このシステムはムーアの法則に合わせてスケールするように設計されており、分散型ネットワークのセキュリティ保証を犠牲にすることなく、ハードウェア性能の向上を活用してスループットを改善する。
Abstract
Makalah ini menyajikan arsitektur baru untuk blockchain berkinerja tinggi. Solana mengimplementasikan mekanisme ketepatan waktu baru yang disebut Proof of History (PoH) — sebuah bukti untuk memverifikasi urutan dan perjalanan waktu antar peristiwa. PoH digunakan untuk mengkodekan perjalanan waktu yang tidak dapat dipercaya ke dalam ledger, menciptakan catatan sejarah yang membuktikan bahwa suatu peristiwa terjadi pada momen waktu tertentu.
Inovasi utamanya adalah PoH memungkinkan node dalam jaringan untuk menetapkan urutan peristiwa sementara tanpa mengharuskan mereka berkomunikasi satu sama lain. Dengan menggunakan fungsi penundaan yang dapat diverifikasi yang diimplementasikan sebagai rantai hash berurutan, sistem menghasilkan jam kriptografi yang menyediakan cara untuk memverifikasi perjalanan waktu antar peristiwa. Hal ini memungkinkan jaringan untuk memproses ribuan transaksi per detik dengan tetap menjaga desentralisasi dan keamanan.
PoH terintegrasi dengan mekanisme konsensus Proof of Stake (PoS). Kombinasi ini memungkinkan arsitektur blockchain yang sangat optimal di mana validators dapat memverifikasi transaksi secara paralel dan mencapai konsensus secara efisien. Sistem ini dirancang untuk disesuaikan dengan Hukum Moore, memanfaatkan peningkatan kinerja perangkat keras untuk meningkatkan throughput tanpa mengorbankan jaminan keamanan jaringan yang terdesentralisasi.
Introduction
ブロックチェーンシステムにおける根本的な課題は、分散化とセキュリティを維持しながら高いトランザクションスループットを達成することである。現在のブロックチェーン実装は、時間とイベントの順序付けについて合意するためにノード間の広範な通信を必要とするコンセンサスメカニズムによって制限されている。この調整のオーバーヘッドがボトルネックを生み出し、既存のブロックチェーンがグローバル規模のアプリケーションの需要に対応するためのスケーリングを妨げている。
核心的な問題は時間である。分散システムにおいて、ノードは他のノードのタイムスタンプが正確であることを信頼できないため、外部の時計に依存することができない。従来のブロックチェーンコンセンサスプロトコルは、ノードが現在の状態とトランザクションの順序について合意するために広範に通信することでこの問題を解決している。この通信のオーバーヘッドはスループットを根本的に制限する。ネットワークはノードが順序付けについてコンセンサスに達する速度でしかトランザクションを処理できないからである。
SolanaはこのタイミングProblemの解決策としてProof of Historyを導入する。PoHは、潜在的に悪意のあるアクターからのタイムスタンプに依存することなく、イベント間に一定の時間が経過したことを証明する暗号学的方法を提供する。検証可能な履歴記録を作成することで、PoHはノードがトランザクションを独立して処理しながら、イベントが発生した順序を証明できるようにする。このブレークスルーにより、ネットワークはトランザクション処理を並列化し、スループットを劇的に向上させることができる。
重要な洞察は、信頼不要な時間源を作成できれば、コンセンサスから調整のボトルネックを除去できるということである。PoHが暗号学的時計を提供することで、バリデータはトランザクションを並列に処理でき、正規の順序付けを確定するためにのみ通信する必要がある。このアーキテクチャの転換により、Solanaは分散型ブロックチェーンでは不可能と考えられていたパフォーマンスレベルを達成できる。
Introduction
Tantangan mendasar dalam sistem blockchain adalah mencapai throughput transaksi yang tinggi dengan tetap menjaga desentralisasi dan keamanan. Implementasi blockchain saat ini dibatasi oleh mekanisme konsensusnya, yang memerlukan komunikasi ekstensif antar node untuk menyepakati waktu dan urutan kejadian. Overhead koordinasi ini menciptakan hambatan yang mencegah penskalaan blockchain yang ada untuk memenuhi permintaan aplikasi skala global.
Masalah intinya adalah waktu. Dalam sistem terdistribusi, node tidak dapat mengandalkan jam eksternal karena mereka tidak dapat mempercayai bahwa stempel waktu node lain akurat. Protokol konsensus blockchain tradisional menyelesaikan masalah ini dengan membuat node berkomunikasi secara luas untuk menyetujui keadaan saat ini dan urutan transaksi. Overhead komunikasi ini pada dasarnya membatasi throughput, karena jaringan hanya dapat memproses transaksi secepat node dapat mencapai konsensus mengenai pemesanannya.
Solana memperkenalkan Bukti Sejarah sebagai solusi untuk masalah waktu ini. PoH menyediakan cara kriptografi untuk membuktikan bahwa sejumlah waktu tertentu telah berlalu di antara peristiwa tanpa bergantung pada stempel waktu dari pelaku yang berpotensi jahat. Dengan membuat catatan sejarah yang dapat diverifikasi, PoH memungkinkan node untuk memproses transaksi secara independen sambil tetap dapat membuktikan urutan terjadinya peristiwa. Terobosan ini memungkinkan jaringan untuk memparalelkan pemrosesan transaksi dan meningkatkan throughput secara signifikan.
Kuncinya adalah jika kita dapat menciptakan sumber waktu yang tidak dapat dipercaya, kita dapat menghilangkan hambatan koordinasi dalam konsensus. Dengan PoH menyediakan jam kriptografi, validators dapat memproses transaksi secara paralel dan hanya perlu berkomunikasi untuk menyelesaikan pemesanan kanonik. Pergeseran arsitektur ini memungkinkan Solana mencapai tingkat kinerja yang sebelumnya dianggap mustahil dalam blockchain yang terdesentralisasi.
Outline
本論文では、Proof of Historyが高性能ブロックチェーン運用をいかに実現するかに焦点を当て、Solanaの技術アーキテクチャを説明する。まず、PoHメカニズム自体について説明する。逐次的ハッシュチェーンがいかにしてイベントの検証可能な時間的順序付けを作成するかを解説する。PoHを安全にする暗号学的特性を詳述し、バリデータがPoHシーケンスを効率的に検証する方法を示す。
次に、PoHがProof of Stakeコンセンサスとどのように統合されるかを探る。PoHの時間的特性を活用するために特別に設計されたPoSアルゴリズムであるTower BFTについて説明する。この統合により、バリデータは特定のPoHタイムスタンプにおける台帳の状態に投票でき、高速かつ安全なコンセンサスメカニズムが実現される。また、悪意ある行動を防止するスラッシング条件についても説明する。
続いて、Solanaのネットワーク設計とデータ伝播プロトコルを提示する。Gulf Streamプロトコルは、mempoolを必要とせずにトランザクション転送を可能にし、クライアントが今後のリーダーに直接トランザクションを送信できるようにする。リーダーローテーションの仕組みと、リーダーシップが変わっても高スループットを維持する方法を説明する。
最後に、Transaction Processing Unit(TPU)、Sealevel並列ランタイム、データストレージ検証のためのProof of Replicationを含むシステムアーキテクチャについて論じる。性能予測は、Solanaが標準的なギガビットネットワーク上で毎秒70万以上のトランザクションを処理でき、ハードウェアの改善に伴いスループットがスケールすることを示している。
Outline
Makalah ini menjelaskan arsitektur teknis Solana, dengan fokus pada bagaimana Proof of History memungkinkan operasi blockchain berkinerja tinggi. Dokumen tersebut pertama-tama menjelaskan mekanisme PoH itu sendiri — bagaimana rantai hash berurutan menciptakan urutan peristiwa yang dapat diverifikasi. Kami merinci properti kriptografi yang membuat PoH aman dan menunjukkan bagaimana validators dapat memverifikasi urutan PoH secara efisien.
Makalah ini kemudian mengeksplorasi bagaimana PoH berintegrasi dengan konsensus Proof of Stake. Kami menjelaskan Tower BFT, algoritma PoS yang dirancang khusus untuk memanfaatkan properti temporal PoH. Integrasi ini memungkinkan validators untuk memilih status ledger pada stempel waktu PoH tertentu, sehingga menciptakan mekanisme konsensus yang cepat dan aman. Kami juga menjelaskan kondisi pemotongan yang mencegah perilaku jahat.
Selanjutnya, kami menyajikan desain jaringan Solana dan protokol propagasi data. Protokol Gulf Stream memungkinkan penerusan transaksi tanpa memerlukan mempool, memungkinkan klien mengirim transaksi langsung ke pemimpin yang akan datang. Kami menjelaskan cara kerja rotasi pemimpin dan bagaimana jaringan mempertahankan throughput yang tinggi bahkan ketika kepemimpinan berganti.
Terakhir, kita membahas arsitektur sistem termasuk Transaction Processing Unit (TPU), runtime paralel Sealevel, dan Proof of Replication untuk verifikasi penyimpanan data. Proyeksi kinerja menunjukkan bahwa Solana dapat memproses lebih dari 700.000 transaksi per detik pada jaringan gigabit standar, dengan penskalaan throughput seiring dengan peningkatan perangkat keras.
Network Design
Solanaのネットワーク設計は、バリデータが交代でブロックを生成するローテーションリーダーシステムを中心としている。リーダーは、着信トランザクションをPoHストリームに順序付けし、結果のブロックをネットワークに公開する責任を持つ。リーダーはステーク加重アルゴリズムによって選出され、ローテーションスケジュールは事前に知られているため、ネットワークはトランザクション転送を最適化できる。

Gulf Streamプロトコルは、クライアントが今後のリーダーに直接トランザクションを転送できるようにすることで、従来のmempoolの必要性を排除する。クライアントがトランザクションを送信すると、ローテーションスケジュールに基づいて予想されるリーダーに転送される。現在のリーダーがトランザクションを処理できない場合、次の予想リーダーに転送される。この設計により確認レイテンシが短縮され、バリデータが事前にトランザクションを実行できるため、スループットがさらに最適化される。
トランザクション伝播はマルチレイヤーアプローチを使用する。クライアントはバリデータにトランザクションを送信し、バリデータは現在のリーダーまたは今後のリーダーに転送する。リーダーはトランザクションをPoHストリームに順序付けし、全体の順序付けを作成する。順序付けが完了すると、リーダーはPoHストリームとトランザクションデータをバリデータに送信し、バリデータはPoHシーケンスを検証してトランザクションを並列に実行する。
ネットワーク設計には、ブロックをより小さなパケットに分割し、ツリー構造でネットワーク全体に配布するTurbineブロック伝播プロトコルも含まれている。このアプローチにより、迅速なブロック伝播を確保しながら、個々のバリデータの帯域幅要件を最小化する。PoHのトランザクション順序検証能力と組み合わせることで、このアーキテクチャはSolanaが分散化を犠牲にすることなく高スループットを達成することを可能にする。
Network Design
Desain jaringan Solana berpusat di sekitar sistem pemimpin berputar di mana validators bergiliran memproduksi blok. Pemimpin bertanggung jawab untuk mengurutkan transaksi masuk ke dalam aliran PoH dan mempublikasikan blok yang dihasilkan ke jaringan. Pemimpin dipilih melalui algoritme pembobotan taruhan, dan jadwal rotasi diketahui sebelumnya, sehingga memungkinkan jaringan mengoptimalkan penerusan transaksi.

Protokol Gulf Stream menghilangkan kebutuhan akan mempool tradisional dengan memungkinkan klien meneruskan transaksi langsung ke pemimpin yang akan datang. Ketika klien mengajukan transaksi, transaksi diteruskan ke pemimpin yang diharapkan berdasarkan jadwal rotasi. Jika pemimpin saat ini tidak dapat memproses transaksi tersebut, maka transaksi tersebut akan diteruskan ke pemimpin yang diharapkan berikutnya. Desain ini mengurangi latensi konfirmasi dan memungkinkan validators mengeksekusi transaksi lebih awal, sehingga lebih mengoptimalkan throughput.
Penyebaran transaksi menggunakan pendekatan multi-layer. Klien mengirim transaksi ke validators, yang meneruskannya ke pemimpin saat ini atau yang akan datang. Pemimpin mengurutkan transaksi ke dalam aliran PoH, menciptakan pemesanan total. Setelah diurutkan, pemimpin mengirimkan aliran PoH dan data transaksi ke validators, yang memverifikasi urutan PoH dan mengeksekusi transaksi secara paralel.
Desain jaringan juga mencakup protokol propagasi blok turbin yang memecah blok menjadi paket-paket yang lebih kecil dan mendistribusikannya ke seluruh jaringan dalam struktur pohon. Pendekatan ini meminimalkan kebutuhan bandwidth untuk validators individual sekaligus memastikan propagasi blok yang cepat. Dikombinasikan dengan kemampuan PoH untuk memverifikasi urutan transaksi, arsitektur ini memungkinkan Solana mencapai throughput yang tinggi tanpa mengorbankan desentralisasi.
Proof of History
Proof of Historyは、SHA-256を使用した逐次的ハッシュチェーンとして実装された検証可能な遅延関数である。PoHジェネレータは継続的にSHA-256ハッシュを計算し、各出力を次のハッシュの入力として使用する。これにより、各ハッシュは前のものが計算された後にのみ計算できる逐次的なチェーンが作成され、検証可能な時間的順序付けが確立される。各ハッシュを生成するための計算要件により、イベント間の最小時間遅延が強制される。

PoHの重要な特性は、検証は安価だが生成は高コストであることである。検証者はハッシュシーケンス全体をセグメントに分割し、各セグメントを独立して並列にチェックし、セグメントが適切に接続されていることを確認することで検証できる。しかし、生成は逐次的でなければならない。すべての中間ステップを実際に計算せずにハッシュチェーンの出力を予測する方法はない。生成と検証の間のこの非対称性がPoHを実用的にしている。

外部イベントとトランザクションデータは、ハッシュチェーンに混合されることでPoHシーケンスに挿入される。トランザクションが到着すると、そのハッシュは現在のPoH状態と結合され、トランザクションがシーケンスのその時点で存在したことを証明する記録が作成される。PoHジェネレータは定期的にチェックポイントを記録し、最後のチェックポイント以降に計算されたハッシュ数とともに現在のハッシュ値を公開する。これらのチェックポイントにより、バリデータはすべてのハッシュを再計算することなくPoHシーケンスを効率的に検証できる。

PoHシーケンスはネットワーク全体の暗号学的時計として機能する。ハッシュチェーンは逐次的で検証可能であるため、任意のノードは、その間隔中に計算されたハッシュを示すだけで、2つのイベント間に一定の時間が経過したことを証明できる。これにより、ノードが外部のタイムスタンプを信頼したり、時間的順序付けを確立するために互いに調整したりする必要がなくなり、従来のブロックチェーンコンセンサスにおける根本的なボトルネックが除去される。

Proof of History
Bukti Riwayat adalah fungsi penundaan yang dapat diverifikasi yang diimplementasikan sebagai rantai hash berurutan menggunakan SHA-256. Generator PoH terus menghitung hash SHA-256, menggunakan setiap keluaran sebagai masukan untuk hash berikutnya. Hal ini menciptakan rantai berurutan di mana setiap hash hanya dapat dihitung setelah hash sebelumnya, sehingga membentuk urutan temporal yang dapat diverifikasi. Persyaratan komputasi untuk menghasilkan setiap hash menerapkan penundaan waktu minimum antar peristiwa.

Properti utama PoH adalah murah untuk diverifikasi namun mahal untuk diproduksi. Verifikator dapat memeriksa seluruh urutan hash secara paralel dengan membaginya menjadi beberapa segmen dan memeriksa setiap segmen secara independen, kemudian memverifikasi bahwa segmen tersebut terhubung dengan benar. Namun, pembuatannya harus berurutan — tidak ada cara untuk memprediksi keluaran rantai hash tanpa benar-benar menghitung setiap langkah perantara. Ketidaksimetrisan antara pembangkitan dan verifikasi inilah yang membuat PoH praktis.

Peristiwa eksternal dan data transaksi dimasukkan ke dalam urutan PoH dengan mencampurkannya ke dalam rantai hash. Ketika sebuah transaksi tiba, hash-nya digabungkan dengan status PoH saat ini, menciptakan catatan yang membuktikan transaksi tersebut ada pada titik tersebut dalam urutan. Generator PoH secara berkala mencatat pos pemeriksaan, menerbitkan nilai hash saat ini bersama dengan jumlah hash yang dihitung sejak pos pemeriksaan terakhir. Pos pemeriksaan ini memungkinkan validators memverifikasi urutan PoH secara efisien tanpa menghitung ulang setiap hash.

Urutan PoH berfungsi sebagai jam kriptografi untuk seluruh jaringan. Karena rantai hash bersifat berurutan dan dapat diverifikasi, node mana pun dapat membuktikan bahwa sejumlah waktu tertentu telah berlalu antara dua peristiwa hanya dengan menunjukkan hash yang dihitung selama interval tersebut. Hal ini menghilangkan kebutuhan node untuk mempercayai stempel waktu eksternal atau berkoordinasi satu sama lain untuk menetapkan urutan waktu, sehingga menghilangkan hambatan mendasar dalam konsensus blockchain tradisional.

Proof of History Sequence
Proof of Historyシーケンスは、各ハッシュが前の出力に依存するSHA-256ハッシュの連続的なチェーンである。シーケンスは初期シード値から始まり、それがハッシュされて最初の出力を生成する。この出力が次のハッシュの入力となり、プロセスは無限に繰り返される。ジェネレータは計算されたハッシュの総数を追跡するカウンタも維持しており、台帳内のイベントのPoH「タイムスタンプ」として機能する。

データをシーケンスに挿入する必要がある場合(トランザクションハッシュやバリデータの署名など)、決定論的な混合関数を使用して現在のハッシュ状態と結合される。例えば、現在のハッシュ状態がhash_nで、データDを挿入する場合、hash_{n+1} = SHA256(hash_n || D)を計算する。ここで||は連結を表す。挿入ポイントはカウンタ値とともに記録され、データDがシーケンスのその特定の時点で存在したことを証明する。
PoHシーケンスの検証は、チェーンをセグメントに分割することで並列化できる。例えば、バリデータは10,000ハッシュごとにPoHチェックポイントを受信する場合がある。チェックポイント間のシーケンスを検証するために、バリデータは10,000ハッシュを100ハッシュの100セグメントに分割し、各セグメントを独立して並列に検証し、セグメントが適切に接続されていることを確認できる。これにより、検証は利用可能なCPUコア数に応じて水平にスケールできる。
シーケンスは、2つのイベントが特定の順序で発生したことの効率的な証明もサポートする。カウンタ値nとm(n m)における2つのデータ挿入がある場合、nのイベントがmのイベントより前に発生したことを、それらの間のハッシュチェーンを確認することで誰でも検証できる。この特性により、Solanaはノードが継続的にオンラインであったり外部の時間源を信頼したりする必要なく、ネットワーク内のすべてのイベントの検証可能な履歴記録を作成できる。
Proof of History Sequence
Urutan Proof of History adalah rangkaian hash SHA-256 yang berkesinambungan di mana setiap hash bergantung pada keluaran sebelumnya. Urutannya dimulai dengan nilai benih awal, yang di-hash untuk menghasilkan keluaran pertama. Keluaran ini menjadi masukan untuk hash berikutnya, dan proses berulang tanpa batas. Generator juga memelihara penghitung yang melacak jumlah total hash yang dihitung, yang berfungsi sebagai "stempel waktu" PoH untuk kejadian di ledger.

Ketika data perlu dimasukkan ke dalam urutan (seperti hash transaksi atau tanda tangan validator), data tersebut digabungkan dengan status hash saat ini menggunakan fungsi pencampuran deterministik. Misalnya, jika status hash saat ini adalah hash_n dan kita ingin memasukkan data D, kita menghitung hash_{n+1} = SHA256(hash_n || D), dengan || menunjukkan penggabungan. Titik penyisipan dicatat bersama dengan nilai penghitung, membuktikan bahwa data D ada pada titik tertentu dalam urutan tersebut.
Verifikasi rangkaian PoH dapat diparalelkan dengan membagi rantai menjadi beberapa segmen. Misalnya, validator mungkin menerima pos pemeriksaan PoH setiap 10.000 hash. Untuk memverifikasi urutan antar pos pemeriksaan, validator dapat membagi 10.000 hash menjadi 100 segmen yang masing-masing terdiri dari 100 hash, memverifikasi setiap segmen secara independen secara paralel, dan kemudian memverifikasi bahwa segmen tersebut terhubung dengan benar. Hal ini memungkinkan verifikasi untuk diskalakan secara horizontal dengan jumlah inti CPU yang tersedia.
Urutan tersebut juga mendukung bukti efisien bahwa dua peristiwa terjadi dalam urutan tertentu. Dengan adanya dua penyisipan data pada nilai counter n dan m di mana n m, siapa pun dapat memverifikasi bahwa kejadian di n terjadi sebelum kejadian di m dengan memeriksa rantai hash di antara titik-titik tersebut. Properti ini memungkinkan Solana membuat catatan sejarah yang dapat diverifikasi dari semua peristiwa di jaringan tanpa memerlukan node untuk terus online atau mempercayai sumber waktu eksternal.
Timestamp
Proof of Historyは、壁時計時間に依存せずにイベントにタイムスタンプを割り当てる分散型時計として機能する。各PoHハッシュは暗号学的時計の離散的な「ティック」を表し、カウンタ値がタイムスタンプとして機能する。ハッシュチェーンは逐次的で検証可能であるため、これらのタイムスタンプは信頼不要である。任意の観察者がハッシュチェーンを確認することでタイムスタンプの正当性を検証できる。
Solanaでは、各バリデータがリーダーとして行動する際に独自のPoHシーケンスを生成できる。バリデータがリーダーシップをローテーションする際、前のリーダーからの最後の確認済みチェックポイントを使用してPoHシーケンスを同期する。これにより、異なるバリデータが交代でブロックを生成しても、時間記録の連続性が確保される。ネットワークは、どのPoHシーケンスを公式台帳の一部として受け入れるかについてコンセンサスに達することで、正規のタイムラインを確立する。
システムはクロックドリフトとハードウェア性能のばらつきを、リーダーローテーションとコンセンサスの組み合わせで処理する。悪意のあるまたは故障したリーダーが不正な速度(速すぎるまたは遅すぎる)でPoHタイムスタンプを生成しようとした場合、バリデータは自身のローカルPoHジェネレータとPoHティックレートを比較することでこれを検出できる。予想レートからの大幅な逸脱は問題を示し、バリデータはPoHシーケンスがネットワーク中央値から大きく逸脱するリーダーからのブロックを拒否できる。
このタイムスタンプメカニズムは、分散システムにおける根本的な問題の1つを解決する。信頼できる中央機関なしに共通の時間概念を確立することである。PoHを分散型時計として使用することで、Solanaはバリデータがグローバルに一貫した順序付けを維持しながらトランザクションを並列に処理できるようにする。タイムスタンプはまた、トランザクションの有効期限、スケジュールされた操作、パフォーマンス測定などの時間ベースの機能の基盤も提供する。
Timestamp
Proof of History berfungsi sebagai jam terdesentralisasi yang memberikan stempel waktu pada peristiwa tanpa bergantung pada waktu jam dinding. Setiap hash PoH mewakili "centang" terpisah dari jam kriptografi, dan nilai penghitungnya berfungsi sebagai stempel waktu. Karena rantai hash bersifat berurutan dan dapat diverifikasi, stempel waktu ini tidak dapat dipercaya — pengamat mana pun dapat memverifikasi bahwa stempel waktu tersebut sah dengan memeriksa rantai hash.
Di Solana, setiap validator dapat menghasilkan urutan PoH sendiri ketika bertindak sebagai pemimpin. Ketika validators merotasi kepemimpinan, mereka menyinkronkan urutan PoH mereka menggunakan pos pemeriksaan terakhir yang dikonfirmasi dari pemimpin sebelumnya. Hal ini memastikan kesinambungan catatan temporal meskipun validators yang berbeda bergiliran memproduksi blok. Jaringan menetapkan garis waktu kanonik dengan mencapai konsensus mengenai rangkaian PoH mana yang akan diterima sebagai bagian dari ledger resmi.
Sistem ini menangani penyimpangan jam dan perbedaan kinerja perangkat keras melalui kombinasi rotasi pemimpin dan konsensus. Jika pemimpin yang jahat atau salah mencoba untuk menghasilkan stempel waktu PoH pada tingkat yang salah (terlalu cepat atau terlalu lambat), validators dapat mendeteksi hal ini dengan membandingkan tingkat tick PoH terhadap generator PoH lokal mereka sendiri. Penyimpangan yang signifikan dari tingkat yang diharapkan menunjukkan adanya masalah, dan validators dapat menolak blok dari pemimpin yang rangkaian PoH-nya menyimpang terlalu jauh dari median jaringan.
Mekanisme penandaan waktu ini memecahkan salah satu masalah mendasar dalam sistem terdistribusi: menetapkan gagasan umum tentang waktu tanpa otoritas pusat yang tepercaya. Dengan menggunakan PoH sebagai jam terdesentralisasi, Solana memungkinkan validators memproses transaksi secara paralel sambil mempertahankan pemesanan yang konsisten secara global. Stempel waktu juga memberikan landasan untuk fitur berbasis waktu seperti berakhirnya transaksi, operasi terjadwal, dan pengukuran kinerja.
Proof of Stake Consensus
SolanaのコンセンサスメカニズムはTower BFTと呼ばれ、Proof of Historyの時間的特性を活用するために特別に設計されたProof of Stakeアルゴリズムである。バリデータはSOLトークンをステークしてコンセンサスに参加し、ブロックの正確な検証に対して報酬を得る。ステーク加重投票システムにより、ネットワークにより多くの経済的利害関係を持つバリデータがコンセンサス決定に比例してより多くの影響力を持つことが保証される。
Tower BFTの核心的なイノベーションは、連続投票ごとに指数関数的に増加するロックアウト期間の使用である。バリデータがPoHハッシュに投票すると、一定数のPoHティックの間、台帳のそのフォークにコミットする。そのフォークの次のブロックに投票すると、ロックアウト期間は倍増する。これにより、バリデータが同じフォークで投票を続ける強い経済的インセンティブが生まれる。フォークの切り替えには以前のロックアウトの期限切れを待つ必要があるからである。
具体的には、バリデータがPoHタイムスタンプtでブロックに投票した場合、2^nティックが経過するまで競合するフォークに投票できない。ここでnは現在のフォークで行った連続投票の数である。この指数関数的ロックアウトメカニズムにより、システムは高速なファイナリティを可能にしながら、長距離攻撃に対して安全になる。ステークの超過半数が十分な深さでブロックに投票すると、そのブロックは事実上確定される。
スラッシング条件は正直な行動を強制する。バリデータがロックアウトされているはずの期間中に2つの競合するフォークに投票した場合、スラッシングされる。ステークされたトークンは部分的に破壊され、バリデータセットから除外される。これにより、二重投票やその他のビザンチン行動を試みることが経済的に非合理的になる。PoHの検証可能なタイムスタンプとTower BFTの指数関数的ロックアウトの組み合わせにより、従来のBFTシステムのセキュリティ保証を維持しながら、数秒でファイナリティを達成する高速かつ安全なコンセンサスメカニズムが実現される。
Proof of Stake Consensus
Mekanisme konsensus Solana, yang disebut Tower BFT, adalah algoritma Proof of Stake yang dirancang khusus untuk memanfaatkan properti temporal Proof of History. Validator mempertaruhkan token SOL untuk berpartisipasi dalam konsensus dan mendapatkan hadiah karena memvalidasi blok dengan benar. Sistem pemungutan suara dengan bobot taruhan memastikan bahwa validators dengan kepentingan ekonomi yang lebih besar dalam jaringan memiliki pengaruh yang lebih besar secara proporsional terhadap keputusan konsensus.
Inovasi inti di Tower BFT adalah penggunaan periode lockout yang meningkat secara eksponensial dengan setiap pemungutan suara berturut-turut. Ketika validator memberikan suara pada hash PoH, mereka berkomitmen pada fork ledger tersebut untuk sejumlah tick PoH tertentu. Jika mereka memberikan suara pada blok berikutnya di pertigaan itu, periode penguncian menjadi dua kali lipat. Hal ini menciptakan insentif ekonomi yang kuat bagi validators untuk terus memberikan suara pada fork yang sama, karena peralihan fork memerlukan menunggu hingga lockout yang lebih awal berakhir.
Khususnya, jika validator memberikan suara pada sebuah blok pada stempel waktu PoH t, mereka tidak dapat memberikan suara pada fork yang bertentangan hingga tanda 2^n terlampaui, dengan n adalah jumlah suara berturut-turut yang telah mereka buat pada fork saat ini. Mekanisme penguncian eksponensial ini membuat sistem aman dari serangan jarak jauh sekaligus memungkinkan penyelesaian yang cepat. Setelah mayoritas pemegang saham telah memberikan suara pada sebuah blok dengan kedalaman yang cukup, blok tersebut secara efektif diselesaikan.
Kondisi pemotongan menegakkan perilaku jujur. Jika validator memberikan suara pada dua fork yang bertentangan selama periode ketika keduanya harus dikunci, maka fork tersebut akan dipangkas — token yang dipertaruhkan akan dihancurkan sebagian dan dihapus dari set validator. Hal ini membuat tidak masuk akal secara ekonomi untuk mencoba mengelak atau perilaku Byzantine lainnya. Kombinasi stempel waktu PoH yang dapat diverifikasi dan penguncian eksponensial Tower BFT menciptakan mekanisme konsensus yang cepat dan aman, mencapai penyelesaian dalam hitungan detik dengan tetap menjaga jaminan keamanan sistem BFT tradisional.
Streaming Proof of Replication
Proof of Replication(PoRep)は、バリデータがデータ自体を明かしたり計算集約的な処理を必要としたりすることなく、台帳データを保存していることを証明できるメカニズムである。SolanaはPoRepのストリーミングバージョンを実装しており、バリデータはブロックチェーンの状態を複製していることを継続的に実証する。これはネットワークセキュリティにとって不可欠であり、台帳データがバリデータ間で適切に分散され、少数の場所に集中していないことを保証する。
PoRepメカニズムは、バリデータがそのIDから派生したバリデータ固有のキーを使用して、CBC(Cipher Block Chaining)モード暗号化で台帳のセグメントを暗号化することで機能する。暗号化プロセスは、各暗号化ブロックが前のブロックに依存するようになっており、各バリデータに固有のチェーンを作成する。これにより、バリデータが互いの暗号化データを単にコピーすることが防止される。各バリデータは、固有の暗号化バージョンを生成するために、元の台帳データを保存して処理しなければならない。

定期的に、ネットワークはバリデータに特定の暗号化ブロックの提供を要求するチャレンジを発行する。暗号化はチェーンされているため、バリデータは正しい応答を生成するためにすべての先行ブロックを保存していなければならない。バリデータは暗号化ブロックとともに、暗号化台帳内のその位置を示すMerkle証明を提出する。ネットワークはデータを復号化または再暗号化する必要なく、この証明を迅速に検証できる。

このPoRepへのストリーミングアプローチは、従来のproof-of-storageシステムと比較して低いオーバーヘッドを持つ。バリデータはデータの到着時に暗号化でき、最小限のレイテンシでチャレンジに応答できる。システムはデータ損失の場合のリカバリも可能にする。バリデータが台帳の一部を失った場合、他のバリデータからダウンロードして再暗号化できる。PoRepとPoHタイムスタンプの組み合わせにより、ネットワークがデータの作成時期とバリデータネットワーク全体に適切に保存されていることの両方を検証できる完全な説明責任システムが作成される。
Streaming Proof of Replication
Bukti Replikasi (PoRep) adalah mekanisme yang memungkinkan validators membuktikan bahwa mereka menyimpan data ledger tanpa mengungkapkan data itu sendiri atau memerlukan komputasi intensif. Solana mengimplementasikan versi streaming PoRep di mana validators terus menunjukkan bahwa mereka mereplikasi status blockchain. Hal ini penting untuk keamanan jaringan, karena memastikan bahwa data ledger didistribusikan dengan benar di validators dan tidak terkonsentrasi di beberapa lokasi.
Mekanisme PoRep bekerja dengan meminta validators mengenkripsi segmen ledger menggunakan enkripsi mode CBC (Cipher Block Chaining) dengan kunci khusus validator yang berasal dari identitasnya. Proses enkripsi sedemikian rupa sehingga setiap blok terenkripsi bergantung pada blok sebelumnya, menciptakan rantai yang unik untuk setiap validator. Hal ini mencegah validators sekadar menyalin data terenkripsi satu sama lain — setiap validator harus menyimpan dan memproses data ledger asli untuk menghasilkan versi terenkripsi uniknya.

Secara berkala, jaringan mengeluarkan tantangan kepada validators yang meminta mereka menyediakan blok terenkripsi tertentu. Karena enkripsi dirantai, validator harus menyimpan semua blok sebelumnya untuk menghasilkan respons yang benar. validator mengirimkan blok terenkripsinya bersama dengan bukti Merkle yang menunjukkan posisinya di ledger terenkripsi. Jaringan dapat memverifikasi bukti ini dengan cepat tanpa perlu mendekripsi atau mengenkripsi ulang data.

Pendekatan streaming pada PoRep ini memiliki overhead yang rendah dibandingkan dengan sistem bukti penyimpanan tradisional. Validator dapat mengenkripsi data yang diterima dan merespons tantangan dengan latensi minimal. Sistem juga memungkinkan pemulihan jika terjadi kehilangan data — jika validator kehilangan sebagian dari ledger, mereka dapat mengunduh ulang dari validators lain dan mengenkripsinya kembali. Kombinasi PoRep dengan stempel waktu PoH menciptakan sistem akuntabilitas lengkap di mana jaringan dapat memverifikasi kapan data dibuat dan apakah data disimpan dengan benar di seluruh jaringan validator.
System Architecture
Solanaのシステムアーキテクチャは、トランザクション処理の異なる段階が並列に行われるパイプラインとして設計されている。Transaction Processing Unit(TPU)は、着信トランザクションの処理を担当する中核コンポーネントである。TPUはいくつかの段階で構成される:fetch(トランザクションの収集)、署名検証、banking(トランザクション実行)、write(ストレージへのコミット)。各段階は異なるトランザクションに対して並列に動作し、CPUパイプラインと同様の仕組みである。

署名検証はGPUを使用して加速される。GPUはトランザクション署名の検証に必要な楕円曲線暗号演算において非常に効率的である。この計算集約的なタスクをGPUにオフロードすることで、Solanaはコモディティハードウェア上で毎秒900,000を超える速度で署名を検証できる。この並列署名検証により、非常に高いトランザクションレートでも暗号学的検証がボトルネックになることが防止される。

Sealevelランタイムは、Solanaの並列スマートコントラクト実行エンジンである。トランザクションを逐次的に実行する従来のブロックチェーンとは異なり、Sealevelはトランザクションを分析してアクセスするアカウントを特定し、競合しないトランザクションを複数のCPUコアで並列に実行する。同じアカウントにアクセスするトランザクションは一貫性を維持するために逐次的に実行されるが、異なるアカウントにアクセスするトランザクションは同時に実行できる。この並列処理はPoHがグローバルな順序付けを確立するため可能である。バリデータは、PoHで指定されたシーケンスで状態に適用する限り、任意の順序でトランザクションを実行できる。

アーキテクチャには、ブロック伝播とストレージのための最適化されたコンポーネントも含まれている。Turbineブロック伝播プロトコルは、イレイジャーコーディングを使用してブロックをより小さなパケットに分割し、ツリー構造でネットワーク全体に配布することで帯域幅要件を最小化する。Archiversネットワークは、PoRepを使用してデータの可用性を確保しながら、履歴台帳データの分散ストレージを提供する。これらのコンポーネントが一体となり、ブロックチェーンの分散化とセキュリティ特性を維持しながら毎秒数十万のトランザクションを処理できるシステムを構築する。
System Architecture
Arsitektur sistem Solana dirancang sebagai saluran di mana berbagai tahapan pemrosesan transaksi terjadi secara paralel. Transaction Processing Unit (TPU) merupakan komponen inti yang bertanggung jawab menangani transaksi masuk. TPU terdiri dari beberapa tahapan: pengambilan (mengumpulkan transaksi), verifikasi tanda tangan, perbankan (eksekusi transaksi), dan menulis (melakukan penyimpanan). Setiap tahap beroperasi secara paralel pada transaksi yang berbeda, mirip dengan pipeline CPU.

Verifikasi tanda tangan dipercepat menggunakan GPU, yang sangat efisien pada operasi kriptografi kurva elips yang diperlukan untuk memverifikasi tanda tangan transaksi. Dengan memindahkan tugas komputasi intensif ini ke GPU, Solana dapat memverifikasi tanda tangan dengan kecepatan melebihi 900.000 per detik pada perangkat keras komoditas. Verifikasi tanda tangan paralel ini mencegah validasi kriptografi menjadi hambatan bahkan pada tingkat transaksi yang sangat tinggi.

Runtime Sealevel adalah mesin eksekusi kontrak pintar paralel Solana. Tidak seperti blockchain tradisional yang mengeksekusi transaksi secara berurutan, Sealevel menganalisis transaksi untuk mengidentifikasi akun mana yang mereka akses dan mengeksekusi transaksi yang tidak bertentangan secara paralel di beberapa inti CPU. Transaksi yang mengakses akun yang sama dijalankan secara berurutan untuk menjaga konsistensi, namun transaksi yang mengakses akun berbeda dapat berjalan secara bersamaan. Paralelisme ini dimungkinkan karena PoH menetapkan urutan global — validators dapat mengeksekusi transaksi dalam urutan apa pun selama transaksi tersebut diterapkan pada status dalam urutan yang ditentukan PoH.

Arsitekturnya juga mencakup komponen yang dioptimalkan untuk propagasi dan penyimpanan blok. Protokol propagasi blok turbin menggunakan pengkodean penghapusan untuk memecah blok menjadi paket-paket lebih kecil yang didistribusikan ke seluruh jaringan dalam struktur pohon, sehingga meminimalkan kebutuhan bandwidth. Jaringan Archivers menyediakan penyimpanan terdesentralisasi untuk data historis ledger, menggunakan PoRep untuk memastikan ketersediaan data. Bersama-sama, komponen-komponen ini menciptakan sistem yang dapat memproses ratusan ribu transaksi per detik dengan tetap menjaga sifat desentralisasi dan keamanan dari sebuah blockchain.
Performance
Solanaのアーキテクチャは、ムーアの法則に従ってハードウェアの改善とともにスケールするパフォーマンスレベルを達成するように設計されている。標準的な1ギガビットネットワーク接続では、理論上の最大スループットは1トランザクションあたり176バイト(署名とメタデータを含む)を想定すると、毎秒約710,000トランザクションである。この計算はネットワーク帯域幅を主要なボトルネックとし、計算上のボトルネックは並列化によって除去されている。
署名検証はブロックチェーンパフォーマンスの制限要因となることが多いが、GPUの並列化を使用して加速される。単一のGPUは毎秒900,000以上のed25519署名を検証でき、これはネットワークスループット制限を超えている。これは署名検証がシステムのパフォーマンスを制約しないことを意味する。ボトルネックはネットワーク帯域幅とトランザクション実行に移行する。複雑なスマートコントラクトロジックを含まない単純な価値移転トランザクションの場合、bankingステージはネットワーク入力レートに匹敵するレートでトランザクションを処理できる。
PoHジェネレータは専用のCPUコア上で動作し、4GHzプロセッサ上でミリ秒あたり約4,000ハッシュを生成する。このレートで、PoHシーケンスは0.25マイクロ秒の粒度のタイムスタンプを提供し、毎秒数百万のトランザクションの順序付けに十分である。PoH生成の逐次的な性質はこのコンポーネントを並列化できないことを意味するが、スループットは十分に高く、全体的なシステムパフォーマンスを制限しない。
ハードウェアが改善されるにつれて、Solanaのスループットはそれに応じてスケールする。より高速なネットワーク、より強力なGPU、改善されたCPUはすべてより高いトランザクションレートに貢献する。システムはプロトコルの変更を必要とせずにこれらの改善を活用するように設計されている。このスケーラビリティアプローチは、逐次的コンセンサスメカニズムによって根本的に制限されるブロックチェーンとは対照的であり、Solanaがセキュリティと分散化の保証を維持しながら、分散型システムでは不可能と考えられていたパフォーマンスレベルを達成することを可能にする。
Performance
Arsitektur Solana dirancang untuk mencapai tingkat kinerja yang dapat disesuaikan dengan peningkatan perangkat keras, mengikuti Hukum Moore. Pada koneksi jaringan standar 1 gigabit, throughput maksimum teoretis adalah sekitar 710.000 transaksi per detik, dengan asumsi 176 byte per transaksi (termasuk tanda tangan dan metadata). Perhitungan ini didasarkan pada bandwidth jaringan sebagai hambatan utama, dan hambatan komputasi dihilangkan melalui paralelisasi.
Verifikasi tanda tangan, yang sering kali menjadi faktor pembatas kinerja blockchain, dipercepat menggunakan paralelisasi GPU. Sebuah GPU dapat memverifikasi lebih dari 900.000 tanda tangan ed25519 per detik, yang melebihi batas throughput jaringan. Ini berarti verifikasi tanda tangan tidak membatasi kinerja sistem — hambatannya beralih ke bandwidth jaringan dan eksekusi transaksi. Untuk transaksi sederhana yang hanya mentransfer nilai tanpa logika kontrak pintar yang rumit, tahap perbankan dapat memproses transaksi dengan tarif yang sesuai dengan tarif input jaringan.
Generator PoH berjalan pada inti CPU khusus, menghasilkan sekitar 4.000 hash per milidetik pada prosesor 4GHz. Pada tingkat ini, urutan PoH memberikan stempel waktu dengan granularitas 0,25 mikrodetik, yang cukup untuk memesan jutaan transaksi per detik. Sifat pembangkitan PoH yang berurutan berarti komponen ini tidak dapat diparalelkan, namun throughputnya cukup tinggi sehingga tidak membatasi kinerja sistem secara keseluruhan.
Seiring dengan peningkatan perangkat keras, throughput Solana akan meningkat sesuai skalanya. Jaringan yang lebih cepat, GPU yang lebih bertenaga, dan CPU yang lebih baik semuanya berkontribusi pada tingkat transaksi yang lebih tinggi. Sistem dirancang untuk memanfaatkan peningkatan ini tanpa memerlukan perubahan protokol. Pendekatan skalabilitas ini kontras dengan blockchain yang pada dasarnya dibatasi oleh mekanisme konsensus berurutan, memungkinkan Solana mencapai tingkat kinerja yang sebelumnya dianggap mustahil dalam sistem desentralisasi dengan tetap menjaga jaminan keamanan dan desentralisasi.
Conclusion
Proof of Historyは、分散型台帳のスケーラビリティを制限してきたタイミング問題を解決することで、ブロックチェーンアーキテクチャにおける根本的なブレークスルーを表している。検証可能な暗号学的時計を作成することで、PoHはバリデータが従来のコンセンサスメカニズムで必要とされる広範な通信オーバーヘッドなしにイベントの時間的順序付けを確立できるようにする。このイノベーションにより重要なボトルネックが除去され、トランザクション処理をネットワーク全体で並列化できるようになる。
PoHと最適化されたシステムコンポーネント(GPU加速署名検証、Sealevelによる並列トランザクション実行、効率的なブロック伝播プロトコル)の統合により、コモディティハードウェア上で毎秒数十万のトランザクションを処理できるブロックチェーンが実現される。さらに重要なのは、アーキテクチャがハードウェアの改善とともにスケールするように設計されており、プロセッサが高速化しネットワークがより高性能になるにつれてパフォーマンスが向上し続けることである。
Solanaの設計は、高性能と分散化が相互に排他的ではないことを実証している。PoHをコンセンサスとシステム調整の基盤として活用することで、ネットワークは分散型ブロックチェーンのセキュリティと検閲耐性の特性を維持しながら、中央集権型データベースに匹敵するスループットレベルを達成する。ステーク加重Tower BFTコンセンサスメカニズムにより、高速なファイナリティを達成しながら、ビザンチンアクターに対するネットワークの安全性が確保される。
このアーキテクチャの実装は、ブロックチェーン技術がグローバルな採用へとスケールするための実用的な道筋を提供する。高いトランザクションスループットを必要とするアプリケーション(分散型取引所、ゲームプラットフォーム、金融システムなど)は、パフォーマンスを犠牲にすることなく、真に分散化されたインフラストラクチャ上に構築できるようになった。Proof of Historyは、スケーラビリティの制約のために以前は実現不可能であった新世代のブロックチェーンアプリケーションへの扉を開く。
Conclusion
Proof of History mewakili terobosan mendasar dalam arsitektur blockchain dengan memecahkan masalah waktu yang membatasi skalabilitas ledger yang didistribusikan. Dengan membuat jam kriptografi yang dapat diverifikasi, PoH memungkinkan validators untuk menetapkan urutan peristiwa secara temporal tanpa overhead komunikasi ekstensif yang diperlukan oleh mekanisme konsensus tradisional. Inovasi ini menghilangkan hambatan kritis dan memungkinkan pemrosesan transaksi diparalelkan di seluruh jaringan.
Integrasi PoH dengan komponen sistem yang dioptimalkan — verifikasi tanda tangan yang dipercepat GPU, eksekusi transaksi paralel melalui Sealevel, dan protokol propagasi blok yang efisien — menciptakan blockchain yang dapat memproses ratusan ribu transaksi per detik pada perangkat keras komoditas. Yang lebih penting lagi, arsitekturnya dirancang untuk disesuaikan dengan peningkatan perangkat keras, yang berarti kinerja akan terus meningkat seiring dengan kecepatan prosesor dan jaringan yang lebih mumpuni.
Desain Solana menunjukkan bahwa kinerja tinggi dan desentralisasi tidak bisa dipisahkan satu sama lain. Dengan memanfaatkan PoH sebagai landasan konsensus dan koordinasi sistem, jaringan mencapai tingkat throughput yang sebanding dengan database terpusat sambil menjaga properti keamanan dan ketahanan sensor dari blockchain yang terdesentralisasi. Mekanisme konsensus Tower BFT dengan pembobotan pasak memastikan bahwa jaringan tetap aman terhadap aktor Byzantine sekaligus mencapai penyelesaian yang cepat.
Penerapan arsitektur ini memberikan jalan praktis ke depan bagi teknologi blockchain untuk mencapai adopsi global. Aplikasi yang memerlukan throughput transaksi yang tinggi – seperti bursa terdesentralisasi, platform game, dan sistem keuangan – kini dapat dibangun pada infrastruktur yang benar-benar terdesentralisasi tanpa mengorbankan kinerja. Proof of History membuka pintu bagi aplikasi blockchain generasi baru yang sebelumnya tidak dapat dijalankan karena kendala skalabilitas.