Ethereum 스케일링 솔루션의 진행 상황은 어떻습니까?
편집자 주: 이 기사의 출처는블록체인 베이스캠프편집자 주: 이 기사의 출처는
블록체인 베이스캠프
블록체인 베이스캠프
(ID: blockchain_camp), 출처: Breakermag, 저자: Andreas Wallendahl, 번역가 | Guoxi, 담당 편집자 | George, Odaily의 승인을 받아 재인쇄됨.
확장성은 항상 이더리움의 주요 페인 포인트였으며, 이더리움 2.0의 업그레이드 계획에서 확장성 개선은 국가의 절반을 차지합니다. 이더리움 2.0 계획이 나온 지 반년이 지난 오늘, 확장성 문제는 개선되었나요?
이 기사는 주로 기존 이더리움 확장성 솔루션과 이들이 만들어내는 장단점에 대한 개요를 제공하는 동시에 블록체인 개발자를 위한 몇 가지 기본 확장성 솔루션을 요약합니다.
확장성에 대해 무엇이 그렇게 어려운가요?
확장성 문제가 왜 그렇게 어려운가요? 저는 종종 "확장성 트릴레마(또는 트릴레마라고도 함)"에 대해 이야기합니다. 왜냐하면 블록체인은 다양한 속성 간에 균형을 이루어야 하기 때문입니다. 모든 블록체인은 탈중앙화, 확장성, 보안의 3가지 속성을 동시에 얻기가 쉽지 않습니다.
— Vitalik Buterin, 이더리움 공동 설립자, 2017년 11월
비트코인과 이더리움과 같은 무허가 퍼블릭 블록체인은 첫 번째 레이어에서 탈중앙화와 보안이라는 두 가지 속성을 최적화하기로 선택했기 때문에 확장성이 좋지 않습니다.
이러한 블록체인에서 모든 참가자는 상대적으로 적은 시간과 자본 투자로 검증자가 될 수 있습니다.낮은 임계값은 작업 증명에 참여하기 위해 수천 개의 마이닝 노드를 끌어들여 51% 컴퓨팅 파워 공격의 영향을 받는 블록체인을 보호합니다. 탈중앙화의 정도는 높은 수준의 보안을 가져옵니다.올해 4월 데이터에 따르면 이더리움 블록체인에서 51% 컴퓨팅 파워 공격을 실행하는 비용은 시간당 10입니다.암호화폐의 큰 형으로서, 비트코인 블록체인에 대한 51% 공격은 시간당 $350,000입니다.
높은 수준의 탈중앙화와 높은 보안 덕분에 이더리움은 사람들의 사랑을 받아 글로벌 블록체인 경제에서 첫 번째 선택이 되고 탈중앙화 응용 프로그램을 위한 좋은 플랫폼을 제공합니다.
그러나 이더리움의 탈중앙화와 보안 뒤에는 확장성 측면에서 엄청난 희생이 있었습니다. 이더리움의 단순 트랜잭션에 대한 이론적 처리 속도 제한은 초당 14-15 트랜잭션이지만 현재 이더리움은 초당 5 트랜잭션 정도만 처리할 수 있으며 초당 6 트랜잭션에 도달하면 부하가 과부하됩니다. 이는 글로벌 플랫폼은 말할 것도 없고 주류 소비자 앱이나 금융 앱에 비해 너무 작은 규모입니다.
이더리움의 확장성에 대한 가장 큰 제약은 이더리움과 같은 무허가형 퍼블릭 블록체인이 모든 트랜잭션을 확인하기 위해 모든 마이닝 노드가 필요하다는 것입니다.
—— Josh Stark, "이더리움의 2계층 확장성 솔루션에 대한 심층적 이해"
이렇게 심각한 문제가 있는데 전체 이더리움 커뮤니티가 그냥 가만히 앉아만 있을 수 있을까요? 아니요, 사실 이더리움 재단은 확장성이 중요한 역할을 하는 이더리움 2.0의 블록체인 인프라 업그레이드를 위한 완전한 계획 로드맵을 가지고 있습니다. 즉, 향후 몇 년 동안 이더리움은 확장성 문제를 해결하는 데 집중할 것입니다.
그러나 멀리 갈증을 해소할 수 없습니다. 지금 구축하고 있는 애플리케이션에 확장성이 필요한 경우에는 어떻게 해야 합니까? 물론 특정 사용 시나리오에 따라 다릅니다. 향후 이더리움 2.0이 확장성 측면에서 큰 성공을 거두더라도 모든 트랜잭션을 이더리움 메인넷/첫 번째 레이어로 보내고 싶지 않을 수 있으며 여전히 두 번째 레이어 솔루션을 선택할 것입니다.
오늘날 이더리움에는 여전히 다음과 같은 세 가지 주요 문제점이 있습니다.
느린 속도: 트랜잭션 처리량이 너무 낮고 때때로 트랜잭션 수가 블록체인의 용량을 초과하여 블록체인 네트워크에서 높은 대기 시간을 유발할 수 있습니다.
비싸다: 사용자는 트랜잭션마다 가스 요금을 지불해야 하며 트랜잭션 수가 증가함에 따라 가스 요금과 이더리움 가격도 그에 따라 상승합니다.
사용자 경험은 시급히 개선되어야 합니다. 사용자는 각 트랜잭션에 서명해야 하며 트랜잭션이 블록체인에서 확인될 때까지 다음 트랜잭션을 시작할 수 없습니다.
확장성 솔루션은 무엇입니까?
다음으로 업계에서 이미 구현된 확장성 솔루션에 대해 이야기하겠습니다. 여기서는 가장 일반적으로 사용되는 5가지 솔루션에 대해서만 설명합니다. 물론 이것이 전부는 아닙니다. 또한 업계에서 개선할 수 있는 영역이 많이 있습니다. 블록체인 오프체인 컴퓨팅과 같은 블록체인 트랜잭션 처리량을 위한 확장성 솔루션은 공간상의 이유로 여기에서 논의하지 않습니다.
블록체인 오프체인 트랜잭션 서명(메타 트랜잭션): 이더리움의 공개 키와 개인 키 쌍을 사용하여 블록체인 체인에서 트랜잭션에 서명하고 트랜잭션을 로컬에 저장하거나 전송하고 P2P 형식으로 전송할 수도 있습니다. , 최종 거래가 블록체인으로 보내지면 거래 내용과 디지털 서명에 따라 블록체인의 상태가 업데이트됩니다(예: 투표 추가( #votes ), 이더리움 오라클 머신의 가격 업데이트( 오라클 )).
상태 채널: 블록체인 체인에서 거래 상대방 간에 설정된 연결이며, 각 트랜잭션은 현재 상태를 업데이트하고 최종 상태는 트랜잭션을 통해 블록체인에 기록됩니다.
사이드 체인 및 브리지(브리지): 트랜잭션 브리지 스마트 계약 및 해당 트랜잭션 릴레이 메커니즘을 통해 이더리움의 전체 기능을 포함하는 사이드 체인이 이더리움의 메인 네트워크에 고정됩니다.
보조 제목


확장성 솔루션의 장단점
각 솔루션의 보안, 처리량, 가용성 및 사용 비용은 어떻습니까? 아래 표는 자세한 요약을 제공합니다.
보조 제목
각 솔루션의 원칙 및 구체적인 구현
아래에 설명된 확장성 솔루션은 모두 오픈 소스이며 기본적으로 지원되며 분산 응용 프로그램에서 사용할 수 있습니다. 그러나 이러한 확장성 솔루션은 아직 개발 단계에 있으며 애플리케이션이 메인넷에서 실행되기 전에 보안을 주의 깊게 감사해야 합니다.
사용 편의성을 위해 아직 구현되지 않았거나 코드가 아직 오픈 소스가 아닌 확장성 솔루션은 여기에 나열되지 않습니다.
1. 블록체인 기반 트랜잭션 서명(메타 트랜잭션)
사용자는 이더리움 공개 키와 개인 키 쌍을 사용하여 블록체인 체인에서 거래에 서명하고 공개 키와 개인 키 쌍은 keccak256 해시 알고리즘으로 계산할 수 있습니다.
이 서명된 트랜잭션은 IPFS(InterPlanetary File System) 또는 데이터베이스에 저장한 다음 이더리움 메인넷의 트랜잭션에 배치로 추가할 수 있습니다.
예를 들어, 이더리움 메인넷에서 무언가의 소유권을 주장하려는 경우 각 주장에 대해 별도의 트랜잭션을 발행하는 대신 이러한 주장을 메인넷에서 하나의 트랜잭션으로 집계할 수 있습니다.
이 트랜잭션을 point-to-point 로그 저장 시스템 scuttlebot을 통해 point-to-point로 전달할 수 있으며 수신자가 공개 키를 통해 트랜잭션이 유효한지 확인하면 해당 트랜잭션을 스마트 계약의 오라클 입력으로 사용할 수 있습니다. 이더리움 메인넷.
트랜잭션 설정이 허용하는 경우 스마트 계약은 트랜잭션을 수신한 후 트랜잭션 내용을 실행할 수 있습니다.
https://cryptoeconomics.study/
베를린에서 열린 Ethereum Developers Conference에서 스테이블코인 MakerDAO 팀은 오프체인 트랜잭션 서명 방식을 기반으로 한 오프체인 가격 오라클 솔루션을 제안했습니다.
https://view.ly/v/Rt275OYzLCI1
참조 리소스
https://blog.ethereum.org/2014/07/22/ethereum-and-oracles/
Karl Floersch: 해시 함수 및 트랜잭션 서명에 대한 기본 자습서
Mario Conti: 오프체인 트랜잭션 서명을 기반으로 한 가격 오라클
Vitalik Buterin: 이더리움 오라클
2. 결제 채널 및 상태 채널
주 채널
트랜잭션의 양 당사자는 스마트 계약에서 블록체인의 초기 상태(예: 각 당사자의 계정 잔액)를 잠급니다. 이는 단순히 다중 서명 지갑으로 생각할 수 있습니다. 이렇게 하면 양 당사자가 잠금을 해제하기 위해 서명할 때까지 상태 채널이 작동하는 동안 스마트 계약의 자금이 동결된 상태로 유지됩니다.
트랜잭션의 두 당사자는 각자의 계정 잔액 업데이트와 같은 상태 업데이트를 지속적으로 전달하여 트랜잭션을 수행합니다. 양 당사자가 최종 상태 업데이트에 동의하는 한 언제든지 공동 서명하여 스마트 계약에 잠긴 자금을 잠금 해제할 수 있습니다.
양 당사자가 거래를 완료하면 각각 스마트 계약에 상태 업데이트를 제출합니다. 상태 업데이트가 일치하면 최종 상태(예: 각 당사자의 계정 잔액)가 블록체인에 기록되며 이는 일반적으로 상태 채널이 열렸을 때의 초기 상태와 동일합니다.
결제 채널
상태 채널은 이더리움 및 ERC-20 토큰으로만 표시될 수 있지만 결제 채널에는 이러한 제한이 없습니다.
지불 채널의 간소화된 구조는 지불 채널이 하나의(또는 극소수의) 상태인 순 잔액만 업데이트하기 때문에 더 많은 처리량과 더 효율적인 설계를 허용합니다.
분쟁이 있는 경우 어떻게 해야 합니까?
프로토콜 설계에 따르면 트랜잭션의 양 당사자가 서명한 각 상태 업데이트에는 각 상태 업데이트를 식별하기 위해 고유한 난수(nonce)가 할당됩니다. 분쟁 발생 시 난수의 최신 상태를 참고 자료로 사용합니다.
거래에서 당사자 A가 상태 업데이트를 제출하면 그의 도전 기간도 시작됩니다. 이 기간 동안 당사자 B는 더 새로운 nonce로 상태 업데이트를 제출할 수 있습니다. 당사자 B가 상태 업데이트를 제출하지 않고 챌린지 기간 타이머가 만료되면 스마트 계약은 새로운 난수를 가진 상태(즉, 당사자 A가 마지막으로 제출한 상태)를 최종 상태로 선택하고 이 상태를 블록체인을 사용하고 이 상태를 따르십시오. 자금을 잠금 해제하고 반환하십시오.
기존 프로젝트 및 구현
Ethereum Raiden: 거의 즉각적이고 낮은 수수료와 확장 가능한 트랜잭션을 가능하게 하는 결제 채널 솔루션입니다. 라이트닝 네트워크는 이더리움 블록체인의 완벽한 기능이며 모든 ERC-20 토큰과 호환됩니다.
Connext: Connext는 오픈 소스 P2P 소액 결제 인프라를 구축하고 있습니다. 첫 번째 제품은 이더리움 블록체인의 결제 채널을 사용하여 많은 블록체인 오프체인 트랜잭션을 소수의 온체인 트랜잭션으로 통합할 수 있습니다.
3. 사이드 체인 및 트랜스퍼 브리지
전송 브리지(또는 릴레이)는 각각의 합의 알고리즘을 실행하는 사이드 체인에서 이더리움 메인 네트워크로 트랜잭션 정보를 전송합니다. 메인넷에서 자금 또는 상태(또는 둘 다)를 잠그고 사이드체인에서 탈중앙화 애플리케이션을 실행하여 거래를 수집하고 처리합니다.
사용자는 이더리움 메인넷의 Ether/ERC-20 토큰을 브리지 스마트 계약에 예치합니다.
이 기간 동안 분산형 애플리케이션은 계속 실행되며 모든 트랜잭션이 완료되면 사용자는 이더리움 메인넷에서 자신의 이더리움/ERC-20 토큰을 검색할 수 있습니다.
사용자는 입금과 출금의 두 거래에 대한 수수료만 지불하면 됩니다.
사이드 체인에서 실행되는 트랜잭션의 경우 사용자는 더 적은 트랜잭션 수수료를 지불해야 할 수도 있습니다.사이드 체인 Loom과 POA 모두 운영 비용이 있으므로 Loom은 Loom 토큰 형태의 수수료로 탈중앙화 애플리케이션에 요금을 청구하고 POA 사용자는 그에 대한 비용을 지불해야 합니다. 사이드 체인의 POA 토큰 형태의 가스.
Parity Bridge Ropsten-Kovan Ether-ERC20 Test Deployment
사이드체인에서 가스 비용을 없애기 위해 프라이빗 블록체인에서 dapp을 실행할 수 있지만 그렇게 하는 데 가장 큰 문제 중 하나는 프라이빗 블록체인에서 채굴할 채굴자를 유치해야 한다는 것입니다.
참조 리소스
https://wiki.parity.io/Bridge
동영상 보기: Ropsten 및 Kovan Ethereum 테스트 네트워크에서 Ether/ERC-20 토큰을 사용한 패리티 브리지 테스트 배포
https://github.com/poanetwork/poa-bridge-contracts
블록체인 자산 관리 회사인 Melonport와 블록체인 플랫폼 회사인 Colony는 Parity 브리지 구현 및 테스트를 시작했으며 분산형 상거래 플랫폼 Swarm.City와 블록체인 비영리 Giveth는 브리지에서 메시징을 테스트하고 있습니다.
전송 브리지 기술에 대한 자세한 설명:
전환 브리지 스마트 계약 코드:
기존 프로젝트 및 구현
POA 네트워크는 스마트 계약을 위한 오픈 소스 프레임워크를 제공하는 것을 목표로 하는 이더리움 기반 플랫폼입니다.
POA 네트워크는 합의 메커니즘 측면에서 권한 증명(POA)을 사용하는 이더리움의 사이드체인 솔루션입니다.

Loom은 매우 높은 처리량이 필요한 소셜 및 게임과 같은 분산 응용 프로그램을 위해 설계된 이더리움 레이어 2 확장성 솔루션입니다. 개발자는 Loom 소프트웨어 개발 키트(SDK)를 사용하여 확장성에 최적화된 사이드체인을 구축할 수 있습니다: DPoS 합의 메커니즘을 사용하는 탈중앙화 애플리케이션 블록체인(dAppChain).
SKALE의 탄력적 사이드체인은 표준 사이드체인의 모든 이점을 계승하는 동시에 완전히 분산된 네트워크가 제공하는 보안 보장도 제공합니다. 탄력적 사이드 체인은 강력한 성능, 구성 가능성 및 Ethereum/Web3 프로토콜과의 호환성을 특징으로 합니다.
4. 플라즈마 체인
플라즈마 체인 기술 개요
플라즈마 체인을 초기화하고 스마트 계약을 작성하여 루트 블록체인에 제출합니다.
트랜잭션은 플라즈마 체인에서 실행되며 플라즈마 체인은 정기적으로 데이터(플라즈마 체인의 블록 해시)를 루트 블록체인에 제출합니다.
플라즈마 체인의 합의 규칙은 사기 증명을 기반으로 합니다. 블록이 유효하지 않은 경우 누구나 블록 무효화 증거를 제출하여 블록체인을 롤백할 수 있습니다.
각 플라즈마 체인은 특수 목적의 분산 응용 프로그램에 최적화된 자체 규칙을 가질 수 있습니다.
기존 프로젝트 및 구현


