LayerZero 백서: 신뢰 없는 전 체인 상호 운용성 프로토콜

LayerZero
2022-04-06 16:44:57
수집
LayerZero는 모든 체인에서 직접 거래를 구현한 최초의 비신뢰 시스템으로, 거래가 체인 간에 자유롭게 흐를 수 있도록 하여 사용자에게 분산된 유동성을 통합할 기회를 제공하며, 동시에 개별 체인上的 애플리케이션을 최대한 활용합니다.

원문 제목: 《LayerZero: Trustless Omnichain Interoperability Protocol》

원문 저자: Ryan Zarick, Bryan Pellegrino, Caleb Banister

편집: 0xMeta

초록

블록체인의 광범위한 사용은 개발자에게 애플리케이션의 기능과 처리량 요구, 보안 및 비용 요구 사항에 따라 스마트 계약을 실행할 수 있는 다양한 플랫폼을 제공합니다. 그러나 이러한 자유의 결과는 심각한 분열입니다. 각 체인은 고립되어 있어 사용자가 유동성을 고립시키고, 벽으로 둘러싸인 생태계 간에 유동성과 상태를 이동할 수 있는 선택을 제한합니다.

이 문서는 신뢰가 필요 없는 최초의 전 체인 상호 운용성 프로토콜인 LayerZero를 소개합니다. LayerZero는 다양한 크로스 체인 애플리케이션을 구축할 수 있는 강력한 기본 통신 원시를 제공합니다. 이 새로운 원시를 사용하여 개발자는 신뢰할 수 있는 중개인이나 중개 거래에 의존하지 않고도 크로스 체인 DEX 또는 멀티 체인 수익 집합기와 같은 원활한 크로스 체인 애플리케이션을 구현할 수 있습니다.

간단히 말해, LayerZero는 모든 체인에서 직접 거래를 구현하는 최초의 신뢰가 필요 없는 시스템입니다. 거래가 체인 간에 자유롭게 흐를 수 있도록 하여 사용자에게 분산된 유동성을 통합할 수 있는 기회를 제공하며, 동시에 개별 체인에서의 애플리케이션을 최대한 활용합니다. LayerZero를 통해 우리는 미래의 전 체인 생태계의 기본 네트워크 구조를 제공합니다.

1. 서론

블록체인 개념의 핵심 세 가지 기둥은 탈중앙화, 투명성 및 불변성입니다. 블록체인을 제어하는 단일 실체가 없으며, 블록체인에서의 행동은 검증 가능하고 되돌릴 수 없습니다. 이러한 기둥은 실체가 다른 실체를 신뢰하지 않고도 행동할 수 있는 기반을 만듭니다. 이러한 신뢰 보장은 암호화폐가 법정 화폐보다 더 매력적인 이유 중 하나입니다.

image

그림 1: LayerZero는 크로스 체인 거래를 허용합니다.

모든 사용자와 모든 애플리케이션이 통합된 블록체인에서 공존한다면, 이 문서는 무의미할 것입니다. (그림 1: LayerZero는 크로스 체인 거래를 허용합니다.) 그러나 블록체인의 유용성은 다양한 애플리케이션의 급증으로 이어졌으며, 이는 독특한 복잡성과 요구를 가지고 있습니다. 다양한 기능에 대한 요구는 전문 체인의 성장을 저해했습니다.

이 체인들 각각은 자체 생태계 내에서 애플리케이션의 엄청난 성장을 촉진했지만, 이러한 생태계 간의 고립은 채택의 주요 제한 요소가 되었습니다. 사용자와 개발자는 서로 다른 체인 간에 시간, 자원 및 유동성을 분배해야 했습니다. 작성 시점에서 109개에 달하는 순수한 수량의 블록체인(이 문서 작성 시점[1] 기준)의 자연스러운 결과는 위의 세 가지 기둥을 확장하여 여러 체인 간의 상호 작용을 포함해야 한다는 것입니다. 체인 간의 상호 작용 요구의 한 예는 토큰의 이전이며, 이 섹션에서 후에 논의할 것입니다.

블록체인 용어에서 작업 단위는 거래이며, 불변하고 되돌릴 수 없습니다. 거래는 블록으로 정리되어 블록체인 시스템의 안전한 기반을 형성합니다. 그러나 거래는 항상 단일 체인 개념입니다. 아래에서 설명할 바와 같이, 크로스 체인 상호 작용은 전통적으로 정상적인 블록체인 암호 시스템 외부의 제3자 메커니즘을 필요로 합니다. 반대로, 이 문서에서는 본지에서 본토 크로스 체인 거래를 가능하게 하는 최초의 메시지 프로토콜인 LayerZero를 설명합니다.

LayerZero가 제공하는 강력한 통신 원시를 설명하기 위해, 토큰이 한 체인에서 다른 체인으로 이전되는 예를 살펴보겠습니다. 현재 두 체인 간의 토큰을 변환하려면 사용자가 중앙 집중식 거래소 또는 크로스 체인 탈중앙화 거래소(DEX)(크로스 체인 브리지라고도 함)를 사용해야 하며, 두 경우 모두 타협이 필요합니다. 중앙 집중식 거래의 경우, 예를 들어 Binance.com[3]에서 사용자는 입금 및 자금 인출을 추적하는 거래소를 신뢰해야 합니다. 이러한 신뢰 관계는 블록체인 합의의 근본적인 신뢰 제거와 반대되며, 체인 상의 자동화 시스템의 안전성을 결여합니다.

DEX를 사용할 경우, 예를 들어 AnySwap[2] 또는 THOR-Chain[23]을 통해 체인에서 전송하여 신뢰 문제를 완화하지만, 기존 DEX 구현은 사용자의 토큰을 프로토콜 특정 토큰으로 변환하는 것을 포함하며, 이는 중간 합의 계층을 통해 거래 합의를 달성합니다. 이 중간 합의 계층은 일반적으로 안전한 방식으로 구현되지만, 실제로는 사용자가 토큰 전송을 촉진하기 위해 사이드 체인을 신뢰해야 합니다. 우리가 이 문서에서 보여주는 바와 같이, 이러한 추가 비용은 불필요합니다. 사용자 수요가 많음에도 불구하고, 효율적이고 직접적이면서도 블록체인을 사용하는 가장 핵심적인 이유인 신뢰 제거를 유지하는 솔루션은 없습니다. 한 걸음 물러서서, LayerZero의 직접적인 크로스 체인 거래는 개발자에게 이러한 거래를 구축할 수 있는 도구를 제공합니다.

LayerZero와 위에서 설명한 교환 변경 작업은 구현 스택의 두 가지 다른 수준에서 작동한다는 점에 유의해야 합니다. LayerZero는 다양한 전 체인 애플리케이션을 지원하는 통신 원시이며, 교환은 LayerZero 위에서 재구현하여 혜택을 받을 수 있는 애플리케이션의 한 예입니다. 제2부에서는 블록체인 기술의 전망을 개요하고 교환의 예를 더 탐구합니다.

