This article has been translated from English to Korean.

이더리움은"스마트 계약 플랫폼"으로 알려져 있습니다.

플랫폼 (또는 컴퓨팅 플랫폼)은 프로그램이나 애플리케이션과 같은 소프트웨어를 실행(또는 "실행")할 수 있는 운영 환경입니다.

그런데 스마트 계약이 대체 뭐죠?

스마트 계약이란 무엇인가요?

스마트 계약은 블록체인에서 호스팅되고 실행되는 자동화된 컴퓨터 프로그램입니다.

Smart Contract Code

이름과는 달리, "스마트 계약"이 반드시 스마트하거나 법적 구속력이 있는 것은 아닙니다.

"스마트" 대신"자동화"라는이름이 더 좋았을 것이고, "계약" 대신"프로그램"이라는이름이 더 좋았을 것입니다. 하지만 제가 이 개념을 생각해 낸 천재는 아닙니다!

90년대 후반에 이 용어를 만든닉 사보(Nick Szabo)는 스마트 계약을 자판기에 비유했습니다.

사용자는 동전을 기계에 넣고, 동전이 정확한 양이라고 가정하면 기계가"자동 실행"되어요청한 상품을 전달합니다. 여러분과 자판기 외에는 아무도 관여하지 않습니다. 제3자의 개입이 필요하지 않습니다. 자판기 소유자도 마찬가지입니다.

상호 작용에는 신뢰가 거의 필요하지 않습니다. 자판기는 돈을 받으면 물건을 내어줄 수밖에 없습니다.

Smart Contract Example

이제 자판기처럼 명확하고 예측 가능한 조건을 가진 계약을 작성하고, 블록체인 기술을 사용하여 당사자들 간의 계약 조건을 자동으로 이행한다고 상상해 보십시오.

그것이 스마트 계약의 기능입니다.

이더리움에서 스마트 계약은 블록체인에 제출된 코딩된 지침의 일부로, 네트워크 참여자들이 안전하고 신뢰할 필요가 없는 방식으로 이러한 계약을 집행하고 저장할 수 있도록 합니다.

좀 더 기술적인 용어로 설명하자면, 스마트 계약은 이더리움 블록체인의 특정 주소에 있는 코드와 데이터 의 집합입니다.

스마트 계약은 결정론적이기 때문에 계약에 관련된 사람들은 계약이 실행될 때 어떤 결과가 나올지 알 수 있습니다.

스마트 컨트랙트를 블록체인 상의 소프트웨어 프로그램으로 생각하면, 미리 정해진 조건이 충족되면 자동으로 실행됩니다.

코드 줄에 직접 작성된 이러한 사전 조건전통적인 계약의 "계약 조건" 과 동일합니다 .

이제 스마트 계약이 무엇인지 알게 되었으니, 이더리움이 스마트 계약 플랫폼으로 인정받는 이유를 소개해 드리겠습니다.

EVM이란 무엇입니까?

EVM

아니요, 새로운 유형의 전자 음악이 아닙니다.

스마트 계약이 코드로 작성된 지침이라면, 이더리움 블록체인에서 이를 실행하는 것이 바로 이더리움 가상 머신(EVM) 입니다.

"가상 머신"은 실제 물리적 컴퓨터처럼 작동하는 소프트웨어로, 프로그램을 실행하고 앱을 배포할 수 있습니다.

기본적으로 물리적 컴퓨터에 있는 소프트웨어 프로그램으로, 마치 메인 컴퓨터 안에 있는 별도의 컴퓨터처럼 작동합니다.

스마트 계약(컴퓨터 프로그램에 불과한)을 실행하기 위해 "별도의 컴퓨터"가 필요한 이유는 무엇입니까?

모든 이더리움 노드(컴퓨터일 뿐인)가 동일한 하드웨어, 운영체제(OS), 기타 설정을 사용하는 것은 아니기 때문에, 스마트 계약의 코드가 특정 요구 사항이 있는 다양한 유형의 컴퓨터 구성에 신경 쓰지 않고도 실행될 수 있도록 이 모든 것을 "추상화"할 수 있는 방법이 필요합니다.

그렇지 않으면 컴퓨터 구성 유형별로 스마트 계약의 다른 버전을 작성해야 합니다! 👎

스마트 계약은 이런 모든 드라마를 다루고 싶지 않습니다! 스마트 계약은 장치와 OS에 구애받지 않고 작동하기를 원합니다.

이것이 바로 EVM이 필요한 이유입니다. 💪

스마트 계약에 실행 환경을 제공한다는 의미로, 스마트 계약은 어떤 환경("어떤 컴퓨터나 운영체제") 에서든 실행("실행")될 수 있습니다.

개발자들은 스마트 계약을 작성할 수 있으며, 이 계약이 소프트웨어 업계 표준 관행인 "Write once, run anywhere(WORA)" 또는 "Write once, run everywhere(WORE)"를 따르고 있음을 확인할 수 있습니다.

기본적으로 스마트 계약은 EVM이 있는 모든 컴퓨터에서 실행됩니다. 멋지지 않나요?

그러나 그것만이 멋진 것은 아닙니다.

EVM의 목적은 모든 이더리움 풀 노드에 내장된 연산 엔진이 되는 것이기 때문에 튜링 완전성을 갖습니다.

컴퓨터 용어로"튜링 완전성 "은 EVM이 이론적으로 여러분이 생각할 수 있는 모든 것을 계산할 수 있다는 것을 의미합니다.

따라서 이론적으로 모든 컴퓨터 응용 프로그램은 이더리움 플랫폼에서 프로그래밍되고 실행될 수 있습니다!

스마트 계약은 솔리디티(Solidity), 바이퍼(Vyper), 서펜트(Serpent)와 같은 고급 프로그래밍 언어를 사용하여 코드로 작성됩니다.

이 코드는 EVM에 의해 "바이트코드"라고 불리는 것으로 컴파일된 다음, 이더리움 블록체인에 배포됩니다.

EVM 덕분에 이더리움 블록체인은 스마트 계약의 한계를 넘어 분산형 애플리케이션(dApp)을 만드는 데 사용될 수 있습니다.

다음 시간에는 분산형 앱(dApps)에 대해 자세히 알아볼 것입니다.