Cointime.com 작성 237

Gear Protocol 은 Substrate에 구축된 스마트 계약 플랫폼으로 누구나 몇 분 안에 dApp을 개발하고 실행할 수 있습니다. 가장 친근한 개발 방식인 Gear Protocol은 임의의 논리와 복잡성으로 스마트 계약을 구현합니다. Gear 스마트 계약은 WebAssembly 프로그램으로 실행되므로 다양한 인기 프로그래밍 언어(예: Rust, C, C++ 등)를 사용하여 컴파일할 수 있습니다.
이 프로토콜은 간결하고 직관적이며 기능이 풍부한 API를 제공하여 여러 네트워크에서 프로그램을 쉽게 구현하고 실행할 수 있습니다. 기술적인 관점에서 Gear Protocol은 통신을 위한 액터 모델의 사용, 영구 메모리의 개념 및 WebAssembly 실행 환경을 포함하여 개발자가 완전히 새롭고 이전에는 달성할 수 없었던 사용자 경험을 만들 수 있는 고유한 기능을 통해 차별화됩니다. 이 프로토콜은 통신 엔티티로서 Actor의 특성을 정의합니다.
혁신적인 dApp, 마이크로서비스, 미들웨어 및 개방형 API를 지원함으로써 Gear Protocol은 Web3 기술의 대량 채택을 주도할 것입니다. Gear Network는 독립형 L1 네트워크로 작동하거나 Polkadot 및 Kusama 생태계에서 파라체인으로 작동할 수 있습니다. 개발자는 Gear Protocol에 배포함으로써 Gear가 제공하는 다양한 이점을 최대한 활용할 수 있습니다.
Vara Network는 Gear Protocol에서 독립적으로 구축되고 실행되는 최초의 Layer-1 분산 네트워크입니다.

Vara는 개발자에게 분산형 애플리케이션을 구축하고 Web3 산업을 새로운 수준으로 끌어올릴 수 있는 환경을 제공하는 것을 목표로 합니다. 누구나 자체 블록체인을 개발하지 않고도 Vara 네트워크에서 dApp을 구축하고 배포할 수 있습니다.
Vara는 Web2와 Web3 사이에 다리를 놓음으로써 개발자를 위한 차세대 분산 응용 프로그램 기회를 열고 Web3 기술 채택을 가속화하며 미래 개발을 주도합니다. WebAssembly 기반의 기본 블록체인으로서 개발자는 기존 프로그래밍 언어를 사용하여 코드를 작성하고 컴파일할 수 있습니다.
또한 Vara Network는 낮은 거래 비용, 스테이킹, 거버넌스 참여, 검증자, 지명자 및 대사 프로그램(및 향후 가스 수수료에 대한 리베이트)과 같은 기능을 제공합니다.
플랫폼 기능

