$SOL 2017 · 36 min

솔라나: 고성능 블록체인을 위한 새로운 아키텍처

Solana: A new architecture for a high performance blockchain

저자 Anatoly Yakovenko

Abstract

본 논문은 고성능 블록체인을 위한 새로운 아키텍처를 제시한다. Solana는 Proof of History(PoH)라는 새로운 시간 기록 메커니즘을 구현한다. 이는 이벤트 간의 순서와 시간 경과를 검증하기 위한 증명이다. PoH는 신뢰가 필요 없는 시간 경과를 원장에 인코딩하는 데 사용되며, 특정 시점에 이벤트가 발생했음을 증명하는 역사적 기록을 생성한다.

핵심 혁신은 PoH가 네트워크의 노드들이 서로 통신할 필요 없이 이벤트의 시간적 순서를 확립할 수 있도록 한다는 점이다. 순차적 해시 체인으로 구현된 검증 가능한 지연 함수(VDF)를 사용함으로써, 시스템은 이벤트 간 시간 경과를 검증하는 방법을 제공하는 암호학적 시계를 생성한다. 이를 통해 네트워크는 탈중앙화와 보안을 유지하면서 초당 수천 건의 트랜잭션을 처리할 수 있다.

PoH는 Proof of Stake(PoS) 합의 메커니즘과 통합된다. 이 조합은 검증자가 트랜잭션을 병렬로 검증하고 효율적으로 합의에 도달할 수 있는 고도로 최적화된 블록체인 아키텍처를 가능하게 한다. 이 시스템은 무어의 법칙에 맞춰 확장되도록 설계되었으며, 분산 네트워크의 보안 보장을 희생하지 않으면서 하드웨어 성능 향상을 활용하여 처리량을 개선한다.

Introduction

블록체인">블록체인 시스템의 근본적인 과제는 탈중앙화와 보안을 유지하면서 높은 트랜잭션 처리량을 달성하는 것이다. 현재의 블록체인 구현은 시간과 이벤트 순서에 대해 합의하기 위해 노드 간 광범위한 통신을 요구하는 합의 메커니즘에 의해 제한된다. 이러한 조율 오버헤드는 기존 블록체인이 글로벌 규모의 애플리케이션 수요를 충족하기 위해 확장하는 것을 방해하는 병목 현상을 만든다.

핵심 문제는 시간이다. 분산 시스템에서 노드는 다른 노드의 타임스탬프가 정확한지 신뢰할 수 없기 때문에 외부 시계에 의존할 수 없다. 전통적인 블록체인 합의 프로토콜은 현재 상태와 트랜잭션 순서에 합의하기 위해 노드들이 광범위하게 통신하는 방식으로 이 문제를 해결한다. 이러한 통신 오버헤드는 근본적으로 처리량을 제한하는데, 네트워크는 노드가 순서에 대해 합의에 도달할 수 있는 속도만큼만 트랜잭션을 처리할 수 있기 때문이다.

Solana는 이 타이밍 문제에 대한 해결책으로 Proof of History를 도입한다. PoH는 악의적인 행위자의 타임스탬프에 의존하지 않고도 이벤트 사이에 일정량의 시간이 경과했음을 증명하는 암호학적 방법을 제공한다. 검증 가능한 역사적 기록을 생성함으로써, PoH는 노드가 이벤트 발생 순서를 증명할 수 있으면서도 독립적으로 트랜잭션을 처리할 수 있게 한다. 이 혁신은 네트워크가 트랜잭션 처리를 병렬화하고 처리량을 극적으로 증가시킬 수 있게 한다.

핵심 통찰은 신뢰가 필요 없는 시간 소스를 만들 수 있다면, 합의에서 조율 병목을 제거할 수 있다는 것이다. PoH가 암호학적 시계를 제공함으로써, 검증자는 트랜잭션을 병렬로 처리할 수 있으며 정규 순서를 확정하기 위해서만 통신하면 된다. 이러한 아키텍처 전환은 Solana가 탈중앙화된 블록체인에서 이전에 불가능하다고 여겨졌던 성능 수준을 달성할 수 있게 한다.

