Cardano의 글로벌 채택 경로로서의 확장성

https://cexplorer.io/article/scalability-as-cardano-s-path-to-global-adoption

A에서 B로 이동하려고 합니다. 비싼 표를 사서 한 시간 동안 여행하거나 더 싼 표를 사서 2분 안에 도착할 수 있습니다. 사람들은 합리적으로 행동하며 대부분은 더 저렴하고 빠른 옵션을 선택합니다. 따라서 그들은 블록체인에서 값비싼 거래에 대해 결코 기꺼이 지불하지 않을 것입니다.

퍼블릭 및 분산형 블록체인 네트워크는 일반적으로 더 나은 확장이 필요합니다. 이는 들어오는 모든 사용자 트랜잭션을 적시에 처리할 수 없음을 의미합니다. 정류장에서 10분 간격으로 정기적으로 운행하는 버스라고 생각하면 됩니다. 버스에는 100명만 탈 수 있지만 버스 정류장에는 정기적으로 200명 또는 300명이 있습니다. 사람들은 버스를 타야 하기 때문에 더 높은 요금을 제시하기 시작합니다. 일부 사람들은 여전히 지불할 용의가 있습니다. 요금은 0.50 USD에서 50 USD로 인상됩니다. 경쟁이 나타날 것입니다. 30초 간격으로 운행되는 현대식 고속 열차로 요금은 0.10 USD에 불과하며 1,000명을 태울 수 있습니다. 일주일 안에 아무도 버스를 사용하지 않을 것입니다.

블록체인 용어로 고속열차가 버스보다 더 잘 확장된다고 말할 수 있습니다. 초당 시스템에서 처리하는 트랜잭션 수를 처리량이라고 합니다. 1초에 버스에 타는 사람의 수라고 생각하세요. 우리의 경우 100명을 600초로 나누기 때문에 0.16명입니다.

Cardano는 글로벌 금융 및 사회적 운영 체제가 되려는 야망을 가지고 있습니다. 이를 위해서는 더 나은 확장이 필요합니다. 훨씬 낫다. 이 기사에서는 첫 번째 레이어에서 확장성을 달성하기 어려운 이유와 두 번째 레이어가 필요한 이유에 대해 설명합니다. Hydra, 롤업, Milkomeda에 대해 조금 이야기하겠습니다.

단일 Cardano 트랜잭션에는 여러 자산과 여러 수신자가 포함될 수 있습니다. 기사에서 이것을 너무 많이 반복하지는 않겠지만 단일 Cardano 트랜잭션은 다른 블록체인 네트워크에서 10개 또는 100개 트랜잭션과 동일할 수 있습니다.

전 세계적으로 초당 16,000건 이상의 디지털 금융 거래가 발생합니다. 분산형 블록체인이 이러한 높은 처리량에 접근하기는 어렵습니다. 상태 채널, 사이드체인 및 롤업은 모두 가까운 미래에 Cardano 생태계에서 사용할 두 번째 계층입니다.

블록체인이 잘 확장되지 않는 이유는 무엇입니까?
블록체인은 노드로 구성된 분산 네트워크입니다. 블록체인의 요구 사항 중 하나는 탈중앙화입니다. 이는 기본적으로 자신의 전체 노드를 상대적으로 저렴하게 실행할 수 있음을 의미합니다. 노드에는 처리 능력, 메모리, 스토리지 및 대역폭(주어진 시간에 노드가 다운로드하거나 보낼 수 있는 최대 데이터 양)의 4가지 병목 현상이 있습니다.

Cardano 네트워크의 노드는 서로 통신하고 사용자가 제출하는 모든 트랜잭션을 전달합니다. 각 노드는 트랜잭션의 유효성을 검사합니다. 여기에는 더 많은 계산 능력이 필요한 Plutus 스크립트 유효성 검사가 필요할 수 있습니다. 수신된 모든 트랜잭션은 임시로 저장되어야 합니다. 블록에 포함되는 유효한 트랜잭션은 영구적으로 저장되어야 합니다.

Cardano는 현재 24시간당 약 50,000건의 트랜잭션을 처리합니다. 많은 트랜잭션에는 여러 명의 수신자가 포함되어 있으므로 카르다노는 매초 약 1~5명이 사용합니다.