LayerZero의 능력과 블록체인 생태계 내에서의 역할을 올바르게 설명하기 위해, 우리는 먼저 공식적인 크로스 체인 거래에 필요한 기본 통신 원시를 제시합니다. 이를 우리는 유효 전달(valid delivery)이라고 부릅니다(섹션 3). 그런 다음, LayerZero가 이 원시를 신뢰가 필요 없는 방식으로 제공하여 블록체인의 안전한 약속을 유지하는 방법을 설명합니다. LayerZero는 1층과 2층 체인 간의 직접 메시징을 지원하는 최초의 신뢰가 필요 없는 전 체인 상호 운용 계층입니다(그림 1).

image

그림 2: LayerZero는 두 개의 독립적인 실체(오라클과 중계자)가 거래의 유효성을 확인하도록 요구하여 크로스 체인 통신의 유효성을 보장합니다.

체인 A와 체인 B 간의 크로스 체인 거래는 A에서의 거래 tA, A와 B 간의 통신 프로토콜 및 메시지 m으로 구성됩니다. tA가 제출되고 유효할 때만 유효 전달은 m이 전달되었다고 간주합니다. LayerZero를 지원하는 핵심 아이디어는 두 개의 독립적인 실체가 거래의 유효성을 확인하면(이 경우 tA), 체인 B는 tA가 유효하다고 확신할 수 있다는 것입니다. 그림 2는 이를 높은 수준에서 설명합니다.

두 실체가 공모하지 않는다고 가정할 때, (1) 한 실체가 체인 A에서 tA를 포함하는 블록의 블록 헤더를 생성할 수 있고, (2) 다른 실체가 독립적으로 해당 블록에서 tA의 증명(거래 증명)을 생성할 수 있으며, (3) 블록 헤더와 거래 증명이 실제로 일치한다면, 통신 프로토콜은 tA가 체인 A에 안정적으로 제출되었다는 전제 하에 m을 체인 B의 클라이언트에게 전달할 수 있습니다. 제4부에서 설명하는 LayerZero 통신 프로토콜은 수신 체인에서의 거래가 발신 체인에서의 유효하고 제출된 거래와 쌍을 이루도록 보장합니다. 우리는 블록 헤더를 제공하는 오라클[7]과 위의 거래와 관련된 증명을 제공하는 중계자(Relayer)라는 두 개의 독립적인 실체를 조합하여 이를 실현합니다.

LayerZero의 인터페이스는 LayerZero 엔드포인트라고 부르는 경량 체인 클라이언트입니다. 각 (지원되는) 체인에는 LayerZero 엔드포인트가 존재하며, LayerZero 엔드포인트를 가진 체인은 다른 LayerZero 엔드포인트를 가진 체인 간에 크로스 체인 거래를 수행할 수 있습니다. 본질적으로, 이는 완전히 연결된 네트워크를 생성하며, 각 노드는 다른 노드와 직접 연결될 수 있습니다. 소량의 샘플 코드로, 모든 블록체인이 지원됩니다. 제5부에서는 이 과정을 사례 연구를 통해 보여주며, 이더리움 블록체인에서 LayerZero를 구현하는 방법을 연구합니다.

네트워크의 다른 체인과 직접 크로스 체인 거래를 수행할 수 있는 능력은 이전에는 불가능했던 대규모 애플리케이션의 기회를 제공합니다. 예를 들어 크로스 체인 탈중앙화 거래소, 멀티 체인 수익 집합기 및 크로스 체인 대출 등이 있습니다. 제6절에서는 이러한 애플리케이션 몇 가지를 자세히 살펴봅니다. LayerZero를 통해 사용자는 체인 간에 자유롭게 유동성을 이동할 수 있으며, 단일 유동성 풀이 서로 다른 체인과 생태계의 여러 탈중앙화(DeFi) 애플리케이션에 참여할 수 있도록 하여, 제3자 시스템이나 중간 토큰을 통해서가 아니라 직접적으로 가능합니다.

2. 배경

LayerZero의 기초를 다지기 위해, 우리는 관련 기존 시스템을 검토하여 왜 그것들이 새로운 애플리케이션의 요구를 충족하지 못하는지를 설명합니다. 논의는 LayerZero 위에 크로스 체인 거래소를 구축하는 이점을 깊이 설명합니다.

2.1 관련 작업

이 섹션은 크로스 체인 상호 작용 공간에서 중요한 참여자들에 대한 이해를 구축하고, 그들이 신뢰가 필요 없는 유효 전달의 이상에 도달하지 못하는 이유와 LayerZero가 어떻게 그 격차를 좁히는지를 설명합니다.

이더리움(Ethereum)[8]은 스마트 계약을 통해 탈중앙화된 금융 애플리케이션을 구축하는 데 가장 인기 있는 플랫폼입니다. 이더리움은 튜링 완전 프로그래밍 언어를 사용하여 기본 블록체인을 확장하며, 이 언어는 탈중앙화 애플리케이션 라이브러리가 개발자 친화적인 요약을 통해 기본 체인의 강력한 보안 속성을 활용할 수 있도록 합니다. 그러나 기본 블록체인의 낮은 거래 속도(초당 약 15-45 거래)는 심각한 확장성 병목 현상으로 입증되어, 이더리움 블록체인에서 직접 실행되는 애플리케이션의 인기를 제한하고 있습니다.

프로그래밍 모델과 인기도로 인해, 많은 크로스 체인 통신 기술은 제3자 체인과 이더리움 간의 인터페이스를 중심으로 형성되었습니다. LayerZero는 중개인 없이 이더리움으로 직접 상태를 전송하고 이더리움에서 상태를 전송하는 능력을 제공하여, 사용자와 애플리케이션이 이더리움 체인의 안정성과 신뢰성을 활용할 수 있도록 하며, 아래에서 설명하는 솔루션의 비용과 병목 현상에 직면하지 않도록 합니다.

이더리움 2.0(Ethereum 2.0)[22]은 이더리움의 확장성, 보안 및 지속 가능성을 향상시키기 위한 일련의 업그레이드입니다. 이더리움 2.0은 모든 거래를 과부하된 이더리움 메인 체인에 집중시키는 대신, 분산된 부하를 위한 샤딩 체인을 도입합니다. 작업 증명(PoW)에서 지분 증명(PoS)으로의 전환은 51% 공격의 가능성을 제거하고 각 거래의 에너지를 줄입니다. 이러한 발전은 대체로 LayerZero의 발전과 일치하며, 이더리움의 인기를 촉진하고 편리하고 저렴한 크로스 체인 통신에 대한 수요를 창출할 것입니다.