Gear Protocol에는 다른 플랫폼과 차별화되는 몇 가지 고유한 기능이 있습니다.
1. 진정한 탈중앙화
다른 플랫폼과 달리 Gear 스마트 계약은 온체인 트랜잭션을 트리거하는 외부 구성 요소나 서비스 없이 자체적으로 기능을 트리거할 수 있습니다. 전통적인 스마트 계약은 일반적으로 계약을 깨우기 위해 사용자가 트랜잭션을 시작해야 하지만 많은 경우 특정 시점에 도달하거나 특정 이벤트가 발생하는 등 특정 조건이 충족되면 계약이 트리거되어야 합니다. 과거에는 이것이 스마트 계약의 기능을 제한하거나 개발자가 계약을 트리거하기 위해 중앙 집중식 서비스를 도입하도록 요구했습니다.
비동기 메시지 지원을 기반으로 하는 Gear Protocol은 계약 개발자가 지연된 메시지로 임의의 계약 로직을 구현하는 데 도움을 줄 수 있습니다. 이 계약은 지정된 시간이 지난 후 또는 특정 이벤트가 발생할 때 계약을 깨울 수 있습니다. 이는 스마트 계약을 위한 더 넓은 범위의 애플리케이션 시나리오를 제공하고 새로운 분산 기능을 잠금 해제하며 블록체인 생태계의 사용자에게 더 많은 가치를 창출합니다.
2. 지속적인 메시지 자동화
Gear에서 모든 메시지(시스템 메시지 포함)를 실행하면 "가스"가 소모됩니다. Gear Protocol은 추가 프로그램 실행에 사용할 수 있는 가스 풀을 생성할 수 있는 가스 예약 개념을 도입했습니다. 각 풀은 그것을 만든 프로그램에 고유하며 프로그램의 "gas_available"이 충분하지 않은 경우 해당 풀에서 가스를 소비할 수 있습니다.
Gas Reservation의 중요한 장점은 미래의 특정 시간에 자동으로 트리거되는 지연된 메시지를 보내는 기능입니다. 이러한 메시지는 Gear의 다른 메시지와 유사하며 네트워크의 다른 스마트 계약을 호출하거나 사용자의 사서함에 나타날 수 있습니다.
가장 흥미롭게도 가스 예약은 프로그램이 나중에 자신에게 메시지를 보낼 수 있도록 하여 정의된 기간 후에 실행을 계속하도록 합니다. 이를 통해 스마트 계약이 무한한 횟수로 실행될 수 있습니다(사용 가능한 가스가 충분할 경우).
이는 스마트 계약에서 지속적인 메시징 자동화와 관련된 기능적 논리를 구현할 수 있는 방대한 가능성을 열어줍니다. 지연된 메시지는 cron 작업과 유사하며 외부 리소스를 사용하지 않는 한 다른 블록체인 플랫폼의 스마트 계약에서 구현할 수 없습니다. 이 솔루션의 중요한 이점은 dApp에서 중앙 집중식 구성 요소가 필요하지 않고 완전히 온체인으로 실행되며 완전히 분산되고 자율적이라는 것입니다.
핵심 기술 1: 기판

Substrate는 맞춤형 또는 사전 구축된 구성 요소를 네트워킹, 합의 메커니즘, 핵심 기능, 보안 및 거버넌스 기능과 함께 결합하여 고유한 블록체인을 맞춤형으로 구축할 수 있는 모듈식 프레임워크입니다.
Substrate는 맞춤형 또는 사전 구축된 구성 요소를 네트워킹, 합의 메커니즘, 핵심 기능, 보안 및 거버넌스 기능과 함께 결합하여 고유한 블록체인을 맞춤형으로 구축할 수 있는 모듈식 프레임워크입니다.
Substrate 프레임워크를 사용하면 특정 애플리케이션에 대해 서로 다른 블록체인을 생성하는 프로세스가 간소화됩니다. Substrate는 즉시 사용할 수 있는 풍부한 기능을 제공하며 개발자가 프로토콜 위에 맞춤형 엔진을 만드는 데 집중할 수 있도록 합니다.
기판의 주요 기능은 다음과 같습니다.
1. 포크 업데이트 없음
2. 기본 제공 조정
3. WebAssembly에 대한 교차 언어 지원 지원
4. 가벼운 고객 친화성
5. 결정론적 최종성
6. 원활한 통합
Substrate 덕분에 Gear 팀은 개발 시간을 크게 단축하고 주요 Gear 프로토콜 구성 요소 개발에 집중할 수 있었습니다. Rust 언어는 또한 안전성과 고성능을 보장합니다.
Gear의 고유한 비동기 메시징 아키텍처는 Substrate 기술에 구축된 네트워크 간의 효율적인 통신을 가능하게 합니다. 이 완벽한 통합은 네트워크 기능 및 참여의 상호 운용성을 향상시키는 데 도움이 됩니다.
핵심 기술 2: 액터 모델