Outline

본 논문은 Proof of History가 고성능 블록체인">블록체인 운영을 가능하게 하는 방식에 초점을 맞추어 Solana의 기술 아키텍처를 설명한다. 문서는 먼저 PoH 메커니즘 자체 — 순차적 해시 체인이 검증 가능한 시간적 순서를 생성하는 방법 — 를 설명한다. PoH를 안전하게 만드는 암호학적 속성을 상세히 기술하고, 검증자가 PoH 시퀀스를 효율적으로 검증할 수 있는 방법을 보여준다.

이어서 논문은 PoH가 Proof of Stake 합의와 어떻게 통합되는지 탐구한다. PoH의 시간적 속성을 활용하도록 특별히 설계된 PoS 알고리즘인 Tower BFT를 설명한다. 이 통합은 검증자가 특정 PoH 타임스탬프에서 원장 상태에 투표할 수 있게 하여, 빠르고 안전한 합의 메커니즘을 만든다. 또한 악의적 행동을 방지하는 슬래싱 조건도 설명한다.

다음으로, Solana의 네트워크 설계와 데이터 전파 프로토콜을 제시한다. Gulf Stream 프로토콜은 멤풀 없이 트랜잭션 전달을 가능하게 하여, 클라이언트가 다가오는 리더에게 직접 트랜잭션을 보낼 수 있게 한다. 리더 교체가 어떻게 작동하는지, 그리고 네트워크가 리더십이 변경되는 동안에도 높은 처리량을 유지하는 방법을 설명한다.

마지막으로, Transaction Processing Unit(TPU), Sealevel 병렬 런타임, 데이터 저장 검증을 위한 Proof of Replication을 포함한 시스템 아키텍처를 논의한다. 성능 예측은 Solana가 표준 기가비트 네트워크에서 초당 700,000건 이상의 트랜잭션을 처리할 수 있으며, 하드웨어가 개선됨에 따라 처리량이 확장됨을 보여준다.

Network Design

Solana의 네트워크 설계는 검증자들이 교대로 블록을 생성하는 순환 리더 시스템을 중심으로 한다. 리더는 수신되는 트랜잭션을 PoH 스트림으로 시퀀싱하고 결과 블록을 네트워크에 게시하는 책임을 진다. 리더는 스테이크 가중 알고리즘을 통해 선출되며, 교체 일정은 사전에 알려져 있어 네트워크가 트랜잭션 전달을 최적화할 수 있다.

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

Gulf Stream 프로토콜은 클라이언트가 다가오는 리더에게 직접 트랜잭션을 전달할 수 있게 함으로써 기존의 멤풀 필요성을 제거한다. 클라이언트가 트랜잭션을 제출하면, 교체 일정에 따라 예상 리더에게 전달된다. 현재 리더가 트랜잭션을 처리할 수 없는 경우, 다음 예상 리더에게 전달한다. 이 설계는 확인 지연을 줄이고 검증자가 미리 트랜잭션을 실행할 수 있게 하여 처리량을 더욱 최적화한다.

트랜잭션 전파는 다층 접근 방식을 사용한다. 클라이언트는 검증자에게 트랜잭션을 보내고, 검증자는 현재 또는 다가오는 리더에게 이를 전달한다. 리더는 트랜잭션을 PoH 스트림으로 시퀀싱하여 전체 순서를 생성한다. 시퀀싱이 완료되면, 리더는 PoH 스트림과 트랜잭션 데이터를 검증자에게 전송하고, 검증자는 PoH 시퀀스를 검증하고 트랜잭션을 병렬로 실행한다.