폴리곤(Polygon)[17]은 Matic 네트워크의 전신으로, 이더리움의 처리량 및 주권 문제를 해결하는 2층 네트워크입니다. 블록체인 개발에서 가장 인기 있는 플랫폼이지만, 이더리움은 낮은 처리량으로 인해[10] 특정 애플리케이션에 적합하지 않습니다. 폴리곤은 애플리케이션 특정의 이더리움 호환 사이드 체인을 제공하여 독립 체인의 확장성과 독립성을 이더리움의 커뮤니티 및 보안성과 결합합니다. 전문적이거나 처리량 집약적인 애플리케이션은 사이드 체인에서 실행되며, 정기적으로 주요 이더리움 체인으로 통합됩니다. 반면, LayerZero는 직접적인 크로스 체인 통신을 구현할 수 있는 기본 플랫폼으로, 이더리움 메인 체인으로의 전송을 촉진하는 데 복잡한 폴리곤 프로토콜이 필요하지 않습니다.

폴카닷(Polkadot)[26]은 개방형 크로스 체인 생태계의 잠재적인 초기 예입니다. 폴카닷에서는 여러 도메인 특정 평행 체인("parachains")이 공통 리레이트 체인을 통해 연결되어, 토큰과 데이터가 그들 사이에서 흐를 수 있게 합니다. 그러나 크로스 체인 통신은 항상 이 리레이트 체인을 통과하여 추가 비용을 발생시킵니다. LayerZero는 폴카닷과 동일한 기본 통신 플랫폼을 제공하지만, 체인 상의 중개인을 필요로 하는 추가 거래가 없습니다.

THORChain[23]은 쌍 유동성 풀을 사용하여 제3자 체인 간에 토큰을 전송하는 DEX입니다. 각 유동성 풀은 특정 제3자 통화를 RUNE이라는 THORChain의 로컬 토큰과 결합하여, 후자는 공공 교환 매체 역할을 합니다. 이러한 공통 매체가 없으면 모든 쌍 통화는 유동성 풀이 필요하며, 이는 통화 수의 제곱에 따라 유동성 풀의 수가 증가함을 의미합니다. 불행히도, RUNE이 이 확장성 문제를 해결했지만, 거래 과정에서의 긴 오버헤드는 간단한 작업을 상당히 복잡하게 만듭니다. 이는 THORChain 거래 알고리즘의 복잡성에서 분명히 나타납니다. LayerZero는 THORChain固有의 확장성 병목 현상, 번거로운 중간 통화 또는 중량급 프로토콜 없이 직접적인 크로스 체인 통신을 제공합니다.

AnySwap[2]은 THORChain과 유사한 DEX로, 간단한 쌍 토큰 교환을 목표로 합니다. AnySwap은 Fusion 분산 제어 권한 관리에 기반한 중간 토큰인 ANY에 의존합니다. THORChain과 마찬가지로 ANY 중간 토큰을 사용하면 불필요한 오버헤드, 지연 및 추가 전송 비용이 발생합니다.

코스모스(Cosmos)[5]는 지원되는 체인 간에 임의의 메시지를 전송할 수 있는 블록체인 네트워크 기술입니다. 코스모스는 Tendermint BFT[21] 위에 구축된 블록 크로스 체인 통신(IBC[14]) 프로토콜을 포함하여, 코스모스 허브 위에 구축된 체인 간의 메시징을 촉진합니다. 코스모스는 LayerZero와 두 가지 주요 측면에서 다릅니다: (1) IBC는 완전한 체인 상 경량 노드를 실행하며, (2) IBC는 빠른 종결 체인 간의 직접 통신만 제공합니다[24].

IBC의 이러한 한계와 중간 체인을 사용하여 합의를 촉진하는 것은 AnySwap, THORChain 또는 Polkadot과 유사하게 만들지만, LayerZero와 같은 범용 통신 계층과는 다릅니다. 코스모스는 AnySwap 또는 THORChain과 유사한 속성을 가진 DEX인 중력 브리지를 제공합니다[12]. 코스모스와 IBC와 비교하여, LayerZero는 신뢰가 필요 없는 전 체인 메시징을 제공하며, 이더리움 및 비트코인과 같은 확률적 종결성을 제공하는 체인에서 실행될 수 있도록 확장 가능합니다.

image

그림 3: LayerZero는 크로스 체인 애플리케이션의 구성 요소입니다. 이 그래픽은 중앙 집중식 거래소, 분산식 거래소 및 LayerZero를 기본 통신 원시로 사용하는 크로스 체인 브리지 간의 아키텍처 차이를 보여줍니다.

체인링크(Chainlink)[7,4]는 분산 오라클 네트워크(DONs)를 구축하고 연결하는 프레임워크입니다. 스마트 계약은 변조 방지 특성을 가지고 있지만, 그 체인 상의 특성은 계약 실행에 필수적인 오프 체인 데이터에 대한 접근을 방해합니다. 예를 들어 주식 가격, IoT 장치 측정 및 안전한 오프 체인 계산의 출력 등이 있습니다. DON은 스마트 계약의 변조 방지 속성을 계약이 의존하는 데이터 소스 및 외부 리소스에 확장하며, 어떤 중앙 실체도 신뢰할 필요가 없습니다. DON 내에서 사용자의 스마트 계약은 Chainlink 인터페이스 스마트 계약에 체인 상 요청을 보내며, 해당 계약은 여러 독립적인 오라클 노드에 이벤트를 전송합니다.

각 오라클 노드는 요청된 정보를 얻기 위해 여러 데이터 소스를 쿼리하고, 오류 또는 악의적인 데이터 소스를 필터링하기 위해 데이터를 집계하며, 데이터에 대해 선택적 신뢰 최소화 계산을 수행합니다. 오라클 노드는 Chainlink 인터페이스 스마트 계약에 응답하며, 해당 스마트 계약은 오류 또는 악의적인 오라클을 필터링하기 위해 두 번째 집계를 수행합니다. 이러한 이중 필터링은 최종 데이터에 대한 신뢰를 보장하며, 어떤 개별 오라클이나 데이터 소스를 신뢰할 필요가 없습니다. 따라서 Chainlink는 강력한 정보 검색 네트워크와 안전한 오프 체인 계산 솔루션을 제공하며, 이미 업계에서 널리 사용되고 있습니다. LayerZero 프로토콜은 Chainlink DON 프레임워크를 활용하여 서로 다른 체인 간의 신뢰가 필요 없는 메시징을 보장하는 능력을 얻습니다.

2.2 LayerZero의 실제 적용

개발자는 LayerZero를 사용하여 복잡한 크로스 체인 애플리케이션을 구축할 수 있으며, 신뢰를 희생하거나 복잡한 중간 체인/스마트 계약을 도입할 필요가 없습니다. 그림 3은 LayerZero를 사용하여 거래소를 구축할 때의 기능을 설명합니다.

