:KR: 우로보로스, 탈중앙화로의 여정

우로보로스, 탈중앙화로의 여정

원문: The Ouroboros path to decentralization

저자: Aggelos Kiayias 교수

번역: Jun-Sik Choi, Happy Cardano


분산화된 원장을 디자인하고 배포하는 것은 쉬운 일이 아닙니다. '원장’이라는 개념은 관련된 모든 참여자가 원장 변경과 같은 이벤트를 연속적으로 발생시켰을때 그 결과를 즉각 확인하는 동시에 모든 참여자가 하나의 일관된 원장을 볼수 있는 것을 요구합니다. 이러한 '일관성’과 ‘반응성’ 성질은 분산 원장의 기본적으로 부합해야 하는 조건입니다.

일관성과 반응성을 중앙화된 시스템에서 구현하는 방법은 이미 잘 연구되었으며 방법론 또한 직관적입니다. 하지만 이러한 중앙화된 원장은 정보를 제공하는 서버의 오류가 원장 전체의 실패로 이어지는 불안정성을 가지게 됩니다. 따라서 서버를 공격하는 행위가 원장이 지켜야 하는 위의 두 가지 성질을 모두 잃게 할 수 있습니다. 서버가 해킹당하지 않더라도, 서버 관리자의 이해관계가 일관성, 반응성을 지켜내야만 하는 방향과 일치하지 않는 경우 두 성질이 계속해서 지켜질지에 대한 불확실성이 증가합니다. 이러한 문제점을 해결하기 위해 탈중앙화라는 개념이 발전되었습니다.

대개, 탈중앙화라는 단어는 시스템의 각 참여자들이 각기 행동하면서도 그 행동의 총합이 원장의 성질과 부합하는 시스템 구조를 의미합니다. 시스템의 복잡성이 증대함에 따라 잘 디자인된 시스템은 참여자의 일부가 부적절한 행동을 하더라도 정상적으로 기능할 수 있습니다. 또한, 참여자의 규칙을 벗어난 행위의 비율이 상당히 커져서 원장 자체가 실패하더라도 시스템은 해당 손상 부분을 안고 다시 정상 상태로 돌아갈 수 있는 능력을 지니게 됩니다.

그렇다면 어떻게하면 이러한 강인한 탈중앙화 시스템을 디자인할 수 있을까요? 아시다시피 이 세상은 복잡한 곳이고 탈중앙성 자체는 실험을 통해 찾을 수 있는 어떤 정해진 답으로 이뤄낼 수 있는 성질의 것이 아닙니다. 적합한 탈중앙성을 이룰 수 있는 값의 경우의 수는 무한히 많을 수 있습니다. 이를 해결하기 위해서는 탈중앙화 시스템이 직면할 수 있는 위험요소를 체계적으로 아우를 수 있으면서도 일관성과 반응성을 지켜낼 수 있는 모델을 개발해야 합니다.

신뢰성 높은 탈중앙화된 시스템 개발에는 여러가지 레벨의 시스템 실패 요소와 공격 모델을 범주화하고 이에 대한 정형적으로 검증 가능한 대응 방법 구축이 중요합니다. 첫 번째 중요한 모델 클래스는 바로 강력한 비잔틴 모델들(Byzantine models)입니다. 이 세팅에서는 참여자 중 임의의 일부가 시스템의 규칙을 위배하더라도 시스템이 실패하지 않고 두가지 근본적 성질을 지켜내는 것을 보장합니다. 두 번째로 중요한 모델 클래스는 합리성 모델(models of rationality)입니다. 여기에서 참여자들은 자신의 이익을 최대화하려는 이상적인 행동 주체로 가정되며 이러한 합리적인 행동의 추구와 원장 규칙의 준수가 같은 방향으로 합치되도록 모델이 설계하는 것을 목적으로 삼습니다.