네트워크 설계에는 블록을 더 작은 패킷으로 나누어 트리 구조로 네트워크 전체에 분산하는 turbine 블록 전파 프로토콜도 포함된다. 이 접근 방식은 빠른 블록 전파를 보장하면서 개별 검증자의 대역폭 요구 사항을 최소화한다. PoH의 트랜잭션 순서 검증 능력과 결합된 이 아키텍처는 Solana가 탈중앙화를 희생하지 않으면서 높은 처리량을 달성할 수 있게 한다.

Proof of History

Proof of History는 SHA-256을 사용한 순차적 해시 체인으로 구현된 검증 가능한 지연 함수(VDF)이다. PoH 생성기는 각 출력을 다음 해시의 입력으로 사용하여 SHA-256 해시를 지속적으로 계산한다. 이는 각 해시가 이전 해시 이후에만 계산될 수 있는 순차적 체인을 생성하여, 검증 가능한 시간적 순서를 확립한다. 각 해시를 생성하기 위한 계산 요구 사항은 이벤트 간 최소 시간 지연을 강제한다.

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

PoH의 핵심 속성은 검증은 저렴하지만 생성은 비용이 많이 든다는 것이다. 검증자는 해시 시퀀스를 세그먼트로 나누어 각 세그먼트를 독립적으로 검사한 후 세그먼트가 올바르게 연결되는지 확인함으로써 전체 해시 시퀀스를 병렬로 검사할 수 있다. 그러나 생성은 반드시 순차적이어야 한다 — 모든 중간 단계를 실제로 계산하지 않고는 해시 체인의 출력을 예측할 방법이 없다. 생성과 검증 사이의 이러한 비대칭성이 PoH를 실용적으로 만드는 것이다.

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

외부 이벤트와 트랜잭션 데이터는 해시 체인에 혼합되어 PoH 시퀀스에 삽입된다. 트랜잭션이 도착하면, 그 해시가 현재 PoH 상태와 결합되어 해당 트랜잭션이 시퀀스의 그 시점에 존재했음을 증명하는 기록이 생성된다. PoH 생성기는 주기적으로 체크포인트를 기록하며, 마지막 체크포인트 이후 계산된 해시 수와 함께 현재 해시 값을 게시한다. 이러한 체크포인트는 검증자가 모든 해시를 재계산하지 않고도 PoH 시퀀스를 효율적으로 검증할 수 있게 한다.

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

PoH 시퀀스는 전체 네트워크의 암호학적 시계 역할을 한다. 해시 체인은 순차적이고 검증 가능하므로, 어떤 노드든 해당 구간 동안 계산된 해시를 보여줌으로써 두 이벤트 사이에 일정량의 시간이 경과했음을 증명할 수 있다. 이는 노드가 외부 타임스탬프를 신뢰하거나 시간적 순서를 확립하기 위해 서로 조율할 필요를 제거하여, 전통적인 블록체인 합의의 근본적인 병목을 해소한다.

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

Proof of History Sequence

Proof of History 시퀀스는 각 해시가 이전 출력에 의존하는 연속적인 SHA-256 해시 체인이다. 시퀀스는 초기 시드 값에서 시작하며, 이 값을 해싱하여 첫 번째 출력을 생성한다. 이 출력은 다음 해시의 입력이 되고, 이 과정이 무한히 반복된다. 생성기는 또한 계산된 총 해시 수를 추적하는 카운터를 유지하며, 이는 원장에서 이벤트의 PoH "타임스탬프" 역할을 한다.

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

데이터를 시퀀스에 삽입해야 할 때(트랜잭션 해시나 검증자 서명 등), 결정론적 혼합 함수를 사용하여 현재 해시 상태와 결합된다. 예를 들어, 현재 해시 상태가 hash_n이고 데이터 D를 삽입하려면, hash_{n+1} = SHA256(hash_n || D)를 계산한다. 여기서 ||는 연결(concatenation)을 나타낸다. 삽입 지점은 카운터 값과 함께 기록되어, 데이터 D가 시퀀스의 해당 특정 지점에 존재했음을 증명한다.