왼쪽 그림과 같은 중앙 집중식 거래소는 사용자가 중앙 신뢰할 수 있는 제3자에게 토큰을 예치하도록 요구하며, 이후 오프 체인에서 예금을 추적하고 사용자의 요청에 따라 다른 체인에서 코인을 부여합니다. 이러한 권위에 대한 신뢰는 블록체인을 사용하는 본래의 목적과 반대되며, 이는 분산 거래의 출현을 초래했습니다.

중앙 그림은 전형적인 분산식 교환이 어떻게 작동하는지를 높은 수준에서 보여줍니다. 즉, 스마트 계약이 관리하는 합의 프로토콜을 사용하여 B 체인에서 코인의 자동 발행을 촉진함으로써 DEX는 중앙 집중식 신뢰할 수 있는 오프 체인 중개인의 필요성을 극복할 수 있습니다.

그러나 주요 제한 사항은 DEX가 중간 토큰과 중간 체인을 포함하며, B 체인에서 중간 토큰 또는 포장된 토큰만 발행하고 사용자가 원하는 실제 토큰이 아니라는 것입니다. 그런 다음 사용자는 추가 거래에서 중간 토큰(예: RUNE) 또는 포장된 토큰(예: ANY)을 원하는 토큰으로 교환해야 합니다. 이 중간/포장 토큰, 두 번째 거래 및 중간 체인은 이상적인 단일 원활한 거래에 대해 불필요한 오버헤드입니다.

그림 3의 오른쪽은 LayerZero 위에 구축된 거래소의 모습을 보여줍니다. 체인 A는 단일 크로스 체인 거래를 시작하여 체인 B에서 로컬 거래를 촉진하고, 체인 B의 애플리케이션에 사용자에게 안전하게 토큰을 부여할 수 있음을 알립니다. 이 애플리케이션에서 LayerZero는 중간 토큰 없이 깨끗하고 최소한의 단일 거래 교환을 구현합니다. 실제 교환 프로토콜은 크로스 체인 거래 양쪽의 스마트 계약이 처리하며, LayerZero는 두 계약 간에 메시지를 전달합니다. 이는 큰 유연성을 제공하며, 엔드 투 엔드 원칙[18]을 따릅니다. 대부분의 고급 교환 논리는 출발 체인과 목적 체인에 있는 스마트 계약에서 처리됩니다.

3. 유효 전달

이 섹션에서는 신뢰가 필요 없는 크로스 체인 통신의 기본 특성을 설명합니다. 서로 다른 체인에서 거래를 검증하는 문제를 공식적으로 설명하기 위해, 우리는 유효 전달의 개념을 정의합니다. 유효 전달은 다음 보장을 제공함으로써 크로스 체인 토큰 전달을 실현하는 통신 원시입니다:

  1. 네트워크를 통해 전송된 각 메시지 m은 발신 체인에서의 거래 t와 결합되어 있습니다.

  2. 관련 거래 t가 유효하고 발신 체인에 제출되었을 때만 메시지 m이 수신자에게 전달됩니다.

중앙 집중식 교환기는 유효 전달을 보장합니다. 고객과 거래소 간의 프로토콜은 고객이 자신의 토큰을 한 체인에서 거래소로 이전하고, 거래소가 토큰을 받은 후 잔액(비암호화폐)을 발행할 것이라는 것입니다. 이 비암호화폐 잔액은 이후 사용 가능한 모든 체인에서 인출될 수 있으며, 이는 각 지원 체인에서 거래소가 광범위한 유동성 풀을 유지하기 때문에 가능합니다. 거래소는 거래에서 중개자의 역할을 하며, 사용자는 거래를 유지할 수 있다고 믿어야 합니다. 그러나 악의적이거나 파괴적인 교환은 클라이언트로부터 토큰을 얻고 잔액을 발행한 후, 다른 체인에서 잔액을 인출하는 것을 거부하여 실제로 사용자의 토큰을 훔칠 수 있습니다.

사용자가 암호화폐 거래소를 신뢰할 의향이 있더라도, 최근 몇 년 동안 많은 성공적인 해킹 공격이나 암호화폐 거래소에 대한 파괴 시도가 발생했습니다[15]. 따라서 사용자가 신뢰할 수 있는 중개인이 필요 없는 솔루션을 제공하는 것이 더 좋습니다. 더 높은 수준에서, 암호화폐의 핵심 작업 중 하나는 은행과 같은 중앙 실체와 독립적이기 때문에, 중앙 거래소에 의존하는 것은 그들의 목적에 반합니다.

중앙 집중식 거래소를 사용하는 또 다른 선택은 THORChain[23] 또는 AnySwap[2]와 같은 탈중앙화 거래소입니다. 모든 기존 DEX는 중개 토큰을 사용합니다. 예를 들어 THORChain의 RUNE, AnySwap의 ANY은 거래 t로 사용됩니다. 이러한 중개 토큰은 각 DEX의 고유한 프로토콜에 의해 제어되므로, DEX는 유효 전달을 보장할 수 있습니다. 왜냐하면 악의적인 사용자가 중개 토큰을 위조할 수 없기 때문입니다.

기존 DEX 솔루션은 두 개의 중간 거래를 포함하므로 이상적이지 않습니다. 하나는 발신자의 토큰을 중개 토큰으로 변환하는 것이고, 다른 하나는 중개 토큰을 수신 체인에서 필요한 "실제" 토큰으로 변환하는 것입니다. 그 외에도 사용자는 중간 합의 계층을 완전히 신뢰해야 하며, 이 계층은 출발 체인에서의 거래를 확인하고 목적 체인에서 토큰 생성을 전달합니다. 기존의 교환은 크로스 체인 토큰 전송을 실현할 수 있지만, 그 대가는 불필요한 복잡성과 비용입니다. 이러한 접근 방식의 단점은 명백합니다. 크로스 체인 애플리케이션이 널리 채택되지 않았기 때문입니다. 크로스 체인 거래 문제의 이상적인 해결책은 신뢰할 수 있는 중개 실체 없이 단일 크로스 체인 교환 거래를 사용하는 것입니다. 즉, 신뢰가 필요 없는 유효 전달입니다.

우리의 작업에서는 임의의 사용자 데이터에 대한 신뢰가 필요 없는 유효 전달을 제공하는 범용 메시징 프로토콜을 구현했습니다. 분산식 교환 또는 기타 DeFi 애플리케이션은 크로스 체인 거래를 실현하기 위해 우리의 메시징 원시를 사용할 것입니다. 기본 계층 메시징 프로토콜이 제공하는 유연성은 고급 애플리케이션이 이전에는 불가능했던 광범위한 기능을 실현할 수 있게 합니다.

4. 설계

