BTC
ETH
HTX
SOL
BNB
시장 동향 보기
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt

이더리움 2.0의 미래 청사진과 과제

以太坊爱好者
特邀专栏作者
이 기사는 약 6907자로, 전체를 읽는 데 약 10분이 소요됩니다
이더리움 2.0 학습 가이드.
AI 요약
이더리움 2.0 학습 가이드.

편집자 주: 이 기사의 출처는이더리움 애호가편집자 주: 이 기사의 출처는medium, A Jian 번역, 원문 출처

, 저자 Frank Lee는 Odaily의 승인을 받아 재인쇄되었습니다.

이미지 설명Crosslink 2019 TaiwanDanny Ryan (출처: Crosslink 2019 Taiwan) -

1. 이더리움 2.0의 아키텍처

1. 이더리움 2.0의 아키텍처

Ethereum 2.0 아키텍처(출처: Crosslink 2019 Taiwan)-

0상(0상)

0상(0상)

이더리움 1.0(Ethereum 1.0)에서는 새 블록을 생성하기 위한 합의 메커니즘(Consensus)으로 작업 증명(PoW)이 사용됩니다. 새로운 블록을 생성하는 데 필요한 대량의 컴퓨팅 성능과 너무 오래 걸리는 문제를 줄이기 위해 Ethereum 2.0은 새로운 블록을 생성하기 위한 합의 메커니즘으로 PoS(Proof of Stake)로 변경됩니다.

0단계가 완료되면 두 개의 이더리움 체인이 사용됩니다. Ethereum 1.0 체인(현재 PoW 메인 체인 사용) 및 Ethereum 2.0 체인(새로운 비콘 체인). 이 단계에서 사용자는 공개키를 등록하기 위해 이더리움을 1.0체인의 컨트랙트에 잠그고, 2.0체인은 컨트랙트에 등록된 공개키를 인식하게 됩니다. 그러나 그들은 그 에테르를 이더리움 1.0 체인으로 다시 마이그레이션할 수 없으며 비콘 체인을 구현하려면 비콘 체인 클라이언트가 필요합니다. 현재 많은 팀에서 이러한 클라이언트를 개발하고 있습니다.

1단계(1단계)

1단계(1단계)

첫 번째 단계에서는 샤드 체인이 추가됩니다.이 단계에서는 샤드 체인의 데이터 구조와 그 유효성(Validity) 및 합의(Consensus)에 중점을 둡니다.샤드 체인은 데이터로만 사용됩니다. 이 단계 체인에서 샤드 체인의 상태 실행(State Execution) 또는 계정 잔액(Account Balances)을 지정하지 않습니다. 이것은 샤딩을 사용하여 비콘 체인을 확장하려고 시도하는 것보다 샤딩 구조를 테스트하는 것과 비슷합니다. 이 단계에서 비콘 체인은 샤드 체인(Block)의 블록을 구조나 의미가 없는 비트의 집합체(Collections Of Bits)로 취급합니다. 이더리움 1.0과 이더리움 2.0은 이더리움 2.0 체인에서 테스트 및 마이그레이션과 함께 여전히 나란히 존재할 것입니다.

이 단계에서 샤드 체인은 비콘 체인(Crosslinks)과 교차 연결되며 각 샤드의 현재 상태인 "결합 데이터 루트(Combined Data Root)"는 정기적으로 "비콘 체인" 블록에 기록됩니다. 가교. 비콘 체인 블록이 완료된 후 해당 샤드 블록이 완료된 것으로 간주되며 다른 샤드는 교차 샤드 트랜잭션을 위해 이러한 블록에 의존할 수 있음을 알고 있습니다.

비콘 체인의 각 슬롯에 있는 각 샤드에 대해 샤드 유효성 검사기는 무작위로 선택되며, 샤드 유효성 검사기는 각 블록의 내용에 대한 합의에 도달하는 데만 사용됩니다. 모든 위원회가 동의하고 샤드의 비콘 체인을 정기적으로 업데이트하는 한 샤드에 무엇이 포함되어 있는지는 중요하지 않습니다.

두 번째 단계(Phase 2)

2. 새로운 단편화 제안

2. 새로운 단편화 제안

이미지 설명