액터 모델은 메시지 전달 통신에 사용되는 Gear Protocol의 핵심적이고 고유한 기능입니다. 동시 컴퓨팅 시스템에서 "메시지 전달 통신"은 프로그램이 메시지를 교환하여 통신하는 것을 의미합니다. 메시지 전달은 "공유 메모리 통신"보다 이해하기 쉽고 성능 특성이 더 좋습니다.
액터 모델 프레임워크는 비동기 메시징 및 병렬 컴퓨팅을 지원하여 속도를 크게 향상시키고 복잡한 dApp을 보다 쉽게 구축할 수 있도록 합니다. 일반적으로 일반 액터 모델은 메시지 순서를 보장하지 않지만 Gear Protocol은 몇 가지 추가 보장을 제공하여 두 특정 프로그램 간의 메시지 순서가 보존되도록 합니다.
그 중 액터는 액터 모델에서 메시지를 주고받을 수 있는 원자 컴퓨팅 단위를 의미한다. Gear에서 Gear 프로토콜의 모든 인스턴스는 프로그램(스마트 계약) 또는 프로그램에 메시지를 보내는 사용자가 될 수 있는 행위자입니다. 각 행위자는 자체 내부 비공개 상태를 가지며 사용자도 사서함을 가집니다. 통신은 비동기식이며 메시지는 사서함에서 가져와서 메시지 처리 스트림으로 배포되어 주기적으로 처리됩니다.
핵심 기술 3: WebAssembly

WebAssembly는 웹 페이지에서 비 JavaScript 프로그래밍 언어 응용 프로그램을 실행하는 방법입니다. 실제로 Wasm은 최신 브라우저에서 실행되는 가상 머신에 불과하지만 과거에 JavaScript를 사용하여 웹 페이지에서 코드를 실행해야 하는 대신 Wasm을 사용하면 JavaScript가 아닌 프로그래밍 언어를 사용하여 코드를 실행할 수 있습니다. 브라우저.
WebAssembly는 웹 페이지에서 비 JavaScript 프로그래밍 언어 응용 프로그램을 실행하는 방법입니다. 실제로 Wasm은 최신 브라우저에서 실행되는 가상 머신에 불과하지만 과거에 JavaScript를 사용하여 웹 페이지에서 코드를 실행해야 하는 대신 Wasm을 사용하면 JavaScript가 아닌 프로그래밍 언어를 사용하여 코드를 실행할 수 있습니다. 브라우저.
WebAssembly 가상 머신(줄여서 Wasm)은 기술적 특성으로 인해 다른 가상 머신보다 빠른 것으로 입증되었습니다. WebAssembly를 사용하면 Gear의 스마트 계약을 기계 코드로 직접 컴파일하고 거의 기본 속도로 실행할 수 있습니다. 더 빠른 속도는 더 낮은 트랜잭션 비용과 더 높은 효율성을 의미합니다.
모든 Gear 프로그램과 스마트 계약은 WebAssembly 프로그램으로 실행됩니다. 이는 개발자가 자신의 응용 프로그램을 웹으로 가져오고 Windows 또는 Mac에서 기본적으로 실행되는 것처럼 웹 브라우저에서 응용 프로그램의 전체 성능 및 전체 기능 세트를 실현할 수 있음을 의미합니다. 개발자는 실제로 Wasm 코드를 직접 작성할 필요는 없지만 Wasm을 다른 언어로 작성된 프로그램의 컴파일 대상으로 사용합니다.
WebAssembly가 해결하는 주요 문제는 웹에서 JavaScript 이외의 프로그래밍 언어를 사용할 수 없다는 것입니다. JavaScript는 좋은 프로그래밍 언어이지만 대규모 애플리케이션의 초고속 실행에는 적합하지 않습니다. Wasm은 완전히 안전한 방식으로 다른 프로그래밍 언어로 작성된 기본 애플리케이션 성능을 웹에 제공한다는 점에서 혁신적입니다.
Wasm은 두 가지 주요 영역에서 상당한 속도 향상을 제공합니다.
첫째, 애플리케이션의 시작 속도를 획기적으로 개선해야 합니다. 실제로 이미 Wasm을 사용하는 응용 프로그램은 응용 프로그램 시작 시간을 절반으로 줄일 수 있었고 시작 속도는 더 많은 최적화가 이루어질수록 더 증가할 것입니다. 이렇게 하면 거대한 응용 프로그램을 매우 빠르게 로드할 수 있습니다.
둘째, Wasm은 또한 처리량을 크게 증가시킬 수 있습니다. 즉, 코드가 컴파일되면 더 빠르게 실행되어 애플리케이션이 더 효율적이고 응답성이 높아져 사용자 경험이 크게 향상됩니다.
핵심 기술 4: 영구 메모리