LayerZero의 핵심은 신뢰가 필요 없는 유효 전달을 제공하는 통신 프로토콜입니다. 우리의 프로토콜은 제4.1절에서 소개하는 일련의 구성 요소를 기반으로 구축되었습니다. 제4.2절에서는 전달 프로토콜의 통신 흐름을 논의하고, 제4.3절에서는 LayerZero가 신뢰할 수 있는 중개 서비스 없이 유효 전달을 구현할 수 있는 방법을 설명하며, 제4.4절에서는 저비용 스마트 계약 기반의 경량 노드 클라이언트 설계를 소개합니다.

4.1 LayerZero의 구성 요소

LayerZero 엔드포인트는 LayerZero의 사용자 인터페이스입니다. LayerZero 네트워크의 각 체인에는 메시지를 보내기 위해 LayerZero 프로토콜 백엔드를 사용할 수 있도록 하는 일련의 체인 상 스마트 계약으로 구현된 LayerZero 엔드포인트가 있습니다. 엔드포인트의 목적은 사용자가 LayerZero 프로토콜을 통해 메시지를 보내고 유효 전달을 보장할 수 있도록 하는 것입니다.

LayerZero 엔드포인트는 네 가지 모듈로 구성됩니다: Communicator(통신기), Validator(검증기), Network(네트워크) 및 Libraries(라이브러리). Communicator, Validator 및 Network 모듈은 엔드포인트의 핵심 기능을 구성하며(그림 4), LayerZero가 지원하는 각 새로운 체인은 추가 라이브러리로 추가됩니다. 이 설계는 세 가지 핵심 모듈을 수정하지 않고도 새로운 체인에 대한 지원을 추가할 수 있게 합니다. 우리는 제4.4절에서 각 모듈의 기능을 설명합니다.

오라클은 다른 LayerZero 구성 요소와 독립적인 메커니즘을 제공하는 제3자 서비스로, 한 체인에서 블록 헤더를 읽고 다른 체인으로 전송합니다. 이론적으로, 이 오라클은 이러한 메커니즘을 제공하는 어떤 제3자 서비스도 될 수 있지만, 실제로 우리는 현재 탈중앙화 오라클 네트워크의 업계 리더인 Chainlink[7,4]를 사용하고자 합니다.

image

그림 4: 단일 LayerZero 크로스 체인 거래에서의 통신 흐름.

중계자(Relayer)는 오프 체인 서비스로, 오라클과 유사한 기능을 하지만 블록 헤더를 가져오는 것이 아니라 특정 거래의 증명을 가져옵니다.

유효 전달을 보장하기 위해, LayerZero 프로토콜을 사용하여 전송되는 모든 메시지에 대해 오라클과 중계자가 서로 독립적이어야 한다는 유일한 요구 사항이 있습니다. 프로토콜 자체는 특정 중계자 구현을 요구하지 않으며, 이론적으로 LayerZero의 사용자는 자신의 중계자 서비스를 구현할 수도 있습니다. 이러한 설계는 사용자가 중계자가 오라클과 공모하지 않도록 보장하며, 이러한 독립성은 제4.3절에서 보여주는 신뢰가 필요 없는 검증 전달을 구현할 수 있게 합니다. 실제로 LayerZero는 중계 서비스를 제공하며, 오라클은 Chainlink의 탈중앙화 오라클 네트워크와 관련된 합의 메커니즘을 처리합니다.

4.2 LayerZero 프로토콜

그림 4는 단일 LayerZero 메시지의 유효 전달에 관련된 단계를 설명합니다. 그림의 각 원으로 둘러싸인 숫자는 프로토콜의 한 단계를 나타내며, 이 섹션의 단락과 일치합니다. 이 섹션에서는 체인 A(체인 A)의 사용자 애플리케이션이 LayerZero를 통해 체인 B(체인 B)의 사용자 애플리케이션에 단일 메시지를 보내는 예를 소개합니다. 제5절에서는 두 개의 이더리움 가상 머신 간에 메시지를 전송하는 경우 다양한 구성 요소와 프로토콜 단계를 구현하는 방법을 설명합니다.

단계 1: 체인 A(App A)의 사용자 애플리케이션은 거래 T의 일부로 일련의 작업을 수행할 수 있습니다. 우리는 거래 식별자 t로 거래 T를 고유하게 식별하며, 이 식별자의 형식은 체인 A의 유형에 따라 달라질 수 있습니다. 거래 T에 포함된 한 단계는 LayerZero를 통해 메시지를 전송하고 T를 조건으로 유효 전달을 수행하는 것입니다. 설명을 위해, 일반성을 잃지 않기 위해, 우리는 이 가상의 애플리케이션 A(App A)가 우리의 참조 중계자를 사용하고 있다고 가정합니다. App A는 LayerZero Communicator에 다음 정보를 포함하는 요청을 보냅니다:

t: T의 고유 거래 식별자.

dst: 체인 B의 스마트 계약을 가리키는 전역 식별자.

payload(유효 하중): App A가 App B에 보내고자 하는 데이터.

relayer_args(중계자 인수): App A가 중계자를 참조하고자 할 경우 지불 정보를 설명하는 인수.

단계 2: Communicator는 dst와 payload를 포함하는 LayerZero 패킷을 구성하며, 이를 Packet(dst, payload)라고 부르며, t와 relayer_args와 함께 Validator에 전송합니다.

단계 3: Validator는 t와 dst를 Network에 전송합니다. 이 단계는 Network에 체인 A에서 현재 블록의 블록 헤더를 체인 B로 전송해야 함을 알립니다.

단계 4: Validator는 Packet(dst, payload), t 및 relayer_args를 Relayer에 전달하여, T의 거래 증명이 미리 가져와져서 최종적으로 체인 B에 전송되어야 함을 알립니다. 이는 단계 3과 동시에 발생합니다.

단계 5: Network는 오라클에 현재 거래의 dst와 블록 ID(curblkid)를 전송합니다. 이렇게 하면 오라클이 체인 A에서 현재 블록의 블록 헤더를 가져와서 체인 B로 전송하는 것을 수정할 필요가 없습니다. 동일한 블록에서 여러 LayerZero 거래가 발생하는 경우, 단계 5는 한 번만 실행됩니다.

단계 6: 오라클은 체인 A에서 블록 헤더(blk_hdr)를 읽습니다.

단계 7: 중계자 Relayer는 체인 A에서 거래 T와 관련된 거래 증명(proof(t))을 읽고, 오프 체인을 방지하기 위해 저장합니다. 단계 6과 단계 7은 서로 비동기적으로 발생합니다.

단계 8: 오라클은 blkhdr에 해당하는 블록이 체인 A에 안정적으로 제출되었음을 확인한 후, blkhdr을 체인 B의 Network에 전송합니다. 이러한 상황이 발생하는 시점을 결정하는 메커니즘은 체인마다 다르지만, 일반적으로 일정 수의 블록 확인을 기다려야 합니다.

