Foresight Ventures : WASM, 대시대 엔진

포사이트 벤처스
2023-11-09 14:17:56
수집
Wasm과 블록체인은 상호 결합되어 보다 효율적이고 안전하며 유연한 블록체인 애플리케이션과 서비스를 제공할 수 있습니다.

저자: Mike, Foresight Ventures


TL;DR

WebAssembly(약칭 Wasm)은 웹 브라우저에서 실행할 수 있는 이식 가능하고 고성능의 이진 명령어 형식입니다. 이는 다양한 프로그래밍 언어에 사용할 수 있는 범용 컴파일 대상이 되도록 설계되었으며, 다양한 플랫폼에서 실행될 수 있습니다.

블록체인은 분산된 장부 기술로, 암호학 및 합의 알고리즘을 사용하여 데이터의 안전성과 신뢰성을 보장합니다. 블록체인은 거래 기록, 데이터 저장 및 스마트 계약 실행 등 다양한 응용 프로그램에 사용될 수 있습니다.

Wasm과 블록체인 간에는 몇 가지 관계 및 응용 시나리오가 존재합니다:

  1. 스마트 계약: Wasm은 스마트 계약의 실행 환경으로 사용될 수 있어, 계약이 다양한 블록체인 플랫폼에서 실행될 수 있게 합니다. Wasm의 고성능과 이식성 덕분에 스마트 계약이 더 효율적으로 실행될 수 있으며, 플랫폼 간 사용이 가능합니다.
  2. 크로스 체인 상호작용: Wasm은 크로스 체인 상호작용 기능을 구현하는 데 사용될 수 있습니다. 서로 다른 블록체인의 논리를 Wasm 코드로 컴파일하여, 서로 다른 블록체인에서 동일한 논리를 실행하고 데이터 전송 및 상호작용을 구현할 수 있습니다.
  3. 체인 외 계산: Wasm은 블록체인 외부에서 계산을 수행하고, 계산 결과를 블록체인에 제출하는 데 사용될 수 있습니다. 이를 통해 데이터의 안전성과 신뢰성을 유지하면서 계산의 효율성과 유연성을 높일 수 있습니다.
  4. 데이터 프라이버시: Wasm은 블록체인에서 데이터 프라이버시 보호를 구현하는 데 사용될 수 있습니다. 민감한 데이터 처리 논리를 Wasm 코드로 컴파일하고 블록체인에서 실행함으로써 데이터의 프라이버시를 보호하고 계산의 검증 가능성을 보장할 수 있습니다.

결론적으로, Wasm과 블록체인은 상호 결합하여 더 효율적이고 안전하며 유연한 블록체인 응용 프로그램과 서비스를 제공할 수 있습니다. Wasm의 이식성과 고성능은 블록체인 분야에서 중요한 기술 중 하나로 자리 잡게 합니다.

1. Web Assembly란 무엇인가

WebAssembly는 W3C(월드 와이드 웹 컨소시엄)에서 개발한 효율적이고 경량화된 명령어 집합 표준으로, 웹과 고성능의 혁신자로 불리며, 크로스 브라우저 실행을 지원합니다. 이는 C/C++, Go, Rust 등 다양한 프로그래밍 언어를 통합된 표준 이진 형식으로 컴파일하고, 이를 JavaScript의 대체품으로 사용하여 거의 네이티브 코드의 효율로 브라우저에서 실행할 수 있게 합니다.