이제 1,000배 더 많은 사람들이 Cardano를 사용한다면 어떤 종류의 컴퓨터가 필요할지 상상해 보십시오. 또는 10,000배 더 많은 사람들. 컴퓨팅 성능, 메모리, 스토리지 및 대역폭 요구 사항은 극단적입니다. 기업가만이 전체 노드를 실행할 수 있으며 이는 중앙 집중화로 이어집니다. "신뢰하지 말고 확인하라"는 생각은 얻을 수 없을 것입니다.

Capgemini a BNP Paribas가 2021년에 제공한 한 보고서에 따르면 2020년에는 전 세계적으로 5,220억 건의 금융 디지털 거래가 있었습니다. 이는 하루에 14억 건 또는 초당 약 16,000건의 거래에 해당합니다. 팀이 모든 회사의 데이터에 액세스할 수 없었기 때문에 실제 숫자는 훨씬 더 높을 수 있습니다.

컴퓨터 성능에 대한 요구가 높아지면 네트워크가 중앙 집중화됩니다. 분산형 네트워크가 더 잘 확장된다면 팀은 주요 기술 문제에 직면하게 됩니다.

트랜잭션을 정산하려면 먼저 노드가 유효성에 동의해야 합니다. 시스템에 노드 수가 많은 경우 이 합의에 시간이 걸릴 수 있습니다. 더 높은 분권화는 노드 간의 합의를 더 어렵게 만듭니다. 각 개별 노드는 트랜잭션을 획득, 확인 및 저장하기 위해 자체 컴퓨팅 리소스를 소비해야 합니다. 이는 탈중앙화 관점에서는 바람직하지만 확장성 관점에서는 매우 비효율적입니다. 분명히 생태계(블록체인 및 두 번째 계층)가 더 잘 확장된다면 노드는 사용자 간의 모든 트랜잭션을 확인할 수 없습니다.

두 번째 레이어의 임무는 첫 번째 레이어의 병목 현상을 완화하는 것입니다. 목표는 서로 다른 계층에서 트랜잭션 처리를 병렬화하여 첫 번째 계층의 컴퓨팅 리소스를 절약하는 것입니다. 첫 번째 레이어에서 두 번째 레이어로 그리고 그 반대로 자산을 전송하는 메커니즘이 항상 있어야 합니다.

두 번째 계층에는 자체 노드(컴퓨터 리소스)와 사용자 간의 합의를 달성하기 위한 자체 규칙이 있습니다. 분산화 및 보안 가정은 첫 번째 계층과 크게 다를 수 있습니다. 어떤 사람들은 특정 블록체인 위에 두 번째 레이어가 생성되면 자동으로 속성을 상속받는다고 잘못 생각합니다. 그렇지 않다. 두 번째 계층의 요점은 첫 번째 계층의 자산에 대한 책임을 인수하는 것입니다. 첫 번째 레이어는 레이어 간의 자산 전송에만 관여하지만 두 번째 레이어에서 발생하는 스마트 계약의 트랜잭션 및 실행을 확인하지 않습니다. 두 번째 계층은 일반적으로 노드(버그가 있을 수 있음), 지갑, 합의(두 번째 계층은 중앙 집중식 서버이거나 단일 엔티티에서 운영하는 몇 개의 노드로만 구성될 수 있음) 등을 포함하여 완전히 다른 인프라입니다.

트랜잭션 확인은 데이터 작업에 관한 것입니다. 데이터를 확인하려면 데이터를 사용할 수 있어야 합니다. 실제로 이는 노드가 이를 다운로드하거나 누군가에게 보내도록 해야 하고(대역폭), 노드는 이를 저장(메모리, 저장소)하고 유효성을 검사해야 함(처리 능력)을 의미합니다. 문제는 일반 컴퓨터가 엄청난 양의 데이터를 처리할 수 없다는 것입니다. 사람들은 Cardano 블록체인이 너무 크고 빠르게 성장하고 있다고 불평하고 있습니다. 두 번째 레이어는 두 번째 레이어에서 시작된 데이터(트랜잭션)가 다른 곳에 저장되거나 일정 시간이 지나면 단순히 삭제된다고 가정하기 때문에 첫 번째 레이어의 컴퓨팅 리소스 요구 사항을 줄입니다.

