메타캣 번역
요약
2017년[1] 최초의 TON 백서가 작성된 이후 솔라나, 이더리움 2.0 등 새로운 블록체인 프로젝트가 다수 등장했습니다. 이 기사에서는 TON과 이러한 대표적인 블록체인 프로젝트 중 일부를 비교합니다. 대표적인 블록체인 프로젝트들과 비교해보겠습니다.
1. 비교 형태
원본 TON 백서의 섹션 2.8과 2.9에 따른 블록체인 프로젝트 분류에 따른 비교 형태
1.1 비교 가이드라인
원본 백서의 다음 기준에 따라 블록체인 프로젝트들을 분류했습니다. 자세한 설명은 TON 백서 2.8절[1]을 참고하세요:
단일 블록체인/다중 블록체인 프로젝트
합의 알고리즘: 작업증명(PoW)) / 지분증명(PoS)(proof-of- stake)
지분증명 프로젝트의 경우, 정확한 합의 알고리즘(예: dPOS 또는 BFT)
임의적(튜링 완전) 스마트 컨트랙트를 지원하는 멀티 블록체인 프로젝트의 경우, 다음 문제를 추가로 고려해야 합니다.
1. 회원 블록체인의 유형과 규칙: 동종, 이종, 하이브리드
2 마스터 체인의 존재
3 샤딩, 정적 및 동적 샤딩에 대한 기본 지원
4 블록체인 간의 상호작용: 느슨하게/밀접하게 결합
이 외에도 TON 백서[1]의 단순화된 분류 블록체인 프로젝트[1]에서 2.8.15와 가장 인기 있는 블록체인 프로젝트의 기본 속성을 담은 표는 2.9절의 시작 부분에 나와 있습니다.
2. 솔라나
2.1 솔라나 개요
솔라나[2]는 2020년대에 다소 특이한 프로젝트입니다: 특수한 거래를 매우 빠르게 실행하는 데 최적화된 단일 블록체인 프로젝트입니다. 특수화된 트랜잭션을 매우 빠르게 실행하는 데 최적화되어 있습니다. 이 점에서 EOS[8](2016~2018년 개발)의 전신인 비트셰어스 프로젝트[9](2013~2014년 개발)와 유사하지만 dPOS 대신 타워 컨센서스[3]로 알려진 PBFT[10]의 변형을 사용합니다. 솔라나는 초당 한 블록을 생성한다고 주장합니다. 블록을 생성하거나 더 빠르게 생성할 수 있지만, 이전 블록이 완료되기 전에 다음 블록이 생성되기 때문에 비용이 발생합니다(공식 블로그 게시물 [4]을 인용하면 "PBFT와 달리 타워 컨센서스는 일관성보다 활동을 선호한다. "). 이것은 단명 포크의 생성으로 이어질 수 있습니다. 검증자가 전 세계 여러 위치에 분산되어 있는 경우, 실제 블록을 완성하려면 여러 번의 왕복이 필요하므로(낙관적인 시나리오의 PBFT는 본질적으로 3단계 커밋 프로토콜입니다) 최상의 경우 몇 초가 걸립니다. 공식 문서 설명에 따르면 블록은 일반적으로 16라운드의 투표를 거쳐 확정되며, 각 라운드는 약 400밀리초가 소요될 것으로 예상되므로 6.4초의 완료 시간을 의미합니다.
타워 컨센서스는 형식적으로는 PBFT의 변형이지만, 블록 생성 시간이 길어지는 대신 블록 완료 시간이 짧아지는 dPOS 합의 프로토콜과 비교하면 유리하다고 말할 수 있습니다.
솔라나의 또 다른 흥미로운 특징은 계정 잔액을 제외하고 계정 데이터를 변경하지 않는 매우 간단한 사전 정의 트랜잭션을 실행하는 데 고도로 최적화되어 있다는 것입니다. 이를 통해 트랜잭션의 대규모 병렬 실행과 검증이 가능합니다. 이 점에서 솔라나는 짧은 블록 생성 시간과 긴 블록 완료 시간을 가진 dPOS를 사용하는 EOS의 전신인 비트셰어와 유사하며 매우 간단한 사전 정의 트랜잭션의 대량 실행에 최적화되어 있습니다. 또한, 솔라나는 하이엔드 GPU에서 트랜잭션의 올바른 순서를 검증하는 데 걸리는 시간이 트랜잭션 생성에 걸리는 시간보다 수천 배 더 빠를 수 있도록 설계되었습니다.
마지막으로 솔라나는 계정 상태를 변경하지 않고 너무 많은 데이터를 요구하지 않으며 모든 계정의 모든 데이터가 RAM에 들어맞는 경우에만 초당 최대 70만 건의 단순 트랜잭션([11]에 따르면 70만 건이 아닌 65,000건)을 실행할 수 있다고 주장합니다. 경우. 이 역시 몇 년 전 비트셰어즈[9]가 약속했던 것과 매우 유사합니다. 가장 큰 차이점은 비트셰어즈와 달리 솔라나는 블록체인 소프트웨어가 미리 정의하지 않은 거래 유형을 지원한다는 것입니다. 이를 위해 버클리 패킷 필터라는 가상 머신의 변형이 사용되며, 미리 컴파일된 프로그램을 솔라나 블록체인에 업로드할 수 있습니다. 블록체인에 업로드하여 트랜잭션에서 참조할 수 있습니다 [12][13] Solana는 공식적으로 튜링 완전성이 있지만, 일반적으로 참조되는 성능 지표는 매우 간단한 사전 정의 트랜잭션과 모든 계정의 모든 데이터가 RAM에 저장되는 경우에만 해당되므로 비트쉐어와의 비교는 여전히 유효하다고 판단됩니다.
요약하자면, 솔라나는 TON 백서 2.8.15의 용어로는 "3세대 블록체인 프로젝트 대안"이며[1], 궁극적으로 EOS[8]의 전신인 비트쉐어[9]와 매우 유사하지만 최적화가 더 이루어졌습니다. 최적화. 공식적으로는 튜링 완전형이지만 실제로는 미리 정의된 많은 유형의 매우 간단한 트랜잭션 또는 더 적은 수의 일반적인 트랜잭션만 수행할 수 있으며, 평균적으로 초당 한 블록 이상을 생성할 수 있고 향후 하드웨어 업그레이드를 통해 초당 70만 개의 간단한 트랜잭션을 수행할 수 있다고 주장합니다(실제는 70만 개가 아닌 65,000개로 보입니다[11]). 본질적으로 확장 불가능하고 특화된 단일 블록체인 프로젝트이며, 완전한 재설계 없이는 샤딩 또는 다른 작업 체인을 지원하지 않거나 제공할 가능성이 낮습니다(이러한 재설계가 매우 어려운 이유에 대한 설명은 TON 백서 [1] 2.8.16을 참조하시기 바랍니다). 이 점에서 <강력>TON은 복잡한 스마트 컨트랙트를 즉시 배포할 수 있고, 트랜잭션 및 블록 확정 시간이 짧은 합의 메커니즘과 가장 중요한 동적 샤딩 덕분에 더 높은 수준의 보안을 제공하는 EOS [8]와 비교하면 유리합니다. 후자는 부하가 증가함에 따라 블록체인을 점점 더 많은 샤딩 체인으로 자동 확장하여 단일 블록체인 아키텍처로는 불가능한 확장성을 제공합니다(예: 솔라나에서 구현된 것처럼). 당연히 솔라나의 전신인 단일 블록체인 또는 샤딩을 지원하지 않는 EOS와 같은 느슨하게 결합된 멀티 블록체인 프로젝트는 초기에는 화려해 보였지만, 이러한 개념이 필연적으로 확장성과 안정성에 부정적인 영향을 미치는 한계에 부딪히면서 수명이 짧았습니다. 는 것으로 판명되었습니다. /2021년 9월에 발생한 솔라나 블록체인[5] 충돌의 초기 징후에 따르면, 예상치 못한 거래 급증으로 인해 "메모리 오버플로가 발생"하여 많은 검증자가 붕괴되었고, 이로 인해 네트워크가 느려지고 결국 중단된 후 블록체인이 실제로 17시간 동안 멈췄던 것으로 나타났습니다. 이로 인해 많은 검증인이 충돌하여 네트워크가 느려지고 결국에는 중단되었습니다."라고 서비스 중단을 설명하는 공식 문서에서 인용하고 있습니다. 이는 소수의 다른 계정만 포함되고 단일 데이터 센터 또는 인근 여러 데이터 센터에 수백 개의 강력한 검증 서버가 위치한 매우 특정한 테스트 환경에서 실행되는 특수 목적의 매우 단순한 거래가 아닌 실제 거래에서 솔라나의 향후 성능에 의문을 갖게 합니다. 트론이 이 점에서 훨씬 더 견고한 것으로 보입니다.
2.2 메타포: 솔라나는 초증기 기관차
솔라나는 잘 알려진 내재적 한계를 한계까지 밀어붙인 오래된 엔지니어링 방법론의 흥미로운 예입니다. 따라서 기술 역사에서 우리가 지금 연결하고자 하는 몇 가지 유사한 사례를 떠올리게 합니다. 그 중 하나는 물론 1938년 영국의 LNER A4 4468 청둥오리 증기 기관차가 세운 203km/h의 세계 신기록입니다. 정기 여객 서비스 중에는 이 평균 속도에 도달하지 못했지만 150km/h로 달렸습니다. 하지만 당시에는 증기기관차, 디젤기관차, 전기기관차 등 모든 기관차 부문에서 세계 신기록을 보유하고 있었습니다. 그럼에도 불구하고 기술적으로 막다른 골목이었으며 이후 일본 신칸센, 프랑스 TGV 또는 독일 ICE와 같은 모든 고속 열차는 다중 유닛 전기 열차입니다. 흥미롭게도 현대의 모든 고속 열차는 이와 같습니다.
다량 유닛 전기 열차란 증기 기관차가 끄는 기존 열차와 달리 각 객차에 엔진이 하나 또는 두 개 이상의 엔진이 있다는 것을 의미합니다. 우리는 세분화의 힘을 보았습니다. 1938년에도 미래는 전기 열차에 있다는 것이 분명했던 이유를 알 수 있었습니다. 전기 엔진은 열차 전체에 쉽게 확장하고 분산할 수 있는 반면 증기 기관 기술은 이런 식으로 확장할 수 없었기 때문입니다.
두 번째로 떠오르는 기술 사례는 2000년대 초 인텔의 펜티엄 4 CPU입니다. 인텔은 이 프로세서의 클럭을 수년에 걸쳐 점진적으로 최대 10GHz까지 끌어올리고 전례 없는 수준의 성능을 달성하겠다고 약속했습니다. 실제로 펜티엄 4는 이전 세대 펜티엄 3보다 실제 코드가 더 느리고 낮은 클럭 주파수로 실행되었으며, 인텔은 4GHz 경계에 도달한 후에도 당초 약속한 클럭 주파수 증가를 실현하지 못했습니다. 그 후 인텔은 CPU 개발 로드맵을 완전히 재고하고 본질적으로 클럭 속도는 낮지만 단일 물리적 장치에 점점 더 많은 CPU 코어가 설치된 펜티엄 3 아키텍처(인텔 제온 또는 인텔 코어 2로 이름 변경)로 되돌아갔습니다. 이 접근 방식은 확장성과 내구성이 더 뛰어난 것으로 입증되었고, 이제 필요에 따라 64코어 프로세서를 구입할 수 있게 되었습니다. 단일 컴퓨팅 코어를 점점 더 빠르게 만드는 것에 기반한 접근 방식이 실패한 것과 마찬가지로, 멀티코어 접근 방식(블록체인의 다중 유닛 열차 및 샤딩에 비유할 수 있음)은 실행 가능한 것으로 판명되었습니다.
세 번째 기술 이야기는 1970년대와 1980년대에 인기를 끌었지만 이후 수천 개의 상용 CPU 클러스터(일반적으로 인텔 및 AMD CPU의 서버 버전)로 대체된 Cray와 같은 슈퍼컴퓨터에 대한 이야기입니다. 오늘날 상위 100대 슈퍼컴퓨터는 모두 상용 CPU 클러스터입니다. 다시 한 번 '슬라이싱' 또는 '멀티셀 시스템'이 싱글셀 시스템의 초최적화를 제치고 승리했습니다.
고대 기술 패러다임에서 가능한 모든 기술적 최적화를 활용했지만 궁극적으로 확장 불가능하고 기술적 막다른 골목이었던 슈퍼 증기 기관차와 솔라나를 비교하면서 기술 역사에 대한 탐구를 마무리하고자 합니다. 우리는 이러한 경이로운 기술을 설계하고 작동하는 데 사용된 독창성에 박수를 보내고 감탄할 수 있지만, 여전히 기술적 막다른 골목으로 남아 있습니다.
3. 이더 2.0
2022년 현재 이더 2.0의 개발과 배포가 아직 불완전하다는 사실 때문에 TON과 이더 2.0의 비교는 다소 복잡합니다. 현재 알려진 내용을 설명하겠습니다[6]-[7].
이더 2.0으로의 전환은 여러 단계로 진행될 것입니다. 먼저, 새로운 비콘 블록체인(비콘 체인)[6]이 배포됩니다(원래 TON 백서의 용어로는 메인체인과 유사하게 작동합니다). 이 비콘 블록체인은 캐스퍼라는 독창적인 지분 증명 합의 알고리즘을 사용할 것입니다. 캐스퍼의 주요 목적은 최대 64개의 샤드 체인(보조 블록체인)의 상태(마지막 블록의 해시)를 등록하는 것입니다. 권장되는 지분 증명 알고리즘은 많은 수의 검증자(최소 16,384명)가 참여하며, 각 검증자는 소량의 이더리움(각 32개)을 약속한다는 점에서 이례적입니다. 이러한 검증자는 기본적으로 32개의 이더를 약정하는 일반 이더 노드입니다. 블록 및 메모리 풀 전파에 관련된 일반적인 이더 네트워크 문제를 제외하고는 이러한 노드 간에 특별한 통신이 필요하지 않습니다. 이러한 점에서 이더 2.0은 매우 "민주적"인 것처럼 보입니다(다른 거의 모든 지분 증명 블록체인 프로젝트는 특정 순간에 수십 명 또는 최대 수백 명의 검증자가 실제 블록 생성에 관여하는 다소 "과두적"인 방식입니다). 그러나 여기에는 대가가 따릅니다. 블록 검증 시간은 비콘 블록체인과 64개 샤드 체인 모두 약 10~15분 정도 소요되는 것으로 보입니다. 즉, 트랜잭션이 실제로 완료되었는지 확인하기 위해 10~15분 정도 기다려야 한다는 뜻입니다.
가상 전환의 두 번째 단계는 기존 이더 1.0(작업 증명) 블록체인을 새로운 비콘 블록체인과 연결된 64개의 슬라이스 체인(예: 제로 슬라이스 체인) 중 하나로 변환하는 것으로 구성됩니다. 그 후에는 작업 증명 합의 메커니즘이 비활성화되고 이더는 지분 증명 블록체인으로 계속 유지됩니다.
마지막으로 세 번째 단계에서는 63개의 다른 샤드 체인이 생성됩니다[7]. 따라서 이더는 64개의 샤드 체인으로 구성되며, 그 중 하나는 기존 이더 1.0 블록체인과 주로 서약, 차단(잘못된 행동을 하는 검증자 처벌), 합의 도달, 샤드 체인 해시 등록을 전담하는 메인 체인인 비콘 블록체인이 될 것입니다.
현 단계에서는 새로운 63개 슬라이스 체인의 정확한 기능이 무엇이며, 서로 어떻게 상호 작용할지 명확하지 않습니다. 이러한 정보 없이는 여러 블록체인 시스템을 비교하는 작업을 완료할 수 없습니다. <하지만 만약 샤드 체인 간에 메시징이 도입된다면, 메시지를 보낸 샤드 체인 블록이 최종적으로 식별될 때까지 10~15분 정도 기다려야 다른 샤드 체인에서 메시지가 처리될 수 있을 것입니다. 이것이 현재로서는 샤딩 체인 상호작용을 고려하지 않는 이유인 것 같습니다. 또한, 추가 슬라이스는 현재로서는 EVM 스마트 콘트랙트를 전혀 실행할 수 없어야 합니다(향후에 재고될 수 있다는 징후가 있긴 하지만)[7]. 대신 분산 원장의 추가 데이터 저장소로 사용해야 합니다. 임의의 스마트 컨트랙트를 실행하는 데 사용되는 것이 아니라, 이전에 플라즈마 프로젝트에서 제안한 것과 유사한 오프체인 또는 레이어 2 블록체인 연산(비트코인의 결제 채널 또는 라이트닝 네트워크와 유사)을 완료하는 데 사용됩니다(원래 TON 백서 2.9.10에서 논의됨).
p>이러한 방식으로 이더 2.0은 파편화된 체인 상호작용, 서로 다른 파편화된 체인에 있는 스마트 콘트랙트 간의 메시지 전달 등의 문제를 완전히 피할 수 있을 것으로 보입니다. 대신, 미래의 이더 사용자는 모든 트랜잭션을 서로 관련이 없는 사이드체인에서 실행하고 이더 2.0의 샤딩된 체인을 사용하여 해당 사이드체인의 최종 상태를 완성할 것으로 예상됩니다. 이러한 의미에서 이더 2.0은 현재 초당 15건의 트랜잭션에서 초당 수만 건의 트랜잭션으로 확장할 수 있다고 주장합니다. 저희는 일관성과 완결성이 보장되는 트랜잭션 유형이 서로 다르기 때문에 이러한 주장은 오해의 소지가 있다고 생각합니다. 현재 초당 15건의 트랜잭션은 일반적으로 온체인 튜링 완결형 EVM 스마트 콘트랙트에 의해 실행되며, 가까운 미래에 약속된 수만 건의 "트랜잭션"은 상당히 다르며 제한된 수의 참여자가 참여하는 매우 특수한 트랜잭션일 수 있으며, 이는 생성된 후에야 일반적으로 가시화됩니다. 이를 라이트닝 네트워크가 있을 때와 없을 때의 비트코인 성능과 비교할 수도 있습니다.
그러나 이 경우 톤 블록체인 샤드 체인에 존재하는 스마트 콘트랙트에 묶여 있는 결제 네트워크 내의 모든 가능한 결제 채널과 '거래'를 포함하여 톤 블록체인에 대한 참조도 허용되어야 합니다. 따라서 이더 2.0이 초당 수만 건의 "트랜잭션"(실제로는 사이드체인 및 결제 채널 트랜잭션을 의미)을 실행할 수 있다는 것을 인정한다면, 이 정의에 따라 TON은 초당 수십억 건의 "트랜잭션"을 실행할 수 있을 것입니다.
요약하면, 이더 2.0은 EVM과 스마트 컨트랙트 상호작용 모델을 완전히 재고하고(자세한 내용은 오리지널 TON 백서[1]의 2.8.16을 참조하세요) 63개의 추가 조각화 체인(완료 시간은 10-15분)으로 오리지널 이더 2.0 블록체인을 보강하지 않으면 해결할 수 없는 정말 복잡한 조각화 체인 상호작용 문제를 회피하는 것처럼 보이지만, 이는 사실이 아닙니다. ) 사이드체인과 결제 채널의 최종 상태만을 저장하기 위해 원래 이더리움 블록체인을 보강하는 것입니다[7]. 이는 다소 패배주의적인 접근 방식이며, 세계에서 두 번째로 오래된 핵심 블록체인 프로젝트가 튜링 완전형 스마트 컨트랙트를 최초로 도입하는 등 더 야심찬 계획을 세울 것으로 예상할 수 있습니다!
현재 구상 및 테스트 중인 이더 2.0의 목표는 기존 TON 구현에서 이미 달성한 속도와 다용도성 수준을 달성하는 것이 아닙니다.
4. 결론
TON 블록체인은 2017년에 처음 구상되고 설명되었습니다. 백서[1]는 스마트 컨트랙트 로직 및 상호작용과 관련된 본질적인 변경 없이 초당 수백만 건의 트랜잭션을 처리할 수 있는 확장 가능한 블록체인 프로젝트를 구축하기 위해 TON이 선택한 설계가 왜 필요했는지 자세히 설명합니다. 이것이 바로 당시 유일한 5세대 블록체인 프로젝트로 TON이 선정된 이유입니다.
그 이후 새로운 블록체인 프로젝트가 등장했습니다. TON 백서에서 언급한 기존 블록체인 프로젝트의 한계를 극복하고 블록체인 개발에 대한 새로운 접근 방식을 제시할 것으로 기대할 수 있습니다. 하지만 2017년에도 이미 시대에 뒤떨어진 아이디어를 기반으로 한 블록체인이 다시 등장하고 있습니다. 예를 들어 솔라나는 2019년부터 설계되고 있으며, TON 백서의 용어로는 EOS의 전신인 2013년 비트쉐어 프로젝트와 같은 유형의 본질적으로 확장 불가능한 "3세대 블록체인 프로젝트"에 대한 대안입니다. 독자들이 솔라나가 비슷한 성능을 제공한다고 주장하는 별것 아닌 2013년 프로젝트와 반복적으로 비교되는 것에 좌절감을 느낀다면, 그만한 이유가 있을 수 있습니다. 과거를 통해 미래를 어느 정도 예측할 수 있다면 솔라나가 출범 9년 후(즉, 2028년) 동일한 어려움에 직면할 것이라고 예측할 수 있기 때문입니다. 또한, 원래 TON 백서에서 설명한 이유 때문에 솔라나에 슬라이스를 추가하여 고유의 비확장성을 극복하는 것은 사실상 불가능합니다. 저희를 실망시킨 또 다른 블록체인 솔루션은 이더 2.0으로, 이더의 주요 성과인 튜링 완전 스마트 컨트랙트를 본질적으로 상쇄하고 결국에는 특별히 유용하지 않다고 주장합니다. 반면에 이더 2.0은 솔라나와 관련하여 위에서 언급한 일반적인 원칙, 즉 샤딩과 확장성을 고려하지 않으면 원래 설계된 대로 블록체인 프로젝트에 개조할 수 없다는 점을 잘 보여줍니다는 좋은 예시입니다.
2022년 현재, TON 블록체인은 진정한 확장성을 갖춘 몇 안 되는 블록체인 프로젝트 중 하나로 남아 있습니다. 따라서 초당 수백만 건의 트랜잭션을 실행할 수 있는 가장 진보된 블록체인 프로젝트(원래 백서에서는 "5세대")로 남아 있으며, 향후 필요한 경우 최소한의 내부 변경으로 초당 수천만 건의 진정한 튜링 완전 스마트 컨트랙트 트랜잭션을 실행할 수 있습니다. 창립 이후 5년 동안 범용 블록체인 기술의 선두에 서 있습니다.
2017년 이후 지난 몇 년간 개발된 TON 기술의 구현을 기반으로 다양한 테스트 및 메인 네트워크의 높은 성능은 TON 백서에 제시된 아키텍처 접근 방식의 효율성을 더욱 검증했습니다.
참고자료
[1] TON 백서, 온라인에서 https://ton-blockchain. github.io/docs/ton.pdf
[2] 솔라나: 고성능 블록체인을 위한 새로운 아키텍처 v0.8.13, https:// solana.com/solana-whitepaper.pdf
[3] Tower BFT: 솔라나 PBFT의 고성능 구현, 17.07.2019, https://medium.com/solana-labs/tower-bft-solanas-high- performance-implementation- of-pbft-464725911e79
[4] 솔라나를 최초의 웹 등급 블록체인으로 만드는 8가지 혁신, https://solana.com/news/8- 솔라나를 최초의 웹-스케일 블록체인으로 만드는 8가지 혁신, https:/
[5] 설명: 시스템 중단이 솔라나의 대규모 활동을 어떻게 방해할 수 있는지, https:/. /www.cnbctv18.com/cryptocurrency/solana-sol-token-solana-outage-cryptocurrency-10822571.htm
[6 ]먼저 다음을 수행해야 합니다. 비콘 체인 이더넷 2.0 인터프리터 읽기, https://ethos.dev/beacon-chain
[7 ] 이더넷 업그레이드: 체인 오브 칩, https://ethereum.org/en/roadmap/ danksharding/
[8] EOS.IO 기술 백서, https://gith ub.com/EOSIO/Documentation/blob/master/TechnicalWhitePaper.
[9] S. Larimer, 비트셰어의 역사, 2013, https://docs.bitshares. org/bitshares/history.html
[10] M. 카스트로, B. 리스코프 외, 실용적인 비잔틴 장애 허용, 운영 체제 설계 및 구현에 관한 제3회 심포지엄 자료집 (1999), p. 173. http://pmg.csail.mit.edu/papers/osdi99.pdf
[11] 크토미르 이파벡, 솔라나, https://medium.com/crypto-articles-randomly/solana-9c432a1b84a8
[12] https://docs.solana.com/developing /on-chain-programs/
[13] https://docs. solana.com/개발/프로그래밍-모델/