WebAssembly, 또는 약칭 Wasm은 메모리 안전하고 플랫폼 독립적이며, 모든 유형의 CPU 아키텍처에 완벽하고 효율적으로 매핑될 수 있는 다음과 같은 주요 장점을 가지고 있습니다:

  • 효율성: Wasm은 완전한 언어 특성을 갖춘 작은 크기와 빠른 로딩 속도의 이진 형식으로, 하드웨어의 능력을 최대한 활용하여 네이티브 언어의 실행 효율을 달성하는 것을 목표로 합니다.
  • 안전성: Wasm은 메모리 안전하고 샌드박스화된 실행 환경에서 실행되며, 기존의 JavaScript 가상 머신에서도 구현할 수 있습니다. 웹 환경에서 Wasm은 동일 출처 정책 및 브라우저 보안 정책을 엄격히 준수합니다. Wasm은 컴파일 시 인터페이스가 비교적 적지만, 대부분의 Wasm 애플리케이션은 네트워크에 연결할 수 없으며(소켓을 지원하지 않음), 현재는 로컬 데이터베이스만 지원합니다. 많은 보안 문제는 실행 시 메모리 접근에서 발생하는데, Wasm은 컴파일 시 불법 메모리 접근을 방지할 수 있습니다.
  • 호환성: Wasm은 웹에서 버전이 없고, 특성이 테스트 가능하며, 이전 버전과 호환되도록 설계되었습니다. Wasm은 JavaScript에서 호출할 수 있으며, JavaScript 컨텍스트에 들어가거나 웹 API처럼 브라우저 기능을 호출할 수 있습니다. Wasm은 브라우저에서 실행될 수 있을 뿐만 아니라 비웹 환경(예: Node.js, Deno, IoT 장치 등)에서도 실행될 수 있습니다. 전통적인 방법은 여러 번 컴파일해야 할 수 있지만, Wasm은 한 번만 컴파일하면 즉시 사용할 수 있습니다.

또한, 웹은 모든 장치에서 애플리케이션에 접근할 수 있는 유일한 진정한 범용 플랫폼입니다. 이를 통해 단일 코드베이스를 유지하고 업데이트를 간소화하며 모든 사용자가 애플리케이션에 접근할 수 있도록 보장합니다. Wasm은 64비트 및 32비트 정수 작업을 지원하며, CPU 명령과 일치합니다. 부동 소수점 연산을 제거함으로써 결정성을 쉽게 구현할 수 있으며, 이는 합의 알고리즘에 필요합니다. LLVM 컴파일러 인프라 프로젝트의 지원을 받아 Wasm은 LLVM의 10년 이상의 컴파일러 최적화의 혜택을 누릴 수 있습니다. Wasm은 구글, 애플, 마이크로소프트, 모질라 및 페이스북과 같은 대기업에 의해 지속적으로 개발되고 있으며, 이들 대기업이 개발한 브라우저의 백엔드에서 Wasm 컴파일을 지원합니다.

Wasm의 매력은 마치 마법 엔진처럼 어디서나 실행될 수 있으며, 다운로드나 설치가 필요 없다는 것입니다. 이진 형식이기 때문에 한 번의 클릭으로 필요할 때 즉시 웹 애플리케이션을 실행할 수 있습니다. 이는 다운로드 및 실행 이진 파일보다 더 안전합니다. 브라우저는 실행되는 코드가 시스템에 해를 끼치지 않도록 내장된 보안 메커니즘을 가지고 있습니다. 또한 웹 애플리케이션을 공유하는 것도 간단합니다 - 링크는 어디에나 클릭 가능한 문자열로 놓을 수 있습니다.

2. 왜 우리는 Web Assembly가 필요한가

2.1 Web2

브라우저 내장 기능과 웹이 제공하는 상호작용 덕분에 웹은 정적 콘텐츠와 소규모 스크립트 언어에서 매우 강력하고 인기 있는 플랫폼으로 발전하였으며, 놀라운 애플리케이션과 기능으로 가득 차 있습니다. 그러나 지금까지 웹 애플리케이션은 여전히 동일한 스크립트 언어(JavaScript)에 의해 주로 구동되고 있으며, JavaScript의 설계 주요 목표는 이러한 기능을 구현하기 위한 것이 아니었습니다.

JavaScript는 처음에 경량의 하이퍼텍스트 문서로 가득한 웹 애플리케이션에 상호작용성을 제공하기 위해 설계된 간단한 스크립트 언어였습니다. 그것의 설계는 배우고 작성하기 쉬우며, 실행 속도를 추구하지 않습니다. 수년 동안 브라우저에서 JavaScript 파싱의 성능이 크게 개선되어 눈에 띄는 성능 향상을 가져왔습니다.