Cardano가 첫 번째 레이어라는 것을 알고 계실 것입니다. 두 번째 레이어는 Milkomeda, Hydra, Midnight 등이 될 것입니다. 솔루션 간의 차이점을 살펴보겠습니다. 두 번째 계층에는 사이드체인, 상태 채널 및 롤업의 3가지 기본 개념이 있습니다. 우리는 개념 간의 차이점에 대해 너무 많이 다루지 않을 것입니다. 우리는 그들이 원칙적으로 어떻게 작동하는지에 초점을 맞출 것입니다.

Hydra
Hydra는 상태 채널 솔루션입니다.

Hydra는 다음과 같이 사용됩니다. 여러 사용자가 소위 Hydra Head를 함께 여는 데 동의합니다(오프체인). 이것은 기본적으로 그들이 Cardano 블록체인에서 Hydra로 선택한 양의 자산을 전송하는 스마트 계약을 사용한다는 것을 의미합니다. 상태를 Cardano에서 Hydra로 이전하려면 온체인 트랜잭션이 필요합니다. 전송 후 사용자는 오프체인 상태를 서로 공유합니다. 빠르고 저렴하게 거래를 얼마든지 할 수 있습니다. 최종 변경 사항은 온체인 트랜잭션을 통해 Cardano 블록체인으로 다시 전송됩니다.

Hydra는 라이트닝 네트워크(LN)와 유사합니다. Hydra Head는 여러 사용자가 열 수 있지만 LN은 2명의 사용자 사이에서만 채널을 열 수 있습니다. Hydra는 사용자가 토큰을 사용하고 스마트 계약을 실행할 수 있도록 합니다.

Hydra는 여러 사용자가 서로에게 여러 트랜잭션을 보내려고 할 때 유용합니다. 각 사용자는 Hydra 노드를 사용하고 Hydra Head를 조기에 닫으려는 시도가 없도록 항상 온라인 상태여야 합니다. 그렇다면 최종 상태를 확인하고 필요한 경우 이의를 제기해야 합니다(사기 시도의 경우).

Hydra는 참가자가 Hydra Head가 언제 닫힐지 미리 알고 있을 때 유용합니다.

Hydra는 참여자 사이에서만 발생하는 자체 합의 메커니즘을 가지고 있습니다. Cardano 블록체인은 Hydra Head에서 어떤 트랜잭션이 발생하는지 전혀 모릅니다.

Hydra Head 거래는 비공개라고 할 수 있습니다. 그러나 최종 상태는 블록체인에 기록됩니다.

사용자가 일시적으로 오프라인 상태가 되도록 Hydra Tail에서 향후 작업이 수행될 예정입니다. Hydra는 휴대폰에서 작동합니다. 계획된 또 다른 개선 사항은 Hydra Heads를 서로 연결하는 기능입니다. Hydra Heads의 상호 연결은 더 큰 참여자 네트워크를 위한 길을 열어 로컬 헤드를 글로벌 네트워크로 효과적으로 전환합니다.

Milkomeda

Milkomeda C1은 EVM 호환 사이드체인 솔루션입니다.

Milkomeda는 Cardano 생태계에서 이더리움 애플리케이션 실행을 가능하게 합니다. Milkomeda를 사용하려면 Metamask와 같은 EVM 호환 지갑이 필요합니다. 지갑을 Milkomeda 사이드체인에 연결합니다. 그런 다음 Bridge를 통해 Cardano 네트워크에서 Milkomeda로 자산을 보내야 합니다. ADA는 MilkADA(포장된 ADA의 일종)가 됩니다. MilkADA는 수수료 지불에 사용됩니다.

사이드체인은 일반적으로 자체 유효성 검사기가 있는 별도의 네트워크입니다. Milkomeda의 경우 유효성 검사기는 Cardano SPO 그룹에서 운영합니다.