이더리움 2.0의 원래 제안으로 동작하는 메커니즘은 각 기간(Epoch) 단위로 교차 연결 동작을 수행하는 것으로, 각 체인에는 1024개의 조각(Shards)이 존재하며, 교차 샤드 체인 트랜잭션(Tx)이 필요한 경우, 각 기간의 교차 연결로 인해 큰 지연이 있을 것입니다; 새로운 제안은 각 기간의 교차 연결을 수행하도록 업데이트되고 교차 샤딩을 줄이기 위해 샤드(Shards)의 수를 32로 줄입니다(Cross- 샤드) 트랜잭션 지연 시간, 교차 샤드 트랜잭션은 매 시간마다 수행됩니다.

새로운 제안의 장점

이더리움 2.0의 새로운 제안의 장점에 대해서는 우선 새로운 제안의 슬라이스(샤드) 수가 1024개에서 32개로 줄어들어 크로스 샤드 시간이 1세대에 1슬롯, 시간이 단축되어 DApp 개발자와 사용자에게 더 나은 경험을 제공할 수 있다는 장점이 있습니다. 이더리움 2.0의 원래 설계에서는 교차 샤드 거래 수수료를 실현하기 위해 복잡한 수수료 시장 모델과 낙관적 솔루션이 필요했습니다. 그러나 새로운 제안은 실행 환경의 디자인을 변경하여 원래의 복잡한 모델을 크게 단순화할 수 있습니다.

새로 제안된 거래

새로운 제안은 거래를 시작하기 위해 이전 제안보다 적은 수의 샤드(샤드)만 필요합니다. 0단계 테스트넷(테스트넷)이 지연될 수 있으며 새로운 제안으로 0단계 릴리스에 필요한 시간이 단축됩니다.

현재 생각

3. 실행환경

3. 실행환경

이미지 설명

Ethereum 1.0의 단순 아키텍처 다이어그램(출처: Crosslink 2019 Taiwan)-

이전에 설계된 이더리움 2.0과 이더리움 1.0에서 상태는 합의 메커니즘에서 매우 중요한 역할을 합니다. 합의 메커니즘은 실행, 트랜잭션 또는 계정의 개념에 관계없이 언제든지 모든 상태를 읽고 쓸 것입니다. , 개념 트리 구조 및 데이터 구조의 모든 개념은 합의에 깊숙이 내재되어 있습니다.

위의 그림은 이더리움 1.0의 간단한 아키텍처 다이어그램입니다.그림에서 합의 메커니즘과 체인을 볼 수 있습니다.합의 메커니즘에는 상태와 실행 엔진이 포함됩니다.상태에는 상태 트리가 포함됩니다.여기서 실행 엔진은 어렵습니다. -실행 트랜잭션, 계정 모델 및 계정 구조를 포함하는 코딩된 규칙 그림의 오른쪽에 체인이 있고 체인에 트랜잭션 데이터가 있음을 알 수 있습니다.Ethereum 1.0에서는 합의를 구현합니다. 상태를 수정하고 업데이트하는 트랜잭션 데이터에 대한 메커니즘.

EIP(Ethereum Improvement Proposals)의 권고 사항을 따른다면, 개발자들은 항상 새로운 opcode를 요구하거나, 그들의 애플리케이션을 지원하기 위해 채굴기의 비용(Gas Cost)을 변경하고 있습니다. 그들의 애플리케이션(DApp)을 지원하기 위해 EVM 1.0의 실행 환경을 수정합니다.

그러나 Ethereum 2.0의 두 번째 단계에서는 여러 실행 환경을 지원할 수 있습니다. 또한 여러 상태 루트, 다른 계정 모델 등이 있을 수 있습니다. 예를 들어 Ethereum 2.0에서 Libra를 실행하기 위해 Facebook Coin Execution Environment(Libra EE)를 정의할 수 있습니다. 또는 이더리움 2.0에서 비트코인을 실행할 수 있도록 비트코인 ​​실행 환경(BitCoin EE)을 정의할 수 있습니다.

이미지 설명

Ethereum 2.0의 단순 아키텍처 다이어그램(출처: Crosslink 2019 Taiwan)-