JavaScript의 실행 속도가 빨라짐에 따라 브라우저에서 실행할 수 있는 것들이 크게 확장되었습니다. 새로운 API는 상호작용 그래픽, 비디오 스트리밍, 오프라인 브라우징 등 더 많은 기능을 가져왔습니다. 동시에 점점 더 많은 애플리케이션(과거에는 로컬 애플리케이션에 한정됨)이 웹으로 진입하기 시작했습니다. 이제는 브라우저에서 문서를 쉽게 편집하고 이메일을 보낼 수 있지만, 일부 분야에서는 여전히 JavaScript의 성능이 문제입니다. 브라우저 외부에서 사용하는 소프트웨어를 생각해 보십시오: 게임, 비디오 편집, 3D 렌더링 또는 음악 제작. 이러한 애플리케이션은 많은 계산을 수행해야 하며, 높은 성능이 필요합니다. JavaScript는 이러한 고성능 요구를 충족하기 어렵습니다.

그러나 JavaScript를 대체하는 것은 현실적이지 않으며, 심지어 수십 년이 걸릴 수도 있습니다. 왜냐하면 전체 인터넷이 JavaScript에 의존하고 있기 때문입니다. 또한 많은 사람들이 JavaScript를 지속적으로 개선하고 있습니다. 사실, 다른 언어와 비교할 때 JavaScript는 null 및 ==와 같은 특정 측면에서 부족하지만, 이러한 문제는 전체 기술을 교체할 정도는 아닙니다.

따라서 WebAssembly는 JavaScript를 대체하지 않지만, 이는 미래에 누군가가 WASM을 사용하지 않을 것이라는 의미는 아닙니다. 실제로 WASM의 사용은 점점 더 널리 퍼질 것입니다. WASM은 웹 페이지에 강력한 계산 능력을 제공할 수 있기 때문입니다. 예를 들어 이미지 처리나 게임과 같은 작업을 수행할 수 있습니다. WASM을 사용하면 웹 기반 Photoshop을 만들고 잘 실행할 수 있으며, 브라우저에서 초당 60프레임 이상의 3D 게임을 실행할 수 있습니다. 게임은 특히 도전적입니다. 게임은 오디오 및 비디오 처리를 동시에 수행해야 할 뿐만 아니라 물리 효과 및 AI를 조정해야 합니다. WASM은 브라우저에서 게임을 효율적으로 실행할 수 있는 능력을 가지고 있으며, 이는 많은 다른 애플리케이션을 브라우저로 가져올 수 있는 가능성을 열어줍니다.

위 이미지는 JavaScript와 Wasm의 작업 흐름을 비교한 것으로, Wasm이 JavaScript보다 훨씬 간결함을 보여줍니다.

2.2 Web3

WASM VM

2018년, 이더리움 생태계 내부에서 Wasm VM을 스마트 계약 가상 머신으로 사용하는 논의가 시작되었습니다. 이는 EVM보다 성능이 더 좋다고 여겨졌기 때문입니다. EVM의 발명자인 Gavin Wood는 Wasm이 EVM을 대체할 가능성에 대해 언급했으며, Vitalik은 이더리움 2.0이 Wasm 계약(eWASM)으로 업그레이드될 것이라고 밝혔습니다. 현재 Wasm 계약의 발전은 어느 정도 형태를 갖추고 있습니다.

2.3 EVM은 어떻게 설계되었는가? 왜 비효율적인가?

아키텍처 크기 과다

전통적인 컴퓨터가 포함하는 명령어 집합은 32비트 또는 64비트 입력만을 허용합니다. EVM은 이와 다르며 매우 특별합니다. EVM은 256비트 컴퓨터로 설계되었으며, 이는 이더리움의 해시 알고리즘을 더 쉽게 처리하기 위해 의도적으로 설계되었습니다. 이는 명확하게 256비트 출력을 생성합니다.

그러나 EVM 프로그램을 실제로 실행하는 컴퓨터는 256비트 단어를 로컬 아키텍처로 분할하여 스마트 계약을 실행해야 하므로 전체 시스템이 매우 비효율적이고 실용적이지 않게 됩니다.

