1-1. 블록체인 스택

2022. 9. 7. 00:13

스택은 위로 층층이 쌓아올리는 것이니까, 예컨데 비트코인도 인터넷이 없으면 존재가 불가능하다는 식으로 이해해도 되지 않을까 생각해요. 즉 높은 layer(층)에 있는 기술 스택은, 보다 낮은 layer의 기술 스택에 의존한다는 의미가 있어요. 다만 그 layer을 나누는 기준은 지금도 사람마다 다르고, 시대에 따라서도 다르다고 합니다. Tim Roughgarden의 강의를 따라가는 만큼, 제 블로그에서도 다음과 같이 구분하려고 합니다.

 

Blockchain Stack의 한 가지 모식도

 

 

  • layer 0는 인터넷입니다. 보통 인터넷의 존재를 당연하게 여기곤 하지만, network outage로 인한 지연이나 공격 등 완전할 수 없음(semi-reliable)을 유념해야 합니다.
  • layer 1는 블록체인 메인넷입니다. Consensus layer(분산된 여러 node를 동기화시키는 역할)와, Compute layer가 있습니다.
    • Consensus layer: 프로토콜을 작동시키는 full node를 운영한다고 해봅시다. 우리는 끊임없이 다른 노드에게 항상 동기화된 상태를 보여주고 증명해야 합니다.
    • Compute layer: 그러나 node에는 계산 능력도 필요합니다. 코인을 입출금하는 transaction을 생각해봅시다. node를 운영한다면, TX(트랜잭션)이 합당한지 - 즉, 송금자의 잔고가 충분한지에 대한 계산에 대한 책임을 져야하기 때문입니다.
  • layer 2는 확장성 솔루션입니다. processing power에 불만족스러울 때 가치있습니다. (예: 비트코인은 1초에 5~10회의 거래만 체결시키는 것이 불만족스러워서 라이트닝 네트워크 등의 솔루션이 제시됩니다)
  • Application Layer가 가장 마지막, 가장 high-level의 layer입니다. 예컨데 유니스왑 같은 서비스가 이 layer에 속합니다. 일반적인 웹앱이 프론트엔드와 백엔드로 구분되듯이, 여기서도 스마트콘트랙트와 프론트엔드가 구분됩니다.

 

강의는 Layer 1, 2, 3을 다룹니다.

  1. 60%는 layer 1: 고전적인 합의 프로토콜, 나카모토의 최장체인 합의 프로토콜, Sybil 공격 저항성(POW/POS), difficulty adjustment, selfish mining, BTC ETH 등에 대한 딥다이브 등이 있습니다. (UTXO, 머클트리 등)
  2. 20%는 layer 2: BTC의 확장성 솔루션 (payment channels, lightening network), ETH의 확장성 솔루션 (롤업 등) 등을 다룹니다.
  3. 남은 20%는 application layer를 다룰 예정입니다. 주 카테고리로는 DeFi (오라클, 스테이블 코인), dApp (대출, 예치, AMM 트레이딩)가 있습니다.
  4. 이후 MEV(minor extractable value)로 permissionless blockchain protocol의 현재 한계점 중 하나인 layer 2와 application layer 사이의 dependency 문제에 대해 이야기해볼 생각이고, on-chain governance인 DAO에 대해서도 다룰 수 있다고 합니다. (사실 아직 layer 1도 강의가 다 나오지도 않았습니다)

 

강의 영상과 제 블로그 포스트는 블록체인을 지불 수단이 아니라 새로운 컴퓨팅 패러다임(big programmable computer that lives up in the sky with no centralized owner)의 관점으로 해석할 것이고, digital money라는 관점(가치의 저장, 희소성, durability 등)으로 보지 않을 것이며, 암호화폐는 그저 기능 구현 과정에서 생기는 문제 극복에 필요한 도구로 쓰일 것입니다. (공급에 비해 수요가 몰리는 문제, 프로토콜의 정상적인 운영에 대한 동기부여 부족 문제 등) 마지막으로 특정 프로토콜이 아닌 프로토콜 전반에 걸친 원칙을 먼저 논의할 생각입니다. BTC, ETH에 대한 딥다이브에 앞서, liveness, consistency 등의 개념을 먼저 짚고 넘어갈 예정입니다.

BELATED ARTICLES

more