Gear Protocol의 또 다른 중요한 기능은 영구 메모리 기술입니다. 이 기술은 개발을 더 쉽게 만들고 복잡성을 줄이며 실제 하드웨어 및 운영 체제 메모리 관리와 일치합니다.
Gear 네트워크에서 실행되는 프로그램은 기존의 저장 방법을 사용하지 않고 완전한 상태를 유지합니다. 그렇게 하면 블록체인의 API 표면을 크게 줄일 수 있습니다. 동시에 이 방법은 특정 도메인 언어의 제한을 피하고 영구 폐쇄 및 퓨처 결합기와 같은 더 복잡한 언어 구조를 사용할 수 있습니다.
Gear Protocol은 독창적인 메모리 가상화 기술을 채택하여 메모리 할당 및 해제를 1단계 시스템 호출로 처리합니다. 또한 메모리 액세스를 추적하고 필요한 페이지만 로드/저장합니다. 이러한 방식으로 스마트 계약의 힙 할당(일반적으로 선물 및 연결기)은 상태를 보존하기 위해 필요할 때 원활하게 유지되고 호출될 수 있습니다.
프로그램 코드는 메시지 처리 간에 지속되는 일정량의 메모리 공간(정적 영역이라고 함)이 있는 변경 불가능한 Wasm 블록에 저장됩니다. 각 프로그램에는 고유한 메모리 공간이 있으며 초기화 단계에서 추가 비용 없이 이를 위해 예약됩니다. 프로그램은 자신의 메모리 공간에서만 읽고 쓸 수 있으며 다른 프로그램의 메모리 공간에 액세스할 수 없습니다.
프로그램은 64KB 블록에 필요한 메모리를 할당할 수 있습니다. 각 메모리 블록 할당에는 가스 비용이 듭니다. 이러한 메모리 블록의 각 페이지(64KB)는 분산 데이터베이스 백엔드에 개별적으로 저장됩니다. 그러나 런타임에 Gear 노드는 연속적인 런타임 메모리를 구축하고 프로그램을 다시 로드하지 않고 실행하도록 허용합니다.
영구 메모리 기술은 메모리 병렬 처리도 지원합니다. 각 프로그램에는 독립적이고 격리된 메모리 공간이 있어 Gear 노드에서 여러 메시지 스트림을 병렬 처리할 수 있습니다. 병렬로 처리되는 스트림의 수는 CPU 코어의 수와 같습니다. 각 프로세스는 다른 프로그램이나 외부(사용자 트랜잭션)에서 올 수 있는 특정 프로그램 메시지 집합을 처리할 책임이 있습니다.
영구 메모리 기술은 메모리 병렬 처리도 지원합니다. 각 프로그램에는 독립적이고 격리된 메모리 공간이 있어 Gear 노드에서 여러 메시지 스트림을 병렬 처리할 수 있습니다. 병렬로 처리되는 스트림의 수는 CPU 코어의 수와 같습니다. 각 프로세스는 다른 프로그램이나 외부(사용자 트랜잭션)에서 올 수 있는 특정 프로그램 메시지 집합을 처리할 책임이 있습니다.
영구 메모리 기술을 통해 Gear Protocol은 효율적인 메시지 처리 병렬화를 달성하여 시스템 성능을 향상시킬 수 있습니다. 이 기술은 프로그램 상태의 지속성을 보장하고 개발자에게 보다 유연하고 강력한 프로그래밍 기능을 제공합니다.