또한, 이더리움에서 기본 OPCODES를 사용하여 SHA256과 유사한 복잡한 알고리즘을 구현하고자 한다면, 스스로 기도를 해야 할 것입니다! 복잡한 프로그램을 명령어 집합으로 실행할 때 발생하는 높은 가스 비용 문제를 해결하기 위해, 이더리움은 미리 컴파일된 개념을 도입하여 프로그램을 EVM에 컴파일하고 고정된 가스를 소모합니다. 주목할 만한 미리 컴파일된 것은 이더리움 해시 알고리즘입니다. 왜냐하면 가상 머신에서 해당 알고리즘을 구현하면 계약 호출 시 매우 비싼 비용이 발생하기 때문입니다.

부풀려진 미리 컴파일

미리 컴파일이 가져오는 문제는 가상 머신의 부풀려짐과 복잡성을 지속적으로 증가시키지만, 현재 명령어 집합과 규격의 비효율적이고 조잡한 설계를 해결하지 못한다는 것입니다.

우리가 새로운 규격과 명령어 집합을 정의할 수 있다면, 이러한 복잡한 프로그램을 미리 컴파일할 필요 없이 기본 명령어만으로 효율적으로 구현할 수 있을까요? 이때 Wasm이 유용하게 사용될 수 있습니다.

2.4 EVM과 WASM VM의 비교

  • 속도: Wasm은 EVM보다 더 빠른 실행 속도를 제공하도록 설계되었습니다. EVM은 스마트 계약을 컴파일하고 실행하는 과정에서 효율성 문제를 겪을 수 있으며, Wasm은 컴파일된 코드로 직접 변환하여 로딩 속도와 처리 능력을 향상시킵니다.
  • 미리 컴파일: EVM은 암호화 계산을 효율적으로 실행하기 위해 미리 컴파일된 계약에 의존하지만, 이는 하드 포크의 위험을 초래할 수 있습니다. Wasm은 미리 컴파일된 계약에 대한 의존성을 제거하고, 개발자가 효율적이고 빠른 스마트 계약을 생성할 수 있도록 합니다.
  • 거래 비용: 더 빠른 Wasm 가상 머신은 거래 처리량을 크게 향상시켜 계약 배포 및 거래 비용을 대폭 줄일 수 있습니다. Wasm 계약은 현재 이더리움에서 높은 거래 비용과 거래 혼잡 문제를 잘 해결할 수 있습니다.
  • 유연성 및 상호 운용성: Wasm은 스마트 계약 개발자가 사용할 수 있는 언어 시리즈를 확장하여, Rust, C++, JavaScript 등과 같은 고급 언어를 사용하여 복잡한 비즈니스 논리를 개발할 수 있도록 지원합니다. 이는 개발자가 익숙한 언어로 스마트 계약을 작성할 수 있음을 의미합니다. 예를 들어, Rust 기반의 ink! 또는 AssemblyScript 기반의 Ask!와 같은 언어를 사용할 수 있습니다.

EWASM 팀은 이더리움에서 WebAssembly를 통합하여 이더리움의 실행 계층을 더욱 효율적이고 간단하게 만들어 완전한 탈중앙화 컴퓨팅 플랫폼으로 적합하게 만들고 있습니다. Wasm은 Dfinity와 EOS와 같은 많은 다른 프로젝트에서 표준으로 채택되었습니다.

2.5 Stylus(Arbitrum)

Stylus 프로젝트는 이더리움 2층 네트워크 Arbitrum에서 WebAssembly(WASM) 가상 머신을 도입하여 스마트 계약의 실행 성능을 향상시키는 것입니다. 계약은 Solidity보다 더 빠른 속도로 실행되며, 가스 비용도 줄어듭니다. 이는 Arbitrum 네트워크에서 고성능 스마트 계약을 구축하는 것을 더욱 용이하게 하며, 현재 C, C++ 및 Rust의 컴파일을 지원합니다.

사용자 정의 미리 컴파일 지원: Stylus는 사용자 정의 미리 컴파일(precompiles)도 지원하여 개발자가 자신의 Rust 또는 C++ 미리 컴파일을 Arbitrum 네트워크에 배포할 수 있도록 합니다. 이를 통해 체인에서 새로운 암호화 알고리즘이나 기타 특정 기능을 도입할 수 있으며, 체인 업그레이드를 기다릴 필요가 없습니다. 예를 들어, 텐서 계산을 미리 컴파일하여 추론 비용을 줄이고, 체인 상의 머신 러닝에 도움이 될 수 있습니다.