단계 9: 네트워크는 블록 해시 값을 blkhdrhash로 지정하여 Validator에 전송합니다.

단계 10: Validator는 blkhdrhash 값을 중계자 Relayer에 전달합니다.

단계 11: blkhdrhash를 수신한 후, Relayer는 현재 블록과 일치하는 Packet(dst, payload), t, proof(t) 튜플의 목록을 전송합니다. 여러 사용자가 동시에 동일한 엔드포인트 간에 메시지를 전송하는 경우, 동일한 블록 내에서 여러 패킷과 관련된 거래 증명이 있을 수 있습니다.

단계 12: Validator는 수신된 거래 증명을 Network에 저장된 블록 헤더와 함께 사용하여 관련 거래 t가 유효하고 제출되었는지 검증합니다. 블록 헤더와 거래 증명이 일치하지 않으면 메시지는 폐기됩니다. 일치하면 Packet(dst, payload)가 Communicator에 전송됩니다.

단계 13: Communicator는 Packet(dst, payload)를 App B에 전송합니다.

4.3 신뢰가 필요 없는 유효 전달 구현

신뢰 제거: LayerZero 설계의 핵심 아이디어는 사용자가 LayerZero의 구성 요소를 신뢰할 필요가 없다는 것입니다. 신뢰가 필요하다는 강력한 조건 대신, 우리는 오라클과 중계자 간의 약한 독립성 조건만 필요합니다. 이러한 독립성은 신뢰 요구 사항 대신 LayerZero가 효율적이고 경량화될 수 있는 한 측면입니다. 오라클과 중계자 간에 악의적인 공모가 없다면, LayerZero는 유효 전달을 보장할 수 있습니다.

유효 전달: 제4.2절에서 설명한 LayerZero 프로토콜을 통해, Communicator는 메시지 m을 사용자 애플리케이션에 전달하며, 이는 m과 관련된 거래 t의 거래 증명이 단계 12에서 검증될 수 있을 때만 가능합니다. 이 검증 단계는 성공적으로 이루어지며, 블록 헤더와 거래 증명이 일치할 때만 발생합니다. 이는 다음 두 가지 시나리오에서만 발생합니다:

  1. 오라클이 제공한 블록 헤더와 중계자가 제공한 거래 증명이 모두 유효합니다.

  2. 오라클이 제공한 블록 헤더와 중계자가 제공한 거래 증명이 모두 무효하지만 여전히 일치합니다.

시나리오 2는 오라클과 Relayer 계층이 공모하는 경우에만 발생합니다. 통계적으로 특정 블록 헤더를 모르는 상태에서 블록 헤더를 검증할 수 있는 거래 증명을 전송하는 것은 불가능하며, 그 반대도 마찬가지입니다. 그러나 LayerZero의 설계는 공모 가능성을 제거합니다. 따라서 메시지가 수신자의 사용자 애플리케이션으로 전송되면, 이는 유효 전송 속성을 충족한다고 보장됩니다.

제3절에서 개요한 바와 같이, 신뢰가 필요 없는 유효 전달(즉, 중개 실체나 토큰을 신뢰하지 않고 유효 전달을 수행할 수 있는)의 통신 프로토콜은 크로스 체인 거래를 실현하는 이상적인 솔루션입니다. LayerZero는 이러한 특성을 증명하는 최초이자 유일한 시스템입니다. 이 사실은 사용자들이 LayerZero를 크로스 체인 통신의 선호 방법으로 채택하도록 촉진할 것입니다.

4.4 LayerZero 엔드포인트

LayerZero 엔드포인트는 현재 LayerZero 네트워크에 포함된 각 체인에서 일련의 스마트 계약으로 구현됩니다. LayerZero 엔드포인트의 핵심 기능은 세 가지 모듈인 Communication, Validation 및 Network(통신, 검증 및 네트워크)에 캡슐화되어 있습니다. 이러한 모듈은 네트워크 스택처럼 작동하여, 발신 측에서 스택에 메시지를 전송하고(Communicator에서 Validator로, Validator에서 Network로), 수신 측에서 메시지를 위로 전송합니다.

핵심 모듈 외에도 LayerZero 엔드포인트는 Libraries를 통해 확장할 수 있으며, Libraries는 특정 체인의 통신을 처리하는 방법을 정의하는 보조 스마트 계약입니다. LayerZero 네트워크의 각 체인에는 관련된 Library가 있으며, 각 엔드포인트는 각 Library의 복사본을 포함합니다. 이러한 모듈화된 설계는 LayerZero 네트워크가 새로운 체인을 포함하도록 빠르고 편리하게 확장할 수 있게 합니다. 또한 두 체인 간의 통신은 각자의 Library가 양쪽에 존재하기만 하면 되므로, LayerZero는 완전히 연결된 네트워크가 되어 어떤 두 노드 간의 거래를 조정할 수 있습니다.

4.5 LayerZero 엔드포인트 비용 확장성

많은 독자들이 지적할 수 있듯이, 1층 체인에서 스마트 계약을 실행하는 것은 비용이 너무 높을 수 있으며, 특히 저장 데이터 양이 증가함에 따라 더욱 그렇습니다. LayerZero 엔드포인트를 실용화하기 위해, 우리는 가능한 한 경량 클라이언트를 설계할 필요가 있습니다. 이전에 크로스 체인 상태 머신 복제(SMR)를 통해 신뢰가 필요 없는 크로스 체인 검증을 수행한 작업은 Golden Gate[11]와 같이 인기 있는 Layer1 체인(예: 이더리움)에서 실행되며, 매일 수백만 달러의 비용이 발생할 수 있습니다.

image

그림 5: EVM 엔드포인트의 LayerZero 데이터 패킷 레이아웃.

이 문제를 해결하기 위해, 우리는 가능한 한 경량 클라이언트를 설계하는 데 착수했습니다. 우리의 주요 관찰 결과는 클라이언트에서 블록 헤더를 복제하고 저장하는 것이 불필요하다는 것입니다. 대신, 필요한 크로스 체인 헤더와 거래 증명을 가져오는 작업을 오프 체인 실체인 오라클과 중계자에게 위임합니다. 이로 인해 LayerZero 노드는 매우 경량화되어, 이더리움과 같은 비싼[20] 체인에서도 비용 효율적입니다.

5. 사례 연구: EVM에서의 LayerZero

이 섹션에서는 이더리움 가상 머신(Ethereum Virtual Machines, EVM)에서 LayerZero 실행 지원의 세부 사항을 간략하게 설명합니다[13]. 간결성을 위해, 우리는 시스템의 다양한 측면에 초점을 맞추며, 이들의 구현이 체인마다 다를 수 있음을 강조하고, 우리의 구현이 이더리움 체인의 특정 요구를 어떻게 처리하는지를 강조합니다. 제4.1절에서 언급한 바와 같이, LayerZero의 현재 버전은 Chainlink에 의존하여 오라클 서비스를 제공하며, 사용자가 우리가 제공하는 중계자 서비스를 사용하기를 희망합니다.