핵심 기술 5: 기어 네트워크 상태
Gear 네트워크는 일련의 상태 저장 구성 요소를 통해 분산 상태를 유지합니다. 다른 블록체인 시스템과 마찬가지로 WebAssembly로 컴파일된 런타임 코드는 블록체인에 저장된 상태의 일부가 됩니다.
Gear는 포크리스 런타임 업그레이드라는 중요한 기능을 채택합니다. 최종성 도구를 사용하여 상태 결정론을 보장할 수 있습니다.
스토리지 상태는 다음 구성 요소로 구성됩니다.
1. 프로그램과 메모리
프로그램 코드와 개인 메모리를 포함합니다. 프로그램 코드는 변경할 수 없는 Wasm 블록에 저장됩니다. 각 프로그램에는 메시지 처리 사이에 지속되는 일정한 양의 메모리가 있습니다(예: 정적 영역). 프로그램은 Gear 인스턴스에서 제공하는 메모리 풀에서 더 많은 메모리를 할당할 수 있으며 특별히 할당된 메모리에서만 읽고 쓸 수 있습니다.
2. 메시지 큐
글로벌 메시지 큐는 사용자가 특정 프로그램으로 보낸 메시지 트랜잭션을 수신하는 데 사용됩니다. 이러한 메시지는 메시지 대기열을 채우고 블록 구성 중에 대기열에서 빼서 적절한 프로그램으로 라우팅됩니다.
3. 계정
네트워크 계정과 해당 잔액은 계정 구성 요소에 저장됩니다. Gear는 사용자 및 프로그램 잔액을 관리하고 거래 수수료를 지불하기 위한 잔액 모듈을 제공합니다. 공용 네트워크의 경우 DOS 공격을 방어하려면 일반적으로 가스/수수료를 지불해야 합니다. 허용되는 경우 저울 모듈이 필요하지 않을 수 있습니다.
Gear 네트워크는 허가형 또는 허가형이 아닌 퍼블릭 블록체인일 수 있습니다. 허용 상황에서는 균형 모듈이 필요하지 않을 수 있지만 공용 네트워크에는 필요합니다.
즉, Gear 네트워크 상태 기술은 프로그램, 메모리, 메시지 대기열 및 계정과 같은 구성 요소를 통해 효율적인 분산 상태 관리를 실현하고 개발자에게 다양한 애플리케이션 시나리오를 위한 블록체인 솔루션을 구축할 수 있는 강력한 도구를 제공합니다.
핵심 기술 6: 상태 전환
각 시스템은 일정한 규칙에 따라 상태 전이를 수행하며 네트워크가 새로운 입력 데이터를 처리할 때 상태 전이 규칙에 따라 상태가 업데이트됩니다. 이러한 입력 데이터는 트랜잭션이라는 세분화된 정보로 패키지됩니다.
Gear 네트워크에서 노드는 모든 새로운 트랜잭션을 포함하는 트랜잭션 풀을 유지하고 동기화합니다. 노드(검증자 또는 비검증자)가 트랜잭션을 수신하면 해당 노드는 연결된 모든 노드에 트랜잭션을 전파합니다.
Gear 유효성 검사기가 새 블록을 생성할 준비가 되면 트랜잭션 풀에서 일부 또는 모든 트랜잭션을 선택하고 상태 전환이 이루어지는 블록으로 병합합니다. 이전 블록에 포함되지 않은 트랜잭션은 다음 블록이 생성될 때까지 풀에 남아 있습니다.
Gear 네트워크는 다음 유형의 트랜잭션을 지원합니다.
1. 프로그램 업로드: 사용자는 새로운 프로그램(스마트 계약)을 업로드하고 초기 잔액과 연결할 수 있습니다.
2. 코드 업로드: 이후 프로그램 생성을 위해 초기화되지 않은 Wasm 코드를 업로드할 수 있습니다.
3. 프로그램 만들기: 사용자와 프로그램은 업로드된 코드를 사용하여 새 프로그램을 만들 수 있습니다.
2. 코드 업로드: 이후 프로그램 생성을 위해 초기화되지 않은 Wasm 코드를 업로드할 수 있습니다.
3. 프로그램 만들기: 사용자와 프로그램은 업로드된 코드를 사용하여 새 프로그램을 만들 수 있습니다.
4. 메시지 보내기: 최종 사용자는 Gear 네트워크에 메시지를 보내 프로그램과 상호 작용합니다. 전송된 메시지는 런타임 기반 트랜잭션 대기열 역할을 하는 전역 메시지 대기열을 채우고 모든 메시지가 결국 처리되도록 합니다.
5. 답장 보내기: 메시지와 마찬가지로 답장은 받은 메시지에 대한 응답으로만 보낼 수 있습니다. 사용자는 사서함에 포함된 메시지에 답장을 보낼 수 있습니다.
6. 사서함에서 값 받기: 사용자는 특정 값과 관련된 메시지를 받은 후 값을 요청하고 메시지에서 사용자에게 전송해야 합니다. 청구되지 않은 값은 가스 한도가 소진된 후 보낸 사람에게 반환됩니다.
7. 메시지 대기열에서 빼기: 유효성 검사기는 다음 블록을 생성할 차례가 되면 대기열에서 뺄 메시지를 선택합니다. 이렇게 하면 각 유효성 검사기가 완전한 메모리 내 상태를 유지할 필요가 없습니다. 큐에서 빼기 프로세스는 각 블록의 끝에서만 발생합니다.
8. 잔액 이체: 일반 잔액 이체는 두 가지 방법으로 할 수 있습니다. 하나는 Substrate Balances 모듈에서 제공하는 외부 기능(예: transfer, setBalance 등)을 사용하는 것이고 다른 하나는 관련 값으로 이체를 보내는 것입니다. 메시지를 통해 다른 사용자에게 묻습니다.
Gear 네트워크에서 메시지 처리, 블록 구성 및 이벤트의 수명 주기는 아래 그림과 같습니다. 행위자 커뮤니케이션 모델에 따르면 공유는 없고 메시지만 있습니다. 사용자 공간 검사를 위한 이벤트 로그 형식으로 끝납니다.