이더리움 2.0의 간단한 아키텍처 다이어그램에서 상태 루트를 볼 수 있습니다. 상태 루트는 WASM 실행 코드(실행 코드)가 있는 32바이트 블롭일 수 있으며 사용자 수준에서 자세히 설정할 수 있습니다. 그림 오른쪽에 체인이 있습니다.체인에는 일반적인 거래 데이터와 증인이 있습니다.증인은 실제로 데이터베이스의 블록에 표시됩니다.데이터베이스 대신 상태에 대해 트랜잭션을 실행해야 하며, 또한 데이터가 현재 상태임을 증명해야 합니다. 상태 루트가 유효합니다. 예를 들어 A계좌와 B계좌 사이에 가치를 이체하고자 할 때 A계좌에서 B계좌로 5ETH를 이동한다고 가정하면 그 과정에서 계좌와 잔고(Balance)가 실제로 가용하다고 직접적으로 말할 수 없고, 우리는 두 계정의 현재 상태를 증명하기 위해 Witness Data를 추가해야 합니다.실행 코드가 트랜잭션 데이터를 실행할 때 상태 루트는 상태 트리를 수정하고 업데이트할 수 있습니다.

원래 제안에서는 상태와 합의가 밀접하게 관련되어 있으며 실행 계정과 합의에는 상태 트리 구조가 포함되어 있지만 새로운 제안에서는 실행 환경이 매우 추상적인 상태 비저장 모델(Stateless Model)이며 확장성이 뛰어납니다. 원래 제안보다 훨씬 높습니다.

실행 환경의 장점

실행 환경의 장점

실행 환경 설계가 완료되어 이더리움 1.0에서 이더리움 2.0으로의 마이그레이션 방향이 보다 명확해지고 실행 환경을 사용한다고 해서 시간이 지나도 기술이 쓸모없게 되는 문제가 발생하지 않습니다.

주변 트랜잭션 실행

주변 트랜잭션 실행

가상 시스템에는 트랜잭션 속도에 영향을 미치는 잠재적 조각화 문제가 있을 수 있습니다.

현재 생각

현재 모든 연구는 긍정적으로 발전하고 있으며 아직 디자인 공간을 더 잘 이해하고 시도할 수 있는 충분한 시간이 있습니다.앞으로 우리는 더 나은 실행 환경 커뮤니케이션 메커니즘을 구축하는 데 더 많은 시간을 할애할 것입니다. 전반적으로 현재 진행 상황은 미래를 위한 중요한 이정표입니다.

4, 양방향 브리지

마지막 주제는 주로 양방향 교량을 개발할 가치가 있는지에 대해 논의합니다. 어느 시점에서 팀이 양방향 브리지를 수행할 수 있습니까?

이미지 설명

앞서 발표자가 언급한 제안에서 이더리움 2.0은 원래 단방향 브리지가 있어 이더리움 1.0에서 이더리움 2.0으로 전환할 수 있지만 원래 아키텍처는 주로 여러 가지 이유로 백홀을 허용하지 않았습니다. 이더리움 1.0과 이더리움 2.0의 하드 포크로 이더리움 1.0을 개발하고 두 시스템을 상호 영향의 위험에 빠뜨리기 때문에 팀은 이더리움 2.0이 출시되고 안정되기 전에 두 시스템을 긴밀하게 결합하는 것은 현명하지 않다고 생각합니다. .

일방통행의 문제

일방통행의 문제

양방향 브리징

이미지 설명

현재 양방향 브리징을 위한 가능한 경로는 두 가지가 있는데, 하나는 이더리움 1.0 위에 이더리움 2.0의 라이트 노드를 구축하는 것이고, 다른 하나는 이더리움 1.0 위에 이더리움 2.0의 풀 노드를 운영하는 것이다.

경로 A: Ethereum 1.0에서 Ethereum 2.0 라이트 노드 구축

경로 A: Ethereum 1.0에서 Ethereum 2.0 라이트 노드 구축

이미지 설명

경로 B: Ethereum 1.0에서 Ethereum 2.0의 전체 노드를 실행합니다.

경로 B: Ethereum 1.0에서 Ethereum 2.0의 전체 노드를 실행합니다.

이미지 설명

경로 B의 개략도(출처: Crosslink 2019 Taiwan)-

두 번째 루트는 이더리움 1.0의 노드에서 이더리움 2.0의 전체 노드를 실행할 것입니다. 이더리움 1.0 체인을 보호하기 위해, 그리고 사람들이 종종 "Finality Gadget 제안"이라고 하는 이것에 대해 매우 흥분하고 있다고 생각합니다.