PoH 시퀀스의 검증은 체인을 세그먼트로 분할하여 병렬화할 수 있다. 예를 들어, 검증자가 10,000 해시마다 PoH 체크포인트를 수신할 수 있다. 체크포인트 간 시퀀스를 검증하기 위해, 검증자는 10,000개의 해시를 각 100개씩 100개의 세그먼트로 분할하고, 각 세그먼트를 병렬로 독립적으로 검증한 다음, 세그먼트가 올바르게 연결되는지 확인할 수 있다. 이를 통해 검증은 사용 가능한 CPU 코어 수에 따라 수평적으로 확장될 수 있다.

시퀀스는 또한 두 이벤트가 특정 순서로 발생했음에 대한 효율적인 증명을 지원한다. n m인 카운터 값 nm에서의 두 데이터 삽입이 주어지면, 누구나 해당 지점 사이의 해시 체인을 확인하여 n의 이벤트가 m의 이벤트보다 먼저 발생했음을 검증할 수 있다. 이 속성은 Solana가 노드가 지속적으로 온라인 상태이거나 외부 시간 소스를 신뢰할 필요 없이 네트워크의 모든 이벤트에 대한 검증 가능한 역사적 기록을 생성할 수 있게 한다.

Timestamp

Proof of History는 벽시계 시간에 의존하지 않고 이벤트에 타임스탬프를 할당하는 탈중앙화된 시계로 기능한다. 각 PoH 해시는 암호학적 시계의 개별 "틱"을 나타내며, 카운터 값이 타임스탬프 역할을 한다. 해시 체인은 순차적이고 검증 가능하므로, 이러한 타임스탬프는 신뢰가 필요 없다 — 어떤 관찰자든 해시 체인을 확인하여 타임스탬프가 정당한지 검증할 수 있다.

Solana에서 각 검증자는 리더로 활동할 때 자체 PoH 시퀀스를 생성할 수 있다. 검증자가 리더십을 교체할 때, 이전 리더의 마지막 확인된 체크포인트를 사용하여 PoH 시퀀스를 동기화한다. 이는 서로 다른 검증자가 교대로 블록을 생성하더라도 시간 기록의 연속성을 보장한다. 네트워크는 공식 원장의 일부로 수용할 PoH 시퀀스에 대해 합의에 도달하여 정규 타임라인을 확립한다.

시스템은 리더 교체와 합의의 조합을 통해 클록 드리프트와 하드웨어 성능의 편차를 처리한다. 악의적이거나 결함이 있는 리더가 잘못된 속도(너무 빠르거나 너무 느리게)로 PoH 타임스탬프를 생성하려고 시도하면, 검증자는 자체 로컬 PoH 생성기와 비교하여 PoH 틱 속도를 비교함으로써 이를 감지할 수 있다. 예상 속도에서의 상당한 편차는 문제를 나타내며, 검증자는 PoH 시퀀스가 네트워크 중앙값에서 너무 벗어난 리더의 블록을 거부할 수 있다.

이 타임스탬핑 메커니즘은 분산 시스템의 근본적인 문제 중 하나인 신뢰할 수 있는 중앙 기관 없이 공통의 시간 개념을 확립하는 문제를 해결한다. PoH를 탈중앙화된 시계로 사용함으로써, Solana는 검증자가 전역적으로 일관된 순서를 유지하면서 트랜잭션을 병렬로 처리할 수 있게 한다. 타임스탬프는 또한 트랜잭션 만료, 예약된 작업, 성능 측정과 같은 시간 기반 기능의 기초를 제공한다.

Proof of Stake Consensus

Tower BFT라 불리는 Solana의 합의 메커니즘은 Proof of History의 시간적 속성을 활용하도록 특별히 설계된 Proof of Stake 알고리즘이다. 검증자는 SOL 토큰을 스테이킹하여 합의에 참여하고 블록을 올바르게 검증하면 보상을 받는다. 스테이크 가중 투표 시스템은 네트워크에 더 많은 경제적 이해관계를 가진 검증자가 합의 결정에 비례적으로 더 큰 영향력을 갖도록 보장한다.