발문
Gear Protocol 및 Vara Network는 개발자에게 Web3 산업에서 혁신적인 분산 응용 프로그램을 구축할 수 있는 강력한 도구와 환경을 제공합니다. 여러 프로그래밍 언어와 스마트 계약의 유연성을 지원함으로써 이러한 플랫폼은 개발자에게 큰 편리함과 자유를 제공합니다.
비동기 메시지 지원 및 가스 예약 메커니즘과 같은 Gear Protocol의 고유한 기능은 스마트 계약에 더 높은 기능과 자동화 기능을 제공합니다. 이를 통해 개발자는 과거에는 달성할 수 없었던 지속적인 메시지 자동화 및 분산 논리를 구현하여 블록체인 응용 프로그램의 경계를 더욱 확장할 수 있습니다.
Web3 기술이 계속 발전하고 채택이 가속화됨에 따라 Gear Protocol과 Vara Network가 계속해서 이 분야를 발전시킬 것으로 기대할 수 있습니다. 이러한 플랫폼은 차세대 분산 응용 프로그램의 생성 및 혁신을 위한 강력한 기반을 제공하여 Web3 생태계의 번영을 촉진합니다. 중요한 기술 지원으로서 향후 개발에서 이러한 플랫폼은 Web3 기술의 최전선을 이끌고 사용자에게 더 많은 가치와 풍부한 사용자 경험을 제공할 수 있습니다.
모든 댓글