[목차] == 개요 == '''스마트 컨트랙트'''(smart contract) 또는 '''스마트 계약'''은 [[블록체인]] 기반으로 체결하는 [[계약]]을 말한다. [[Ethereum]]에서 처음 도입되었다. 현재는 [[에이다(암호화폐)|에이다]], [[NEO(암호화폐)|NEO]], [[Qtum]], [[EOS(암호화폐)|EOS]] 등의 [[암호화폐]]에도 적용된 상태이다. [[Ethereum]]에서는 [[솔리디티]]([[Solidity]])라는 [[자바]] 기반의 [[프로그래밍 언어]]를 사용하여 스마트 계약서를 작성한다. 자바의 JVM과 유사하게, 이더리움의 각 노드에서는 EVM이라는 일종의 가상화 머신을 에뮬레이팅하여 스마트컨트랙트 코드를 실행하고 그 결과를 이더리움 네트워크에 연동한다. Solidity 언어는 자바 기반이어서 대부분의 개발자들이 쉽게 적응할 수 있었으나, 스마트컨트랙트 개발의 확장성을 위하여 이더리움 재단에서는 [[파이썬]], [[자바]], [[C언어]] 등의 다른 프로그래밍 언어로 스마트컨트랙트를 개발할 수 있도록 다양한 EVM 컴파일러 또는 [[Wrapper]]를 개발하고 있다. [[분류:블록체인]][[분류:암호화폐]]