Tower BFT의 핵심 혁신은 연속 투표마다 기하급수적으로 증가하는 잠금 기간의 사용이다. 검증자가 PoH 해시에 투표하면, 일정 수의 PoH 틱 동안 해당 원장의 포크에 대해 커밋한다. 해당 포크의 다음 블록에 투표하면 잠금 기간이 두 배가 된다. 이는 검증자가 동일한 포크에 계속 투표하도록 강력한 경제적 인센티브를 만드는데, 포크를 전환하려면 이전 잠금이 만료될 때까지 기다려야 하기 때문이다.

구체적으로, 검증자가 PoH 타임스탬프 t에서 블록에 투표하면, 2^n 틱이 경과할 때까지 충돌하는 포크에 투표할 수 없다. 여기서 n은 현재 포크에서 연속으로 한 투표 수이다. 이 기하급수적 잠금 메커니즘은 빠른 최종성을 허용하면서 장거리 공격에 대한 시스템의 보안을 유지한다. 충분한 깊이로 블록에 대해 스테이크의 초과반수가 투표하면, 해당 블록은 사실상 확정된다.

슬래싱 조건은 정직한 행동을 강제한다. 검증자가 잠금 상태여야 하는 기간 동안 두 개의 충돌하는 포크에 투표하면, 슬래싱된다 — 스테이킹된 토큰이 부분적으로 소각되고 검증자 세트에서 제거된다. 이는 이중 투표나 기타 비잔틴 행동을 시도하는 것을 경제적으로 비합리적으로 만든다. PoH의 검증 가능한 타임스탬프와 Tower BFT의 기하급수적 잠금의 조합은 빠르고 안전한 합의 메커니즘을 만들어, 전통적인 BFT 시스템의 보안 보장을 유지하면서 수 초 만에 최종성을 달성한다.

Streaming Proof of Replication

Proof of Replication(PoRep)은 검증자가 데이터 자체를 공개하거나 집약적인 계산을 요구하지 않고도 원장 데이터를 저장하고 있음을 증명할 수 있는 메커니즘이다. Solana는 검증자가 블록체인">블록체인 상태를 복제하고 있음을 지속적으로 입증하는 스트리밍 버전의 PoRep을 구현한다. 이는 원장 데이터가 소수의 위치에 집중되지 않고 검증자 전체에 적절히 분산되도록 보장하므로 네트워크 보안에 필수적이다.

PoRep 메커니즘은 검증자가 자신의 아이덴티티에서 파생된 검증자 고유 키를 사용하여 CBC(Cipher Block Chaining) 모드 암호화로 원장의 세그먼트를 암호화하는 방식으로 작동한다. 암호화 프로세스는 각 암호화된 블록이 이전 블록에 의존하도록 되어 있어, 각 검증자에 고유한 체인을 생성한다. 이는 검증자가 단순히 서로의 암호화된 데이터를 복사하는 것을 방지한다 — 각 검증자는 고유한 암호화 버전을 생성하기 위해 원본 원장 데이터를 저장하고 처리해야 한다.

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

주기적으로, 네트워크는 검증자에게 특정 암호화된 블록을 제공하도록 요구하는 챌린지를 발행한다. 암호화가 체인으로 연결되어 있으므로, 검증자는 올바른 응답을 생성하기 위해 모든 선행 블록을 저장하고 있어야 한다. 검증자는 암호화된 원장에서의 위치를 보여주는 Merkle 증명과 함께 암호화된 블록을 제출한다. 네트워크는 데이터를 복호화하거나 재암호화할 필요 없이 이 증명을 신속하게 검증할 수 있다.

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