dcSpark 팀은 사용자가 Cardano 네트워크에 머물면서 사이드체인에서 스마트 계약을 사용할 수 있도록 하는 래핑된 스마트 계약이라는 혁신을 제시했습니다. 모든 사용자는 사이드체인 dApp과 상호 작용하는 데 필요한 데이터 및 자산과 함께 단일 Cardano 트랜잭션을 제출하기만 하면 됩니다. 사이드체인 브리지 레이어가 나머지를 처리합니다. 이 특정 솔루션은 실제로 Cardano 노드의 리소스를 사용하지만 컴퓨팅 성능을 절약할 수 있습니다.

일반적으로 자산이 브리지를 통해 전송되고 모든 트랜잭션 및 스마트 계약 실행이 두 번째 레이어에서 발생하도록 사이드 체인이 사용됩니다. 이렇게 하면 기본적으로 첫 번째 계층의 모든 계산 리소스가 절약됩니다(상태 채널 솔루션과 유사). 사용자는 레이어 2 노드를 강제로 실행하지 않으며 상태 채널 솔루션의 경우처럼 온라인 상태일 필요가 없습니다. 사이드체인은 일반적으로 트랜잭션을 추적할 수 있는 자체 공개 원장을 가지고 있습니다.

일반적으로 사이드체인은 분산화될 경우 블록체인과 유사한 문제에 직면할 수 있습니다. 그러나 이것은 사용자가 기대하는 것이 아닙니다. 사이드체인의 목표는 일반적으로 탈중앙화를 줄이면서 더 잘 확장하는 것입니다.

롤 업
IOG 및 dcSpark 팀은 Cardano용 롤업 작업을 하고 있습니다. 롤업은 첫 번째 레이어의 처리 능력과 메모리를 절약할 수 있습니다. 어느 정도 스토리지와 대역폭도 마찬가지지만 사용량은 경우에 따라 다를 수 있습니다.

롤업은 대부분 사용자가 블록체인에서 롤업 네트워크로 자산을 전송할 수 있는 스마트 계약을 기반으로 합니다. 롤업에서는 기본적으로 자산으로 무엇이든 할 수 있습니다. 롤업은 빠른 트랜잭션 네트워크일 수 있으며 모든 가상 머신에서 스마트 계약을 실행할 수 있거나 애플리케이션일 수 있습니다.

롤업은 특별한 Merkle 트리 데이터 구조를 통해 네트워크 상태를 유지합니다. 각각의 개별 브릭이 정보(사용자 잔액, 트랜잭션 등)를 나타내는 브릭으로 구성된 피라미드라고 생각하십시오. 각 정보에서 해시(짧은 문자열)를 생성할 수 있습니다. 두 가지 정보로 해시를 생성할 수도 있습니다. 피라미드의 하위 계층에서 두 개의 해시마다 상위 계층에서 하나의 해시가 생성됩니다. 피라미드의 꼭대기를 향해 이런 식으로 진행하면 트리 구조의 모든 데이터를 나타내는 단일 해시인 Merke 루트(상태 루트)가 생성됩니다.

상태 조각, 몇 개의 분기 노드(비유에서는 벽돌) 및 Merkle 루트가 있는 한 상태 조각이 Merkle 트리 내에 존재한다는 것을 암호화 방식으로 증명할 수 있습니다.

Rollup은 첫 번째 레이어의 스마트 계약에 새로운 상태(Merkle 루트)를 지속적으로 보냅니다. 블록체인은 변경할 수 없는 롤업 상태를 작성하는 데 사용됩니다. 롤업의 새로운 상태가 각각의 새로운 블록과 함께 배포되기 때문에 블록체인은 데이터 가용성 계층의 역할도 합니다.

롤업에는 데이터 가용성 문제가 있는 경향이 있습니다. 블록체인이 Merkle 루트만 작성했다면 원하는 기능인 트랜잭션에 대해 아무것도 알지 못할 것입니다. 그러나 롤업이 오랜 기간 동안 오프라인 상태이면 데이터(또는 데이터의 적어도 일부)가 없으면 사용자가 자금의 소유자임을 증명할 수 없기 때문에 자금이 정체될 것입니다.