EVM과의 상호 운용성: Stylus는 이더리움 가상 머신(EVM)과의 상호 운용성을 통해 기존 이더리움 생태계와 통합을 실현합니다. 이는 Stylus 계약이 기존 EVM 계약과 상호 작용할 수 있으며, EVM과 동일한 전역 상태를 공유할 수 있음을 의미합니다.

재진입 기능(Reentrancy): Cosmos wasm과는 달리, Stylus Rust SDK는 재진입 기능을 도입하고 개발자가 이를 수동으로 활성화할 수 있도록 합니다. 이는 계약이 상호 작용을 보다 유연하게 수행할 수 있도록 하지만, 개발자가 안전성을 보장하기 위해 상태를 신중하게 관리해야 합니다.

Arbitrum 생태계의 인기로 인해, Stylus는 가장 의미 있는 Wasm 통합이 될 수 있으며, Arbitrum의 zkrollup 경쟁력을 높이는 데 기여할 것입니다.

2.6 Gear(Polkadot)

Gear 프로토콜은 Polkadot parachain으로 배포될 수 있는 기술을 만들고 있으며, 이는 스마트 계약을 호스팅하는 도구가 될 것입니다. Polkadot과 마찬가지로 Gear는 Substrate 프레임워크를 사용합니다. 이는 특정 애플리케이션을 위해 다양한 블록체인을 생성하는 과정을 간소화합니다. Substrate는 즉시 사용할 수 있는 광범위한 기능을 제공하여 사람들이 프로토콜 위에 사용자 정의 엔진을 만드는 데 집중할 수 있도록 합니다.

이전에는 블록체인을 시작하는 비용이 매우 높았지만, Gear는 dApp 개발자가 자신의 프로젝트에 집중할 수 있도록 하여 전체 블록체인을 처음부터 구축하고 운영할 필요가 없도록 합니다.

Gear 프로토콜의 주요 엔진은 스마트 계약 모듈입니다. Gear의 경우, 모든 스마트 계약은 다양한 언어(예: Rust, C, C++ 등)로 컴파일된 WebAssembly 프로그램입니다. 암호화 세계 외부의 개발자에게는 친숙한 환경에서 스마트 계약을 구축할 수 있어 진입 장벽이 낮습니다. 개발자는 스마트 계약 프로그래밍 언어를 더 쉽게 시도할 수 있습니다.

Gear의 스마트 계약 아키텍처는 엔진 아래에서 액터 모델을 사용하며 다음과 같은 기능을 제공합니다:

  • 불변 프로그램을 위한 지속 메모리
  • 비동기 메시지 처리
  • 블록체인 컨텍스트에 대한 최소, 직관적이고 충분한 API 표면
  • 체인 상의 구성 요소 간의 액터 통신 프록시 모델은 더 높은 조합성과 병렬 코드 실행 및 분할에 대한 더 나은 호환성을 제공합니다.

각 프로그램은 고정된 수의 메모리를 가지며, Gear는 이를 제어할 수 있도록 합니다. 프로그램은 자신의 메모리에서만 읽고 쓸 수 있으며, 다른 프로그램의 메모리 공간에 접근할 수 없습니다. 각 프로그램은 독립적인 메모리 공간을 가지며, Gear 노드에서 정보를 병렬로 처리할 수 있습니다.

2.7 CosmWasm(Cosmos)

CosmWasm은 현대적이고 강력한 Wasm 기반 스마트 계약 플랫폼으로, Cosmos-SDK에 쉽게 삽입될 수 있습니다. 이는 CosmWasm의 주요 장점 중 하나로, CosmWasm으로 작성된 계약은 IBC(인터 블록체인 통신)와 원활하게 결합되어 개발자와 사용자가 다중 체인 미래에 접근할 수 있도록 합니다. 현재 Rust만 지원합니다.