이 스트리밍 방식의 PoRep은 전통적인 저장 증명 시스템에 비해 오버헤드가 낮다. 검증자는 데이터가 도착하는 대로 암호화하고 최소한의 지연으로 챌린지에 응답할 수 있다. 시스템은 또한 데이터 손실 시 복구를 가능하게 한다 — 검증자가 원장의 일부를 잃으면, 다른 검증자로부터 다시 다운로드하여 재암호화할 수 있다. PoRep과 PoH 타임스탬프의 조합은 네트워크가 데이터가 생성된 시기와 검증자 네트워크 전체에 적절히 저장되어 있는지를 모두 검증할 수 있는 완전한 책임 시스템을 만든다.

System Architecture

Solana의 시스템 아키텍처는 트랜잭션 처리의 여러 단계가 병렬로 진행되는 파이프라인으로 설계되었다. Transaction Processing Unit(TPU)은 수신되는 트랜잭션을 처리하는 핵심 구성 요소이다. TPU는 여러 단계로 구성된다: 페치(트랜잭션 수집), 서명 검증, 뱅킹(트랜잭션 실행), 쓰기(스토리지에 커밋). 각 단계는 CPU 파이프라이닝과 유사하게 서로 다른 트랜잭션에 대해 병렬로 작동한다.

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

서명 검증은 트랜잭션 서명 검증에 필요한 타원 곡선 암호화 연산에 매우 효율적인 GPU를 사용하여 가속된다. 이 계산 집약적인 작업을 GPU에 오프로딩함으로써, Solana는 범용 하드웨어에서 초당 900,000건 이상의 속도로 서명을 검증할 수 있다. 이 병렬 서명 검증은 매우 높은 트랜잭션 속도에서도 암호화 검증이 병목이 되는 것을 방지한다.

Solana PoH generator network throughput limits showing bandwidth and processing constraints

Sealevel 런타임은 Solana의 병렬 스마트 컨트랙트 실행 엔진이다. 트랜잭션을 순차적으로 실행하는 기존 블록체인">블록체인과 달리, Sealevel은 트랜잭션이 접근하는 계정을 분석하여 충돌하지 않는 트랜잭션을 여러 CPU 코어에 걸쳐 병렬로 실행한다. 동일한 계정에 접근하는 트랜잭션은 일관성을 유지하기 위해 순차적으로 실행되지만, 서로 다른 계정에 접근하는 트랜잭션은 동시에 실행될 수 있다. 이 병렬성은 PoH가 전역 순서를 확립하기 때문에 가능하다 — 검증자는 PoH가 지정한 시퀀스로 상태에 적용하기만 하면 어떤 순서로든 트랜잭션을 실행할 수 있다.

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

아키텍처에는 블록 전파와 스토리지를 위한 최적화된 구성 요소도 포함된다. turbine 블록 전파 프로토콜은 이레이저 코딩을 사용하여 블록을 더 작은 패킷으로 나누어 트리 구조로 네트워크에 분산하여 대역폭 요구 사항을 최소화한다. Archivers 네트워크는 PoRep을 사용하여 데이터 가용성을 보장하면서 역사적 원장 데이터에 대한 탈중앙화된 스토리지를 제공한다. 이러한 구성 요소들이 함께 블록체인의 탈중앙화와 보안 속성을 유지하면서 초당 수십만 건의 트랜잭션을 처리할 수 있는 시스템을 만든다.

Performance

Solana의 아키텍처는 무어의 법칙을 따르며 하드웨어 개선에 맞춰 확장되는 성능 수준을 달성하도록 설계되었다. 표준 1기가비트 네트워크 연결에서 이론적 최대 처리량은 트랜잭션당 176바이트(서명 및 메타데이터 포함)를 가정할 때 초당 약 710,000건의 트랜잭션이다. 이 계산은 네트워크 대역폭을 주요 병목으로 하며, 병렬화를 통해 계산 병목은 제거된 것을 기반으로 한다.