LayerZero 패킷: LayerZero 데이터 패킷의 형식은 출발 체인과 목표 체인에 따라 다릅니다. 우리는 그림 5에서 EVM 엔드포인트[19]의 LayerZero 데이터 패킷의 정확한 레이아웃을 설명합니다. 각 필드의 기능은 다음과 같습니다:

image

발신 체인 거래 안정성: 메시지 거래가 출발 체인에서 안정적으로 이루어지도록 하기 위해, 우리는 탈중앙화된 오라클 네트워크의 고유한 속성에 의존합니다. 즉, 오라클은 특정 블록 헤더의 체인에 대해 특정 블록을 알리기 전에 몇 개의 블록 확인을 들어야 합니다. 이더리움의 경우 15개입니다. 정확히 말하면, LayerZero 프로토콜의 단계 8(제4.2절)은 오라클이 체인 A에서 15개의 블록 확인을 들은 후에만 실행됩니다.

LayerZero 엔드포인트: 우리는 LayerZero 엔드포인트를 제4.4절에서 설명한 네 가지 주요 모듈로 구성된 일련의 스마트 계약으로 구현했습니다. 대부분의 기존 블록체인, 특히 이더리움 블록체인에 대해, 우리는 Communicator, Validator 및 Network를 각각 개별 스마트 계약으로 구현할 수 있었습니다. 그러나 이 설계는 서로 다른 요구를 가진(미래의) 체인에서 LayerZero 엔드포인트를 구현하는 것을 배제하지 않습니다.

이 사례 연구에서 LayerZero 엔드포인트의 Library 구성 요소는 이더리움 블록체인에 대한 지원을 제공하는 데 핵심적입니다. 우리는 그림 5에서 보여주는 EVM 특정 LayerZero 데이터 패킷의 구성을 처리하고, EVM 스마트 계약 주소 정보의 인코딩 및 디코딩을 처리하는 Library를 구현했습니다.

Library의 또 다른 책임은 거래 증명을 검증하는 데 관련된 실제 계산을 처리하는 것입니다. 우리의 EVM Library는 EVM 블록에서 거래 처리에 대해 Merkle-Patricia Tree 검증[16]을 수행하며, 우리는 Golden Gate의 오픈 소스 구현[11]을 기반으로 합니다.

6. LayerZero에서의 애플리케이션

크로스 체인 탈중앙화 거래소: 제2.2절에서 간략하게 설명한 바와 같이, LayerZero는 크로스 체인 DEX(크로스 체인 브리지)를 가능하게 하며, 이는 로컬 자산을 전문적으로 처리합니다. 기존의 발행 토큰이나 중간 사이드 체인을 통한 DEX 설계와는 달리, LayerZero를 사용하여 체인 간에 메시지를 전송하는 DEX를 구축할 수 있으며, 이로 인해 두 체인 모두 유동성 풀이 존재하게 되어 사용자는 자신의 로컬 자산을 한 풀에 예치한 후 다른 풀에서 로컬 자산을 인출할 수 있습니다. LayerZero의 메시징 원시는 직접 연결(1:1 가격 책정), 자동 시장 생성(ab=k 가격 책정) 및 기타 파생상품(예: Curve DAO 가격 책정과 유사한 파생상품[25])을 지원할 만큼 강력합니다. LayerZero가 제공하는 유효 전달 보장은 광범위한 탈중앙화 거래 애플리케이션을 가능하게 합니다.

멀티 체인 수익 집합기: 현재의 수익 집합기는 일반적으로 단일 체인 생태계 내에서 운영되며, Yearn Finance[27]와 같은 프로젝트는 단일 체인 전략을 사용하여 수익 집합을 가능하게 합니다. 이러한 단일 체인 수익 집합 시스템의 주요 약점 중 하나는 현재 생태계 외부의 어떤 수익 기회도 활용할 수 없다는 점이며, 이는 많은 최적의 수익 기회를 놓칠 수 있습니다. LayerZero를 사용하여 크로스 체인 거래를 수행하는 수익 집합기는 모든 생태계의 최적 기회를 활용할 수 있게 하여, 높은 수익 기회를 얻을 수 있는 가능성을 높이고, 사용자가 시장 비효율성을 활용할 수 있게 합니다. 엄밀히 말하면, 멀티 체인 수익 집합 메커니즘은 단일 체인 수익 집합 메커니즘보다 더 나은데, 최악의 경우 이 전략은 단일 체인에서의 기회만 활용하게 되며, 최상의 경우에는 더 많은 기회를 선택할 수 있게 됩니다.

멀티 체인 대출: 현재 사용자들은 자신이 보유하지 않은 자산이 있는 체인에서 기회를 활용할 수 있는 간단한 방법이 없습니다. 예를 들어, ETH 통합 자산을 가진 사용자가 Polygon에서의 기회를 활용하고자 한다고 가정해 보겠습니다[17]. 그들의 선택은 (1) 전체 자산 기반을 다른 체인으로 이전하고 원하는 통화로 변환하거나, (2) 이더리움에서 자산을 대출하고 필요한 자산을 빌린 후 해당 자산을 목표 체인에 연결하는 것입니다. LayerZero는 사용자가 이더리움에서 전체 자산 기반을 유지하고, 이를 대출한 후 Polygon에서 직접 MATIC으로 대출할 수 있는 대출 프로토콜을 가능하게 합니다. 이는 크로스 체인 브리지 및 스왑 비용과 같은 중간 비용을 제거합니다.

이 세 가지 예는 LayerZero가 지원하는 많은 가능성 중 일부에 불과합니다. LayerZero를 활용함으로써 개발자는 체인 내 및 체인 간 거래 간의 의미적 차이에 대해 걱정할 필요 없이 애플리케이션을 작성할 수 있으며, 사용자는 체인 간에 자유롭게 유동성을 이동할 수 있습니다. 우리는 커뮤니티가 신뢰가 필요 없는 크로스 체인 거래의 힘 아래 창의적인 새로운 애플리케이션을 개발하기를 기대합니다.

7. 결론

이 문서는 신뢰가 필요 없는 최초의 전 체인 상호 운용 플랫폼 LayerZero의 설계 및 구현을 소개합니다. 우리는 두 개의 독립적이고 신뢰가 필요 없는 오프 체인 실체인 오라클과 중계자를 활용하여 LayerZero가 비싼 크로스 체인 상태 머신 복제나 중간 토큰 없이 유효 전달을 구현할 수 있음을 보여주었습니다. 우리의 프로토콜 설계는 임의의 중계 서비스 사용을 배제하지 않으며, 이는 중계자와 오라클 간의 공모가 없음을 보장합니다. LayerZero 프로토콜이 지원하는 체인 간의 로컬 거래는 새로운 LayerZero 엔드포인트 설계가 어떤 체인도 지원할 수 있도록 쉽게 확장할 수 있습니다.