우로보로스는 비잔틴과 합리적 행동 모두의 맥락에서 분석된 탈중앙화 원장 프로토콜입니다. 아래 기술할 디자인 요소들의 조합으로 이 프로토콜이 독창적일 수 있게 됩니다.

  • 우로보로스는 스테이킹을 참여자들의 시스템에 대한 참여도(레버리지)를 확인할 수 있는 근본적 수단으로 사용합니다. 원장 유지 과정에서 어떠한 물리적 에너지도 낭비되지 않지만, 그럼에도 불구하고 기존의 지분 증명 기반 장부들의 근본적인 문제라고 생각되던 'costless simulation(역자 주: 지분 증명 장부는 블록 구성 자체에 비용이 발생하지 않으므로 공격자가 소모 비용 없이 쉽게 대체 체인을 구성해서 공격할 수 있는 문제)'이나 ‘nothing at stake(역자 주: 체인의 포크가 발생했을 때 체인을 선택하는 것에 대한 선택비용이 없어 검증자가 여러 포크를 다중 선택하고 이로 인해 포크 상태가 쉽게 해결되지 않는 문제)’ 공격에 대한 저항성을 가질 수 있습니다. 이러한 점은 우로보로스를 컨센서스 유지에 엄청난 에너지 소모를 요구하는 기존의 작업증명 프로토콜보다 확연히 매력적이게 만듭니다.

  • 우로보로스는 또한 많은 비율의 프로토콜 참여자가 스테이킹에 참여하지 않더라도 장부 유지에 대한 탄력성을 가질 수 있음을 보였습니다. 이러한 동적 가용성은 임의의, 예측 불도능한 참여도 레벨에서도 장부의 반응성을 보장해줍니다. 또한 활성 참여자의 50%정도만 프로토콜에 따르고 나머지 반은 프로토콜을 따르지 않는 상황에서도 우로보로스는 작동 할 수 있고, 일시적인 50% 이상의 프로토콜 위배 또한 감내 가능합니다. 그러므로 상대적으로 확실한 참여도 레벨을 보장해야만 하고 해당 참여도 예상이 실패할 시 작동이 멈출 수 있는 기존의 비잔티움 장애 허용 프로토콜(및 일부 수정된 형제 프로토콜들)보다 우로보로스는 확연히 강인하고 적응성이 강한 프로토콜이라고 볼 수 있습니다.

  • 우로보로스 프로토콜 실행에 함류하고 참여하는 과정 또한 탈중앙화된 방식으로 이뤄집니다. 이 과정은 최신 체크포인트나 공통 시각 정보와 같은 어떠한 공유되어야만 하는 리소스 없이 진행될 수 있습니다. 프로토콜 참여에는 단지 체인의 제네시스 블록에 대한 정보와 네트워크 접속 능력만이 요구됩니다. 이는 우로보로스를 다른 합의 프로토콜이 반드시 필요로 하며 훼손될 시 보안성 붕괴를 일으키는 신뢰성 가정들(trust assumptions)을 필요로 하지 않게 합니다.

  • 우로보로스는 보상 분배 매커니즘을 통해 참여자가 스테이킹 풀이라 불리우는 노드를 구성하는 것을 유도합니다. 이는 사용자들의 분포와 지분의 분포에 독립적으로 좋은 품질의 서비스를 제공하는데 도움을 줍니다. 이 방법으로 모든 지분 보유자들은 시스템의 작동에 직접 기여를 할 수 있으며 시스템의 강인성과 민주적 대표성을 확보하는 동시에 장부의 유지관리가 사용자 분포에 따라 효과적으로 이뤄질 수 있게 합니다. 동시에, 이 보상 매커니즘은 중앙화를 지양하도록 유도하는 수단으로 기능할 수 있습니다. 이로서 우로보로스는 장부 유지에 결국 소수의 집단만이 남게 되고 지분보유자에게 보상을 제공하지 않아 낮은 품질의 서비스를 제공하는 다른 합의 프로토콜과 비교했을때 근본적으로 더욱 포괄적이며 탈중앙화될 수 있습니다.

이러한 우로보로스의 디자인 요소들은 그저 프로토콜 사용자들의 관심사에 맞추어 이목을 끌기 위해 만들어 진것이 아니고, 동료 평가와 탑 티어 컨퍼런스, 사이버 보안 및 암호학계의 논문 편찬을 통해 작성된 세밀한 문서들에 의한 발전된 것입니다. 다른 어떠한 합의 프로토콜과 이렇게 상세하고 엄격한 과정을 통해 만들어지지 않았다고 말할 수 있습니다. 각각의 연구논문들은 우로보로스 모델의 각 특징점들에 대한 것이며, 프로토콜에 대한 분석과 구체적인 연구를 통해 도출된 결과를 담고 있습니다. 이러한 연구 논문들은 모두 대중에 공개되고 특허화되지 않았으며, 누구든 관련 전문가와 프로토콜의 기술적인 세부사항을 들여다보고 우리가 주장하는 성능, 보안성, 기능들에 대한 검증을 진행할 수 있습니다.

매우 포괄적이고 공정하며 탄력성있는 글로벌 금융 및 사회적 어플리케이션의 기반이 되는 플랫폼을 개발하는 것은 현 시대의 매우 커다란 도전과제임에 틀림없습니다. 우로보로스는 독창적인 특성을 지닌 프로토콜일 뿐만 아니라 근본적인 원리원칙에 기반한 디자인 방법론과 세심한 모델링, 그리고 철저한 분석의 모범 사례입니다. 우로보로스의 모듈화되고 적용성 높은 구조는 앞으로 추가적인 개선과 수정, 새로운 요소의 추가를 가능케하며 (예를들어, 확장성 기능과 영지 증명을 통한 프라이버시 기능 강화) 이러한 확장을 통해 복잡하게 변화하는 실세계에 맞추어 유연하게 진화하는 프로토콜이 될 수 있게 합니다.

더 알아보기

우로보로스 프로토콜의 탄생부터 최근 추가된 새로운 기능들에 대해 더욱 깊이 알아보고 싶으시다면 아래 링크를 참고하세요.

  1. 우로보로스 (클래식): 보안성을 확보한 첫 번째 지분 증명 블록체인 프로토콜.
  2. 우로보로스 프라오스: 프로토콜의 정형 주변 구조물에 대한 필요성 제거 및 적응성 강한 공격자에 대한 저항성 향상.
  3. 우로보로스 제네시스: 프로토콜의 최신 체크포인트에 대한 필요성 제거 및 프로토콜의 동적 합류 및 참여가 탈중화화된 방식으로 이뤄질 수 있는 것에 대한 증명
  4. 우로보로스 크로노스: 프로토콜의 공통 시각에 대한 의존성 제거
  5. 스테이킹 풀에 의한 보상 분배 매커니즘
  6. 프로토콜 계정 관리와 스테이킹풀의 참여 최대화
  7. 지분 증명 프로토콜에서의 거래 대역폭 최적화
  8. 장부 컴비네이터를 이용한 고속 안정화
  9. 우로보로스 크립시너스: 프라이버시 보존 지분 증명 프로토콜
  10. 카치나: 비공개 스마트 컨트랙트를 위한 통합적 보안 모델
  11. 하이드라: 높은 거래 대역폭과 낮은 지연시간, 노드 당 저장 공간 최소화를 위한 오프 체인 확장 구조