CosmWasm의 장점

  1. 안전성: Rust 언어를 사용하여 스마트 계약의 안전성을 높입니다.
  2. 크로스 체인 호환성: Cosmos 생태계의 IBC(Inter-Blockchain Communication) 프로토콜을 지원합니다.
  3. 성능: 전통적인 EVM(이더리움 가상 머신)과 비교하여 CosmWasm은 일부 사례에서 더 높은 효율성과 낮은 거래 비용을 보여줍니다.
  4. 개발자 친화적: Rust 언어의 타입 안전성과 메모리 안전성 특성은 스마트 계약 내 특정 유형의 오류를 줄일 수 있습니다.

도전과 제한

  1. 학습 곡선: Rust는 Solidity와 같은 더 일반적인 스마트 계약 언어에 비해 초보자에게는 학습 곡선이 더 가파를 수 있습니다. CosmWASM은 대규모 채택 가능성을 위해 더 많은 언어 컴파일을 지원해야 합니다.
  2. 생태계 및 도구 지원: 성장 중이지만, 성숙한 스마트 계약 플랫폼(예: Ethereum)과 비교할 때 CosmWasm의 개발 도구와 생태계는 여전히 제한적일 수 있습니다.
  3. 시장 점유율 및 인지도: 스마트 계약 플랫폼에서 CosmWasm은 Ethereum, Binance Smart Chain 등과 비교하여 인지도가 낮아 개발자와 사용자를 유치하는 능력에 영향을 미칩니다.
  4. 유지 관리 및 업그레이드의 도전: CosmWasm은 계약 업그레이드 기능을 제공하지만, 스마트 계약의 유지 관리 및 업그레이드 관리는 여전히 복잡한 작업으로, 보안 취약점을 피하기 위해 신중하게 처리해야 합니다.
  5. 호환성 문제: EVM 또는 다른 스마트 계약 환경에 익숙한 프로젝트는 CosmWasm으로 이전할 때 호환성 문제에 직면할 수 있습니다.

2.8 ZK-WASM

Wasm 가상 머신 외에도 최근에 등장한 기술인 ZKWASM이 있습니다. 발명자인 Delphinus Labs는 GitHub에서 ZK-WASM 코드를 오픈 소스화했습니다. ZKWASM은 개발자가 이미 실행된 계산의 정확성을 재실행 없이 검증할 수 있게 합니다. ZKWASM을 활용하면 개발자는 다양한 프로그래밍 언어를 유연하게 사용하여 ZKP 애플리케이션을 구축할 수 있습니다. 이러한 애플리케이션은 웹 브라우저에서 원활하게 실행될 수 있습니다.

ZKWASM의 개념은 ZKSNARK에서 비롯된 것으로, 이는 SNARG와 제로 지식 증명의 혼합체입니다. 일반적으로 ZKSNARK를 사용하려면 Pinocchio, TinyRAM, Buffet/Pequin, Geppetto, xJsnark 프레임워크, ZoKrates와 같은 산술 회로 언어 또는 회로 친화적인 언어로 프로그램을 작성해야 합니다. 이는 기존 프로그램에 장애가 되어 ZKSNARK의 힘을 발휘하기 어렵게 만듭니다. 그러나 또 다른 방법은 소스 코드 수준에서 ZKSNARK를 사용하는 것이 아니라, 가상 머신의 바이트코드 수준에서 이를 사용하여 ZKSNARK를 지원하는 가상 머신을 구현하는 것입니다. Delphinus Labs는 후자의 방법을 채택하여 전체 Wasm 가상 머신을 ZKSNARK 회로에 작성하였습니다. 이렇게 하면 기존의 Wasm 애플리케이션이 ZKWASM에서 직접 실행될 수 있으며, 수정이 필요 없습니다. 따라서 클라우드 서비스 제공자는 모든 사용자에게 계산 결과가 정직하게 계산되었다는 것을 증명할 수 있으며, 개인 정보를 누설하지 않습니다.