또한 우리의 엔드포인트 설계는 이더리움과 같은 비싼 1층 체인에서 실행될 수 있을 만큼 충분히 경량화되어 있으며, 높은 비용을 발생시키지 않습니다. 우리는 LayerZero에서 EVM 기반 체인을 지원하는 방법을 구현하는 사례 연구를 제안하며, Chainlink의 탈중앙화 오라클 네트워크와 결합된 참조 중계자 Relayer를 사용하여 LayerZero를 통해 크로스 체인 거래를 가능하게 합니다.

LayerZero는 다양한 불일치 블록체인 생태계를 연결하여 유동성, 데이터 및 아이디어가 체인과 커뮤니티 간에 마찰 없이 흐를 수 있도록 합니다.

참고 문헌:

[1] 모든 레이어 1 블록체인 프로토콜. https://blockchain-comparison.com/blockchain-protocols/. 접근일: 2021-5-13.

[2] AnySwap DEX 사용자 가이드. https://anyswap-faq.readthedocs.io/en/Latest/index.html. 접근일: 2021-5-13.

[3] Binance.com. https://www.binance.com/. 접근일: 2021-5-14.

[4] BREIDENBACH, L., CACHIN, C., CHAN, B., COVENTRY, A., ELLIS, S., JUELS, A., KOUSHANFAR, F., MILLER, A., MAGAURAN, B., MOROZ, D., NAZAROV, S., TOPLICEANU, A., TRAMER, F., AND ZHANG, F. Chainlink 2.0: Next steps in the evolution of decentralized oracle networks. 백서, ChainLink, 2021.

[5] 코스모스란 무엇인가? https://v1.cosmos.network/intro. 접근일: 2021-5-15.

[6] DCRM - fusion.org. https://www.fusion.org/tech/dcrm. 접근일: 2021-5-13.

[7] ELLIS, S., JUELS, A., AND NAZAROV, S. Chainlink: A decentralized oracle network. 백서, ChainLink, 2017.

[8] 이더리움. https://ethereum.org/en/. 접근일: 2021-5-13.

[9] 이더리움 2.0(eth2) 비전. https://ethereum.org/en/eth2/vision/. 접근일: 2021-5-13.

[10] GALAL, H. S., ELSHEIKH, M., AND YOUSSEF, A. M. An efficient micropayment channel on ethereum. In Data Privacy Management, Cryptocurrencies and Blockchain Technology. Springer, 2019, pp. 211--218.

[11] Golden Gate -- 신뢰가 필요 없는 이더리움(EVM) 블록체인 간의 브리징 -- 파트 1: 기본 사항. https://loredanacirstea.medium.com/golden-gate-trustless-bridging-ethereum-evm-blockchains-part-1-basics-d016300ea0dd. 접근일: 2021-5-14.

[12] 중력 브리지 발표. https://blog.althea.net/gravity-bridge/. 접근일: 2021-5-15.

[13] HILDENBRANDT, E., SAXENA, M., RODRIGUES, N., ZHU, X., DAIAN, P., GUTH, D., MOORE, B., PARK, D., ZHANG, Y., STEFANESCU, A., ET AL. Kevm: A complete formal semantics of the ethereum virtual machine. In 2018 IEEE 31st Computer Security Foundations Symposium (CSF) (2018), IEEE, pp. 204--217.

[14] IBC 개요 --- 코스모스 SDK. https://docs.cosmos.network/master/ibc/overview.html. 접근일: 2021-5-15.

[15] LAZARENKO, A., AND AVDOSHIN, S. Financial risks of the blockchain industry: A survey of cyberattacks. In Proceedings of the Future Technologies Conference (2018), Springer, pp. 368--384.

[16] LU, Z., WANG, Q., QU, G., ZHANG, H., AND LIU, Z. A blockchain-based privacy-preserving authentication scheme for vanets. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 27, 12 (2019), 2792--2801.

[17] 폴리곤: 이더리움의 블록체인 인터넷. https://polygon.technology/lightpaper-polygon.pdf.

[18] SALTZER, J. H., REED, D. P., AND CLARK, D. D. End-to-end arguments in system design. ACM Transactions on Computer Systems (TOCS) 2, 4 (1984), 277--288.

[19] Solidity 유형. https://docs.soliditylang.org/en/v0.5.3/types.html. 접근일: 2021-5-14.

[20] SPAIN, M., FOLEY, S., AND GRAMOLI, V. The Impact of Ethereum Throughput and Fees on Transaction Latency During ICOs. In International Conference on Blockchain Economics, Security and Protocols (Tokenomics 2019) (Dagstuhl, Germany, 2020), V. Danos, M. Herlihy, M. Potop-Butucaru, J. Prat, and S. Tucci-Piergiovanni, Eds., vol. 71 of OpenAccess Series in Informatics (OASIcs), Schloss Dagstuhl--Leibniz-Zentrum fuer Informatik, pp. 9:1--9:15.

[21] Tendermint. https://tendermint.com/. 접근일: 2021-5-15.

[22] 이더리움 2.0 업그레이드. https://ethereum.org/en/eth2/. 접근일: 2021-5-13.

[23] Thorchain. https://thorchain.org. 접근일: 2021-5-13.

[24] VIRIYASITAVAT, W., DA XU, L., BI, Z., AND SAPSOMBOON, A. New blockchain-based architecture for service interoperations in internet of things. IEEE Transactions on Computational Social Systems 6, 4 (2019), 739--748.

[25] WARREN, W., AND BANDEALI, A. 0x: An open protocol for decentralized exchange on the ethereum blockchain. URL: https://github.com/0xProject/whitepaper (2017), 04--18.

[26] WOOD, G. Polkadot: Vision for a heterogeneous multi-chain framework. 백서, Polkadot, 2016.

[27] yearn.finance. https://yearn.finance/. 접근일: 2021-5-14.

체인캐처(ChainCatcher)는 독자들에게 블록체인을 이성적으로 바라보고, 리스크 인식을 실제로 향상시키며, 다양한 가상 토큰 발행 및 조작에 경계해야 함을 상기시킵니다. 사이트 내 모든 콘텐츠는 시장 정보나 관련 당사자의 의견일 뿐이며 어떠한 형태의 투자 조언도 제공하지 않습니다. 만약 사이트 내에서 민감한 정보를 발견하면 “신고하기”를 클릭하여 신속하게 처리할 것입니다.
banner
체인캐처 혁신가들과 함께하는 Web3 세상 구축