블록체인">블록체인 성능에서 종종 제한 요인이 되는 서명 검증은 GPU 병렬화를 사용하여 가속된다. 단일 GPU는 초당 900,000건 이상의 ed25519 서명을 검증할 수 있으며, 이는 네트워크 처리량 한도를 초과한다. 이는 서명 검증이 시스템 성능을 제약하지 않는다는 것을 의미하며 — 병목은 네트워크 대역폭과 트랜잭션 실행으로 이동한다. 복잡한 스마트 컨트랙트 로직 없이 단순히 가치를 이전하는 단순 트랜잭션의 경우, 뱅킹 단계는 네트워크 입력 속도에 맞는 속도로 트랜잭션을 처리할 수 있다.

PoH 생성기는 전용 CPU 코어에서 실행되며, 4GHz 프로세서에서 밀리초당 약 4,000개의 해시를 생성한다. 이 속도에서 PoH 시퀀스는 0.25마이크로초의 세분성으로 타임스탬프를 제공하며, 이는 초당 수백만 건의 트랜잭션을 정렬하는 데 충분하다. PoH 생성의 순차적 특성은 이 구성 요소가 병렬화될 수 없음을 의미하지만, 처리량이 충분히 높아 전체 시스템 성능을 제한하지 않는다.

하드웨어가 개선됨에 따라 Solana의 처리량은 그에 맞게 확장된다. 더 빠른 네트워크, 더 강력한 GPU, 개선된 CPU 모두가 더 높은 트랜잭션 속도에 기여한다. 시스템은 프로토콜 변경 없이 이러한 개선 사항을 활용하도록 설계되었다. 이 확장성 접근 방식은 순차적 합의 메커니즘에 의해 근본적으로 제한되는 블록체인과 대조되며, Solana가 보안과 탈중앙화 보장을 유지하면서 분산 시스템에서 이전에 불가능하다고 여겨졌던 성능 수준을 달성할 수 있게 한다.

Conclusion

Proof of History는 분산 원장의 확장성을 제한해 온 타이밍 문제를 해결함으로써 블록체인">블록체인 아키텍처의 근본적인 돌파구를 나타낸다. 검증 가능한 암호학적 시계를 만듦으로써, PoH는 검증자가 전통적인 합의 메커니즘이 요구하는 광범위한 통신 오버헤드 없이 이벤트의 시간적 순서를 확립할 수 있게 한다. 이 혁신은 핵심적인 병목을 제거하고 네트워크 전체에서 트랜잭션 처리를 병렬화할 수 있게 한다.

PoH와 최적화된 시스템 구성 요소 — GPU 가속 서명 검증, Sealevel을 통한 병렬 트랜잭션 실행, 효율적인 블록 전파 프로토콜 — 의 통합은 범용 하드웨어에서 초당 수십만 건의 트랜잭션을 처리할 수 있는 블록체인을 만든다. 더 중요한 것은, 이 아키텍처가 하드웨어 개선에 맞춰 확장되도록 설계되어 있어 프로세서가 빨라지고 네트워크가 더 강력해짐에 따라 성능이 계속 향상된다는 것이다.

Solana의 설계는 고성능과 탈중앙화가 상호 배타적이지 않음을 보여준다. PoH를 합의와 시스템 조율의 기반으로 활용함으로써, 네트워크는 탈중앙화된 블록체인의 보안과 검열 저항 속성을 유지하면서 중앙화된 데이터베이스에 견줄 수 있는 처리량 수준을 달성한다. 스테이크 가중 Tower BFT 합의 메커니즘은 빠른 최종성을 달성하면서 비잔틴 행위자에 대한 네트워크 보안을 보장한다.

이 아키텍처의 구현은 블록체인 기술이 글로벌 채택으로 확장하기 위한 실질적인 경로를 제공한다. 높은 트랜잭션 처리량을 요구하는 애플리케이션 — 탈중앙화 거래소, 게임 플랫폼, 금융 시스템 — 은 이제 성능을 타협하지 않으면서 진정으로 탈중앙화된 인프라 위에 구축될 수 있다. Proof of History는 이전에 확장성 제약으로 인해 실현 불가능했던 새로운 세대의 블록체인 애플리케이션의 문을 연다.

