블록체인 학습
0 XP

Chapter 2: 스마트 컨트랙트 첫걸음

이더리움: 블록체인 위의 컴퓨터

스마트 컨트랙트를 처음으로 자유롭게 올릴 수 있게 만든 블록체인이 이더리움(Ethereum)입니다. 비트코인이 '돈을 주고받는 장부'에 집중했다면, 이더리움은 그 위에 프로그램을 올리고 실행하는 기능을 더했습니다.

월드 컴퓨터라고 부르는 이유

지난 차시에서 본 초기 블록체인이 주로 '기록 장부'였다면, 이더리움은 한 발 더 나아가 누구나 프로그램을 올리고 실행할 수 있는 공용 컴퓨터를 지향했습니다. 그래서 흔히 '월드 컴퓨터(world computer)'라고 부릅니다.

  • 전 세계 수많은 노드(node)가 똑같은 프로그램을 똑같이 실행합니다.
  • 그래서 결과를 모두가 신뢰할 수 있습니다. 한 곳이 거짓말해도 다수와 다르면 무시되기 때문입니다.
  • 앞으로 배울 Solidity는 바로 이 이더리움용 스마트 컨트랙트를 작성하는 언어입니다.

모든 노드가 중복 실행하는 구조

내 노트북은 명령을 한 번만 실행합니다. 하지만 이더리움에서는 모든 노드가 같은 명령을 중복 실행하고 결과가 일치하는지 비교합니다. 그래서 속도는 느리고 실행 비용인 gas도 듭니다. 그 대가로 위·변조가 거의 불가능한 신뢰를 얻습니다.

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
 
// 이더리움에 올라가면, 전 세계 노드가 이 컨트랙트를 똑같이 실행한다
contract WorldComputer {
    string public note = "Runs the same everywhere";
}

'월드 컴퓨터'라고 해서 빠른 슈퍼컴퓨터는 아닙니다. 오히려 느립니다. 대신 멈추지 않고, 검열할 수 없고, 결과를 누구도 위조할 수 없습니다.