이 문제에 대한 여러 솔루션이 있습니다. 롤업은 머클 루트와 함께 블록체인에 데이터를 보낼 수 있습니다. Merkle 트리에서 변경된 사항을 다시 생성할 수 있는 데이터입니다. 블록체인 네트워크는 데이터를 처리할 필요가 없으며 저장만 하면 됩니다. 데이터를 압축할 수 있습니다.

일부 롤업은 다른 전용 네트워크에 데이터를 저장합니다. 이렇게 하면 전체 노드의 저장 공간이 절약됩니다(블록체인의 크기가 느려짐). 일부 솔루션은 데이터가 외부 네트워크에서 실제로 사용 가능한지 확인합니다.

롤업은 ZK(Zero Knowledge) 암호화를 사용할 수 있습니다. ZK를 통해 사용자는 작업에 대한 정보를 제공하지 않고도 작업을 올바르게 완료했다는 증거를 만들 수 있습니다.

ZK는 어떻게 작동합니까? 복도에 있는 문에 대한 비밀 코드가 있다고 상상해 보십시오. 코드를 알고 있다는 것을 상대방에게 증명하고 싶지만 코드를 보여주고 싶지는 않습니까? 그래서 당신은 복도를 따라 내려가 문을 엽니다. 복도를 통과하는 것은 실제로 코드를 알고 있다는 증거입니다.

ZK 롤업은 이전 상태를 취하고 유효한 TX를 처리했으며 새 상태 루트를 올바르게 생성했다는 ZK 증명을 생성할 수 있습니다. 블록체인에서 실행되는 스마트 계약은 모든 증거를 검증할 수 있으며 사기 시도가 있는 경우 Merkle 트리 업데이트를 거부할 수 있습니다. ZK 롤업은 속일 수 없기 때문에 거래 및 서명 데이터를 블록체인에 저장할 필요가 없습니다.

사이드체인과 마찬가지로 롤업에는 자체적인 탈중앙화, 프로젝트 관리 등의 방법이 있어야 합니다. 종종 위험은 스마트 계약이 관리자 키를 통해 업데이트될 수 있다는 것입니다. 이러한 방식으로 팀은 계약에 대한 통제권을 유지하므로 본질적으로 사용자 자금을 유지합니다. 일부 프로젝트에서는 지연(예: 2주)을 두고 새 업데이트를 활성화하여 이 문제를 처리합니다.

이 글을 쓰는 시점에서 팀이 Cardano용 롤업 개발을 얼마나 진행했는지는 불확실합니다. 우리의 가정은 2023년에 첫 번째 시도를 보게 될 것이라는 것입니다. 롤업은 많은 프로젝트에서 사용되며 첫 번째 시도는 프로그래밍 가능성이 매우 제한된 비트코인에서도 이루어지고 있습니다.

결론
각 두 번째 레이어는 항상 첫 번째 레이어에 종속됩니다. 따라서 첫 번째 레이어의 확장성도 크게 개선되어야 합니다. 그렇지 않으면 블록체인이 두 번째 레이어의 기능을 영원히 제한할 것입니다. 상태 채널 솔루션의 경우 채널은 지속적으로 열리고 닫혀야 합니다. 누군가는 지구상의 모든 사람이 라이트닝 네트워크에 참여하려면 70년이 걸릴 것이라고 계산했습니다. 첫 번째 레이어의 트랜잭션이 비싸고 느리면 많은 사람들이 두 번째 레이어에 도달하지 못하고 아마도 시도조차 하지 않을 것입니다. Cardano는 PoS Leios 덕분에 첫 번째 레이어에서 훨씬 더 잘 확장됩니다.

사이드체인과 롤업을 사용하는 경우 네트워크가 얼마나 분산되어 있고 이를 사용하는 데 따른 위험이 무엇인지 항상 알고 있어야 합니다.

Cardano는 Milkomeda에 사이드 체인을 가지고 있습니다. Hydra Head는 이미 메인넷에 오픈되었습니다. 첫 번째 롤업은 올해 후반에 나타날 것으로 예상되며 dcSpark 팀에서 제공할 것입니다. 각 개별 솔루션에는 고유한 강점과 약점이 있으며 다양한 사용 사례에 적합합니다. 모든 솔루션에는 성공할 기회가 있습니다.