자주 묻는 질문

Solana 백서란 무엇인가요?
Solana 백서는 2017년 Anatoly Yakovenko가 작성한 것으로, 탈중앙화를 희생하지 않고 높은 처리량의 블록체인 처리를 가능하게 하는 새로운 시간 측정 메커니즘인 PoH(Proof of History)를 소개합니다.
PoH(Proof of History)란 무엇인가요?
PoH(Proof of History)는 Solana의 핵심 혁신입니다. SHA-256 순차 해싱을 사용하여 암호화 타임스탬프를 생성하며, 검증자들이 지속적인 통신 없이도 이벤트의 순서와 시간에 합의할 수 있게 합니다.
Solana 백서는 누가 언제 작성했나요?
Solana 백서는 전 Qualcomm 엔지니어인 Anatoly Yakovenko가 2017년 11월에 작성했습니다. 그는 분산 시스템과 통신 분야의 경험을 바탕으로 PoH 메커니즘을 설계했습니다.
Solana의 합의 메커니즘은 어떻게 작동하나요?
Solana는 순서 결정을 위한 PoH와 Tower BFT(PoH에 최적화된 Practical Byzantine Fault Tolerance 버전)를 결합합니다. 검증자들은 PoH 클록을 사용하여 통신 오버헤드를 줄이며, 1초 미만의 블록 타임을 가능하게 합니다.
Solana는 Ethereum과 어떻게 다른가요?
Solana는 병렬 트랜잭션 실행(Sealevel)을 갖춘 단일 레이어 아키텍처를 통해 처리량과 낮은 수수료를 우선시하는 반면, Ethereum은 스케일링을 위해 L2 롤업에 의존합니다. Solana는 1센트 미만의 수수료로 초당 수천 건의 트랜잭션을 처리합니다.
Solana의 공급 모델은 어떻게 되나요?
Solana는 초기 공급량 약 5억 SOL로 출시되었습니다. 연간 8%의 인플레이션으로 시작하여 매년 15%씩 감소하는 디스인플레이션 일정을 따르며, 장기적으로 1.5%에 도달합니다. 트랜잭션 수수료의 일부는 소각됩니다.
Solana의 주요 활용 사례는 무엇인가요?
Solana는 DeFi, NFT 마켓플레이스, 탈중앙화 물리 인프라(DePIN), 결제, 게임, 소비자 애플리케이션에 활용됩니다. 높은 속도와 낮은 비용 덕분에 고빈도 거래 및 소액 결제 사례에서 인기가 높습니다.
Solana가 해결하는 기술적 과제는 무엇인가요?
Solana는 검증자들이 타임스탬프를 통신할 필요성을 제거함으로써 블록체인 처리량 병목 현상을 해결합니다. PoH는 검증 가능한 시간 경과를 제공하여 단일 레이어에서 병렬 처리와 높은 트랜잭션 처리량을 가능하게 합니다.
Solana의 보안 모델은 어떻게 작동하나요?
Solana는 검증자들이 SOL을 스테이킹하고 지분 가중치에 따라 선택되는 위임형 PoS를 사용합니다. 보안은 경제적 인센티브에 기반하며, 검증자는 악의적인 행동 시 슬래싱될 수 있고 PoH 클록은 트랜잭션 순서 위조를 비용이 많이 들게 만듭니다.
현재 Solana 생태계의 상태는 어떤가요?
Solana는 활발한 DeFi 및 NFT 생태계를 갖춘 주요 스마트 컨트랙트 플랫폼으로 성장했습니다. 주요 프로젝트로는 Jupiter(DEX 애그리게이터), Marinade(리퀴드 스테이킹), Tensor(NFT 마켓플레이스), Helium(탈중앙화 무선)이 있습니다. Jump Crypto의 두 번째 검증자 클라이언트인 Firedancer가 네트워크를 더욱 탈중앙화합니다.