저자: 100y.eth 출처: 거울 번역: 굿오바, 황금금융
옛날 옛적, 보라색 페페 마법사가 에테르 마을에 내려왔다....... ...
1. 잃어버린 에테르 마을
옛날에 한 무리의 녹색 페페족이 에테르라는 작은 마을에 살았습니다.이 번성하는 왕국 한가운데서, ... 높은 수준의 분권화와 강력한 보안으로 마을은 번영을 누렸고 경제는 호황을 누리고 있었습니다.
마을 주민들은 이러한 원칙에 큰 영향을 받아 12초마다 기록되는 거래 블록을 감독할 지도자를 정기적으로 선출하여 활기찬 마을 경제를 유지하고 있습니다. 하지만 오늘날 에테리아 마을은 더 이상 예전의 모습이 아니며, 만연한 모듈로 바이러스는 마을의 활력을 크게 떨어뜨렸습니다. 마을의 녹색 페페들은 서두르고 마을은 우울한 상태에 빠져 있습니다.
그러나 마을에는 여전히 부흥의 꿈을 가진 그린 페페들이 있고, 이들은 에테리아를 다시 살리기 위해 'L2 개혁'을 제안했습니다. 이들의 노력으로 마을은 점차 번영을 되찾았고, 그린 페페들의 삶에 새로운 활력을 불어넣으며 활동 규모도 전례 없는 최고조에 이르렀습니다.
그러나 L2 개혁이 문제를 완전히 해결하지는 못했습니다. 이웃 마을인 솔라나와 수이는 아직 젊고 불안정했지만 전례 없는 과학 혁명으로 복잡한 금융 거래를 단순하고 유동적으로 만들면서 빠르게 성장하고 있었고, 이더는 개혁에도 불구하고 여전히 어려움을 겪고 있었습니다. 이 새로운 마을로 이주한다는 소문이 마을에 퍼지기 시작했습니다.
그 때 보라색 페페 마법사가 이더 마을에 나타났습니다.
2. 보라색 페페 마법사의 도착
보라색 옷을 입은 페페 마법사는 에테르 마을의 잃어버린 영광에 깊은 아쉬움을 느끼며 새로운 마을 모나드를 건설하기로 결심했죠.
어느 날, 그는 마을 광장에 서서 초록 페페족에게 모나드 건설에 대한 원대한 계획을 발표하고 미래에 대한 희망과 꿈을 표현해달라고 초대했습니다.
그린 페페 1호는 가장 먼저 "모나드가 이더리움처럼 살기를 원합니다. 이더리움은 솔라나 수이처럼 확장성은 부족하지만, 다른 곳의 문화가 우리와 너무 달라서 절대 떠나고 싶지 않은 독특한 문화를 가지고 있습니다."라고 말했습니다.
그린 페페 2세도 "생활 방식과 문화의 연속성을 유지하는 것도 중요하지만, 다른 마을만큼 효율적이기를 원합니다. 이더리움은 안전하지만, 속도와 유연성을 원하는 프로젝트에는 적합하지 않은 것 같습니다."
마법사는 그들의 기대에 귀를 기울였고, 이더의 풍부한 문화와 솔라나와 수이의 확장성을 모나드에 접목하겠다고 약속했습니다. 마법사는 자신의 강력한 마법으로 어떻게 하면 이 비전을 실현할 수 있을지 고민하기 시작했고, 에테리움의 전통을 유지하면서 새로운 기술의 효율성을 갖춘 마을을 만들기로 결심했습니다.
그 후 그는 변화를 갈망하던 페페와 이 원대한 비전을 공유하며 두 세계의 장점을 모두 갖춘 새로운 삶에 대한 희망을 심어주었습니다.
3. 비결 #1: 지연된 실행
이더리움 마을의 확장성을 제약하는 한계 중 하나는 새로운 블록이 생성될 때마다 합의 과정에서 거래를 실시간으로 처리해야 한다는 사실입니다. 이 마을에서 블록을 제안하는 리더는 블록을 제안하기 전에 모든 거래의 결과를 계산해야 하며, 블록을 받는 검증 노드는 모든 거래를 계산하여 블록의 정당성을 검증하고 투표해야 합니다.
합의 과정에는 마을 사람들의 연산과 커뮤니케이션이 필요하기 때문에 트랜잭션 처리 시간이 크게 단축되어 확장성에 제한이 있습니다. 이 문제를 해결하기 위해 보라색 페페 마법사는 마을 사람들의 거래의 '합의' 과정(즉, 거래의 순서)과 '실행' 과정(즉, 계산 결과)을 결합하는 '지연된 실행'이라는 새로운 주문을 시전했습니다. 마법사는 "지연된 실행"이라는 새로운 마법을 사용하여 마을 주민 거래의 "합의" 프로세스(즉, 거래 주문)와 "실행" 프로세스(즉, 결과 계산)를 분리했습니다.
단순히 말해, 각 블록이 합의와 실행을 동시에 진행할 필요가 없으며, 대신 N 블록의 합의가 진행되는 동안 실행은 N-1 블록의 거래 결과를 처리하는 방식입니다.
이 접근 방식을 사용하면 전체 블록 시간을 활용하여 실행할 수 있으므로 한 번에 처리할 수 있는 거래 수가 크게 늘어납니다.
고급 비밀 트릭: 머클 루트 지연
이더 빌리지에서 노드는 합의 전에 블록의 정당성을 확인하기 위해 계산을 수행합니다. 그러나 모나드의 지연 실행 시스템에서는 합의와 실행이 분리되어 있으며, 악의적인 노드는 이전에 확인된 트랜잭션을 무시하거나 계산 상태를 변조할 수 있습니다.
이를 방지하기 위해 모나드는 N-10 블록에 대한 계산 결과를 나타내는 머클 루트를 N 블록에 대한 제안서에 포함시키고, 머클 루트는 N-10 블록에 대한 계산 결과입니다. 노드의 3분의 2 이상이 블록 N에 대한 합의에 도달하면 블록 N-10의 계산 결과도 확정된 것을 의미합니다.
N-10 블록의 노드 계산 결과가 N 블록의 머클 루트와 일치하지 않으면 해당 노드는 N 블록부터 합의에서 제거됩니다. 이 10블록 머클 루트 지연은 계산 오류를 적시에 감지할 수 있도록 합니다.
모나드의 블록 시간이 1초라는 점은 주목할 가치가 있지만, 그렇다고 해서 모나드의 최종 확신이 10초가 걸린다는 의미는 아닙니다. Monad의 고유한 MonadBFT 시스템을 사용하면 단일 블록에 대한 최종 확정성을 1초 이내에 달성할 수 있습니다.
4. 비밀 기술 II: 트랜잭션 해싱
퍼플 페페 마법사들은 마을의 리더가 블록 제안을 다른 노드에 빠르게 전파하도록 하는 방법을 고심했습니다.
이더리움 마을에서는 모든 트랜잭션을 포함한 전체 블록 제안을 하나의 거대한 패키지로 네트워크 전체에 전파하는 것이 관례입니다. 그러나 마법사들은 모나드 마을에서도 이 방식을 채택할 경우 많은 수의 트랜잭션이 포함된 블록 제안을 전파하는 것이 어렵고 느린 작업이라는 것을 깨달았습니다.
이러한 이유로 보라색 페페 마법사는 "트랜잭션 해시"라는 개념을 생각해냈습니다. 마을 주민들이 제출한 모든 트랜잭션이 네트워크를 통해 전파되기 때문에, 각 노드는 자체 트랜잭션 풀에 모나드의 트랜잭션 기록을 보관합니다.
이 마법사는 리더가 각 블록 제안의 전체 거래 목록을 전달할 필요가 없으므로 이점을 활용할 수 있습니다. 대신 리더는 이러한 트랜잭션을 참조하고 해시를 전송하기만 하면 됩니다.
이러한 방식으로 모나드의 블록 제안은 각 트랜잭션의 해시만 포함하는 간결한 상태를 유지합니다. 다른 노드는 제안을 받으면 이 해시를 자신의 기록에 있는 트랜잭션과 비교하기만 하면 참조된 트랜잭션을 쉽게 찾을 수 있습니다.
5. 비밀 3: MonadBFT
모나드 마을에서 각 블록 내 거래 순서와 블록에서 생성된 합의는 고성능 합의 메커니즘인 MonadBFT에 의해 관리됩니다. 핫스터프의 고성능 합의 메커니즘입니다. 이 2단계 비잔틴 장애 허용 알고리즘(BFT)은 두 단계로 합의에 도달할 수 있습니다.
블록의 리더는 각 참여자의 약정된 지분에 따라 확률적으로 선출됩니다. 모나드에서는 각 블록을 생성하는 과정이 이더리움 마을보다 더 효율적인데, 이는 각 블록 N에 대한 제안이 이전 블록 N-1에 대한 법적 인증서(QC)와 함께 전달되어 노드의 3분의 2 이상이 블록을 검증했음을 나타내기 때문입니다.
프로세스 진행 방식은 다음과 같습니다.
리더 N이 이전 블록 N-1에 대한 QC와 함께 블록 N에 대한 제안을 공개합니다.
검증자는 블록 N을 검증하고 투표를 리더 N+1에게 보냅니다.
그런 다음 검증자는 블록 N을 검증하고 자신의 투표를 리더 N+1에게 보냅니다. >
리더 N+1은 블록 N에 대한 검증인과 함께 블록 N+1에 대한 제안을 공개합니다.
그러나 검증인이 블록 N을 바로 확정할 수 없는 이유는 블록 체인의 특성상 체인은 본질적으로 모든 참여자가 온라인에서 동기화되도록 보장할 수 없습니다.
블록 N을 완전히 보호하려면 검증자는 QC N이 포함된 블록 N+1에 대한 "찬성" 투표를 리더 N+2에게 보내야 합니다. 리더 N+2가 QC N+1을 생성하면 이는 N+1 라운드가 성공적으로 완료되었음을 확인하므로 N+1 라운드의 성공이 확정됩니다. 1라운드가 성공적으로 완료되면 블록 N이 마무리됩니다.
보라색 페페 마법사는 뛰어난 마법과 예지력을 통해 모나드 마을을 새로운 시대로 이끌고 있습니다. 이 마을에서는 각 블록이 빠르게 생성되고 보호될 뿐만 아니라 그 과정이 우아하고 확장 가능한 협업 마을의 비전에 부합합니다.
6. 비밀 4: 병렬 실행
<그림>
모나드 왕국에서는 많은 마을 사람들이 거래하는 것을 처리하기 위해 보라색 페페 마법사가 는 새로운 주문을 고안하여 거래가 에테르 마을의 직렬 방식이 아닌 강력한 병렬 흐름으로 처리되도록 했습니다.
<그림>
지연 실행의 도움으로 블록의 거래 순서에 대한 합의에 도달해야만 실행이 시작됩니다.모나드 마을은 다수의 숙련된 실행자로 구성되며, 각 실행자는 거래 처리를 담당하여 독립적으로 입력과 출력을 계산하고 보류 중인 트랜잭션 목록을 생성합니다.
이러한 입력과 출력은 마을의 상태를 즉시 변경하지 않고, 합의에 의해 결정된 순서대로 제출될 준비가 된 보류된 마법처럼 대기합니다. 이 제출은 매끄럽고 질서 정연한 태피스트리를 짜는 마법의 실처럼 출력을 하나씩 현재 상태로 병합하는 과정을 포함합니다.
그러나 상황은 더 나빠졌습니다. 병렬 처리로 인해 트랜잭션 충돌이 발생할 가능성이 생겼는데, 이는 질서 정연한 이더 마을에서는 드물게 발생하지만 여기서는 새로운 도전 과제입니다.
예를 들어, 한 트랜잭션(트랜잭션 b)에서 마을 주민 A가 마을 주민 B에게 1 이더를 주었고, 다른 트랜잭션(트랜잭션 c)에서 B가 마을의 여관에서 같은 양의 이더를 사용한 것으로 표시되면, 순서가 중요해집니다. 트랜잭션 C가 트랜잭션 B보다 먼저 실행하려고 하면 트랜잭션이 실패합니다. 이러한 경우 충돌하는 트랜잭션의 일정이 변경되고 트랜잭션 c는 트랜잭션 b가 완료될 때까지 기다렸다가 다시 실행합니다.
따라서 모나드에서 병렬 실행의 핵심은 시퀀스에 있습니다. 결과는 병렬로 계산되지만 상태 업데이트는 필요한 정확한 순서로 병합됩니다.
7. 비밀 5: MonadDb
<그림>
퍼플 페페 마법사는 거기서 멈추지 않았습니다. 그는 블록체인의 상태를 저장하도록 설계된 모나드 마을만의 맞춤형 데이터베이스인 MonadDb를 떠올렸습니다. Ether는 복원력은 뛰어나지만 외부 클라이언트에 비효율적인 것으로 알려진 복잡한 머클 패트리샤 트리에 의존하지만, MonadDb는 이 구조를 기본적으로 채택하여 모든 기능과 효율성을 최대한 활용했습니다.
MonadDb는 마을의 병렬 실행을 염두에 두고 설계되어 높은 정밀도로 동시에 여러 개의 읽기 및 쓰기를 지원합니다. 각 작업이 완료되어야 다음 작업으로 넘어갈 수 있는 기존 데이터베이스와 달리, MonadDb는 비동기 I/O 마법을 통해 작업이 매끄럽게 겹칠 수 있어 진정한 병렬 트랜잭션 처리의 문을 열어줍니다.
8. 모나드 빌리지를 방문하세요!
<그림>
보라색 페페 마법사는 일련의 놀라운 주문과 복잡한 마법을 통해 이더리움이 신뢰할 수 있는 모나드 마을을 만듭니다. 계정, 암호화폐, 거래 형식, 언어, 지갑이 솔라나와 수이의 놀라운 확장성과 쉽게 조화를 이룹니다. 이제 모나드는 초당 10,000건의 트랜잭션을 1초 이내에 완료하는 것을 꿈꾸며 번창하고 있습니다.
지혜와 희망으로 탄생한 모나드 마을이 밈 바이러스로부터 세상을 구하고 이더가 신뢰할 수 있는 파트너로서 다시 영광을 되찾을 수 있을까요? 시간이 지나야 알 수 있을 것입니다.