ZKWASM은 다양한 사용 사례를 제공합니다. 예를 들어, 브라우저 내의 일부 작업에 대한 ZK 증명을 블록체인에 올릴 수 있습니다. 웹 작업을 블록체인에서 검증 가능하게 만들 수 있습니다. 예를 들어 오라클, 체인 외 계산, 자동화, Web2와 Web3 연결, 머신 러닝 및 데이터 처리 증명 생성, 게임 및 소셜 애플리케이션에 이르기까지 가능합니다. 채택률이 높아짐에 따라 zkWASM은 Web3의 가능성을 확장하고 Web2 개발자를 이 혁신적인 패턴에 포함시킬 것입니다.

Delphinus Lab의 ZKWASM 구현을 통해 개발자는 제로 지식 증명의 힘을 활용하여 애플리케이션의 보안성과 프라이버시를 강화하고, 더 신뢰할 수 있고 탈중앙화된 디지털 환경을 위한 길을 열 수 있습니다.

3. 결론

웹의 성능과 스마트 계약 플랫폼의 실행 계층의 미래는 밝습니다. dApp은 더 높은 성능을 가지게 될 뿐만 아니라, WASM 통합을 통해 Rust 및 Go와 같은 주류 언어에 익숙한 사람들도 스마트 계약 개발을 더 쉽게 할 수 있게 됩니다. 이는 Solidity 또는 기타 블록체인 개발 언어의 다양한 세부 사항을 배우지 않고도 이더리움에서 유용한 애플리케이션을 개발할 수 있게 합니다. 에반스 데이터 회사(Evans Data Corporation)의 데이터에 따르면, 전 세계에는 약 2,700만 명의 개발자가 있습니다. 이 숫자는 꾸준히 증가하고 있으며, 지난해에는 약 3% 증가하여 2024년에는 2,870만 명을 초과할 것으로 예상됩니다. 그러나 블록체인 개발자는 3만 명을 넘지 않으며, 전체 개발자 수의 약 0.1%에 해당합니다. 이 숫자는 꾸준히 증가하고 있지만, 새로운 스마트 계약 언어를 배우는 것은 여전히 개발자들이 블록체인에 진입하는 장벽이 될 수 있습니다.

그러나 점점 더 많은 블록체인이 Web Assembly를 컴파일된 스마트 계약의 바이트코드로 지원하기 시작하고 있습니다. WASM은 블록체인에 단순히 효율성, 상호 운용성 및 광범위한 응용 시나리오를 제공하는 것뿐만 아니라, 개발자의 진입 장벽을 낮추는 열쇠가 됩니다. 블록체인의 미래를 상상해 보십시오. 가까운 미래에 Web2 개발자가 블록체인 개발을 시도할 때, 그들이 익숙한 Python, C++, JavaScript를 사용하여 블록체인에서 대규모 애플리케이션을 개발할 수 있게 되어, 블록체인의 탈중앙화 네트워크의 가치를 최대한 발휘할 수 있습니다. 먼저 창작자(개발자)의 장벽을 낮추고, 그 다음 사용자 장벽을 낮추어 대중 채택으로 나아갈 것입니다.

4. 색인

https://blog.scottlogic.com/2022/06/20/state-of-wasm-2022.html

https://www.notion.so/18f67cee15c147dfae68b06269a455c0?pvs=21

https://wiki.polkadot.network/docs/learn-wasm

https://docs.arbitrum.io/stylus/stylus-gentle-introduction

https://medium.com/@gear_techs/introducing-gear-easy-to-use-polkadot-parachain-9ccd05437a9c

https://medium.com/cosmwasm/cosmwasm-for-ctos-f1ffa19cccb8

https://www.cncf.io/wp-content/uploads/2023/09/The-State-of-WebAssembly-2023.pdf

https://github.com/DelphinusLab/zkWasm

체인캐처(ChainCatcher)는 독자들에게 블록체인을 이성적으로 바라보고, 리스크 인식을 실제로 향상시키며, 다양한 가상 토큰 발행 및 조작에 경계해야 함을 상기시킵니다. 사이트 내 모든 콘텐츠는 시장 정보나 관련 당사자의 의견일 뿐이며 어떠한 형태의 투자 조언도 제공하지 않습니다. 만약 사이트 내에서 민감한 정보를 발견하면 “신고하기”를 클릭하여 신속하게 처리할 것입니다.
banner
체인캐처 혁신가들과 함께하는 Web3 세상 구축