블록체인 트릴레마
트릴레마는 "블록체인에서 확장성(Scalability), 보안성(Security), 탈중앙성(Decentralization)중 하나는 희생해야 한다"는 문제
예를 들어, 비트코인은 탈중앙화되어있고, 안전하지만 초당 약 7개의 트랜잭션(TPS)만 처리할 수 있다. 반면, 하이퍼레져 패브릭같은 엔터프라이즈 블록체인은 안전하고 높은 트랜잭션을 처리할 수 있지만, 매우 제한된 수의 노드로 구성된 중앙 집중식 구조다.
오늘날 이러한 문제를 해결하기 위해 다양한 기업과 글로벌 커뮤니티에서 레이어1, 레이어2 솔루션을 연구하고 개발하고 있다.
트릴레마(Trilemma)는 무엇일까?
쉽게 말하자면 딜레마는 둘 사이에서 고민하는 것이라면, 트릴레마는 셋 사이에서 고민하는 것이다.
"선택해야 하는 길은 3가지가 되는데 극 어느 쪽을 선택해도 남은 두 가지 또는 한 가지의 문제를 악화시키는 상황"을 말한다.
블록체인의 확장성, 보안성, 탈중앙성
확장성:
- 높은 트랜잭션 처리량과 미래의 증가량을 잘 견딜 수 있는 것
- 더 많은 거래량을 수용할 수 있는 블록체인의 능력
보안성:
- 데이터나 프로그램이 보호되어 있고, 권한이 없는 사용자나 악의적인 사용자의 접근을 막는 것
- 블록체인에 저장된 데이터를 다른 공격으로부터 보호하거나 이중 지출에 대한 블록체인의 방어 기능
탈중앙성:
- 네트워크가 중앙집권화된 방식으로 운영이 되는 것이 아닌, 소규모 노드 간 자율적으로 운영되는 것
- 소수의 엔티티가 네트워크를 제어하지 않도록 하는 네트워크의 중복성
세 가지 요소 각각을 중심으로 한 네트워크의 장단점 비교
항목 | 확장성 중심 | 보안 중심 | 탈중앙화 중심 |
---|
장점 | - 네트워크가 많은 양의 트랜잭션을 지원 - 소셜 메시징 애플리케이션과 같이 보안이 주요 초점이 아닌 애플리케이션에서 유용 | - 기존 가치 이전보다 빠르고 저렴한 대규모 가치 이전이 가능 - 퍼블릭 블록체인의 보안은 네트워크 참여자에게서 나온다. 높은 보안은 복제하기 쉽지 않은 높은 네트워크 효과를 의미 | - 탈중앙화를 통해 사용자가 단일 엔티티를 신뢰하지 않고도 합의를 유지 - 분산화는 시스템의 견고성을 증가시키기 때문에 바람직함 네트워크를 검열에 저항하게 하여 누구나 네트워크를 사용할 수 있도록 하여 재산권을 향상하게 시킴 |
단점 | - 확장성은 보안을 희생해야 함 - 네트워크가 확장됨에 따라 합의 메커니즘도 확장해야 중앙 집중화를 희생할 수 있음 | - 더 많은 자원, 다시 말해 더 많은 투자가 필요 | 분산화는 지연을 초래하고 네트워크 속도를 늦춤 - 중복성을 도입하기 때문에 비용이 많이 들고 모든 애플리케이션에 바람직하지 않음 |
레이어 1, 레이어 2 솔루션
블록체인의 확장성을 개선하기 위한 솔루션
레이어 1 솔루션: 기존의 블록체인(레이어 1)의 규칙 또는 메커니즘을 직접적으로 개선하는 것
레이어 2 솔루션: 기존의 블록체인(레이어 1) 위에 새로운 블록체인(레이어 2)을 추가해 거래를 개선하는 것
세대와 체인 공개 유형에 따른 트릴레마
비트코인, 이더리움, 이오스의 트릴레마 사례
사례 | 설명 |
---|
비트코인 | - 높은 탈중앙화와 보안성은 확보, 확장성의 한계로 트릴레마 발생 - 탈중앙화와 보안에 초점을 맞춰 개발 되었으며 네트워크 확장에 따른 트랜잭션 속도에 대한 확장성 문제 발생 |
이더리움 | - 확장성 한계로 트릴레마 발생 (이더리움 플랫폼 위의 디앱상 이루어지는 거래를 1초에 20건 처리) - 확장성 한계 극복을 위해 이더리움 2.0 발표 - 작업증명 방식의 대안으로 지분증명과 샤딩 기술 활용 - 이더리움 2.0이 블록체인 트릴레마를 해결 할 수 있을지 관심 집중 |
이오스 | - 위임지분증명(DPoS) 합의 알고리즘을 통해 탈중앙화와 확장성 해결 - 위임지분증명 합의 알고리즘의 특성상 소수의 노드를 통해 합의가 이루어지기 때문에 탈중앙화 가치 저하 - 소수의 노드가 블록을 생각하기 때문에 보안성 저하 |
트릴레마 해소방안 연구
비트코인 캐시의 한계점
- 제한된 확장성:
기존 비트코인 구조를 크게 변경하지 않고, 블록의 크기를 늘렸다는 점에서 확장성의 효과는 제한적
- 자원의 중앙화:
주요 채굴농장이 블록 해시파워의 대부분을 차지하고 있음
라이트닝 네트워크
기존 비트코인의 확장성 문제(느린 처리 속도)를 해결하기 위한 레이어 2 솔루션
개별 거래를 별도의 채널(Off-Chain)에서 처리한 후 그 결과만 비트코인 블록체인에 기록하는 방식
오프체인 시스템 특성상 제3자 세력이 필요하기 때문에 신뢰성 측면에서 한계가 존재함
카르다노
우로보로스 지분증명(Ouroboros PoS)
- 지분 증명의 예상되는 공격들을 사전에 방지하여 안정성을 높임
알고랜드의 블록 생성 솔루션
- 순수지분증명(Pure Proof of Stake): 누구나 블록 생성에 참여할 수 있게하며 체인 포크(fork)를 방지
- 즉각적인 제시와 합의(Immediate Propose & Agree): 한 명이 아닌 전체가 블록을 선택하고 생성하며 이 과정은 매우 정교하고 빠름
- 진화하는 합의(Consensual Evolvability): 공정하고 즉각적인 합의 과정
알고랜드의 트릴레마 대안
임의성(Randomeness):
- 새 트랜잭션(새 블록)을 추가하는 작업을 수행하는 검증자에 초점을 맞춰서 진행
- 모든 토큰 보유자 중에서 검증자를 임의로 선택하여 검증 작업을 수행
- 다음 검증자가 누구일지 아무도 모른다는 사실을 통해 보안성 보장
트릴레마를 고려해야 하는 이유
Safety와 Liveness
- Safety: 노드 간 합의가 발생했다면, 어느 노드가 접근하든 그 값은 동일해야 함(잘못된 합의 X)
- Liveness: 노드는 네트워크 내에서 반드시 합의를 이루어내야 함
Liveness over Safety
- 잘못된 합의가 이루어질 수 있지만 어떻게든 합의는 한다.
예시) 블록체인 PoW: 51% 발생 가능성. Safety는 보장하지 않음
Safety over Liveness
- 잘못된 가능성이 있다면 블록을 만들지 않는다.
예시) 코스모스 텐더민트: 메시지가 시간 안에 도착하지 않으면 블록 생성 안 함
BFT
비잔티움 장애 허용(Byzantine Fault Tolerance)
- 분산 네트워크 환경에서 악의적인 노드(배신자)가 존재할 때 이를 어떻게 극복하는가 대한 해결 방안
PBFT
프랙티컬 비잔티움 장애 허용(Practical Byzantine Fault Tolerance)
- 기존의 BFT 합의 알고리즘이 동기식 네트워크에서만 합의가 가능했던 문제를 해결하여 비잔틴 노드가 있는 비동기 네트워크에서 합의 알고리즘
CFT vs. BFT
- CFT는 신뢰할 수 있는 노드만 모여있는 분산 시스템에서 사용 가능
- BFT는 신뢰할 수 없는 노드가 있는 곳에서도 사용 가능
합의 알고리즘의 주요 고려사항
- Finality Problem
- 51% Attack/BTF
- Transaction Cost