이더리움 2.0의 상태 루트 출력의 또 다른 이점은 이더리움 1.0이 이를 실현하는 견고한 메커니즘을 가지고 있으며 동시에 이더리움 2.0의 높은 확장성과 데이터 가용성을 가지고 있어 ZK 롤업 및 낙관적 롤업.

양방향 브리징의 장점

Ethereum 1.0 Ether와 Ethereum 2.0 Ether를 상장한 거래소에 있다면 가격이 동일해야 합니다. 그렇지 않다면 낮은 가격에 하나의 이더를 사서 브릿지로 보내고 더 높은 가격에 또 하나의 이더를 얻어 팔 수 있습니다. 이 차익 거래는 가격을 일정하게 유지하여 사용자, 검증자 및 개발자를 혼란스럽게 하고 양방향 브리지는 차익 거래를 통해 양쪽의 통화가 서로 변환되는 것을 방지합니다.

양방향 브리징 트랜잭션

양방향 브리징 트랜잭션

그러나 여기에는 약간의 장단점이 있으며, Ethereum 2.0의 설계에 매우 확신을 가지고 있지만 팀은 Ethereum 1.0의 보안 및 위험 프로필에 영향을 미치기 전에 프로덕션에서 검증하기를 원합니다.

따라서 이러한 것들을 더 빨리 연결하면 Ethereum 2.0의 개발 및 포크 주기가 느려질 수 있으며 이로 인해 약간의 추가 오버헤드가 추가됩니다.

현재 생각

우리는 검증자 유동성을 추가하기 전에 브리지를 활성화해야 하지만 제품의 첫 번째 단계가 안정될 때까지 기다려야 합니다.

  • 용어 사전:

  • 용어 사전:

  • EIP(Ethereum Improvement Proposals): EIP는 Ethereum 플랫폼의 표준이며 그 내용에는 핵심 프로토콜, 클라이언트 API 및 계약 표준의 사양이 포함됩니다.

  • 에포크: 이더리움 2.0에서 에포크는 6.4분 동안 지속되는 시간 단위를 말하며 각 에포크에는 32개의 슬롯이 포함됩니다.

  • 슬롯(주기): 각 주기는 12초이며 매 주기마다 블록이 생성되지 않을 수 있으며 에포크의 마지막 슬롯을 경계 주기(Boundary Slot) 또는 체크포인트(C 체크포인트)라고 합니다.

  • Solidity: Solidity는 주로 스마트 계약을 개발하는 데 사용되는 계약 지향 언어입니다.

  • 합의(합의 메커니즘): 합의 메커니즘은 노드 간의 합의에 도달하기 위해 블록체인에서 개발한 알고리즘입니다.

  • 검증자: 블록을 검증하는 노드는 각 슬롯의 각 샤드에 대해 비콘 체인에 의해 무작위로 생성됩니다.

  • Gas: 거래에 필요한 수수료 Gas가 소진되면 스마트 컨트랙트가 종료되고 Rollback이 수행됩니다.

  • EVM(Ethereum Virtual Machine): EVM은 중국어로 이더리움 가상머신(Ethereum Virtual Machine)으로 가벼운 가상머신 환경이며, Eth 1.0에서 스마트 계약의 운영 환경은 EVM이다.

  • Dapp(분산형 앱): 이더리움에서는 스마트 계약을 기반으로 하는 애플리케이션을 분산형 애플리케이션, 즉 Dapp(분산형 앱)이라고 합니다.

  • ether(이더 통화): 이더리움 통화의 이름입니다.

  • Finality: "Finality"는 Casper의 개념이며 검증자 투표를 통해 체인에 되돌릴 수 없는(롤백) 체크포인트를 생성하는 메커니즘입니다.

리브라(Libra): 페이스북이 제안한 암호화폐로 2020년 출시 예정.Ethereum Improvement Proposals

Merkle Tree: Merkle Tree는 컴퓨터 과학자인 Ralph Merkle이 제안한 것으로, 해시 함수에 의해 형성된 트리이기 때문에 중국어로 Merkle tree로 번역됩니다.Two-way bridges between eth1 and eth2

인용하다:Ethereum 2.0 (Serenity) Phases

인용하다:ethfans

인용하다:eth2 quick update

인용하다:

开发者
ETH
Odaily 공식 커뮤니티에 가입하세요