스마트계약은 ‘스스로 이행이 되는 자동화된 약정’이다. 스마트계약은 ‘컴퓨터 코드화된 계약’과 ‘코드에 의하여 규정되는 당사자 간의 관계’로 분류할 수 있다. 스마트계약은 상대방이 코드가 요구하는 일정한 조건을 실행했는지에 따라 협의의 스마트계약과 광의의 스마트계약으로 구분한다. 상대방과 의사합치가 안되면 협의, 되면 광의의의 스마트계약이다.
스마트계약에 대해 처음 언급한 이는 스마트계약의 아이디어를 처음 구상하여 공표한 Nick Szabo이다. 1997년에 그는 ‘스스로 이행이 되는 자동화된 약정’으로 정의하였다. 김제완(2017)은 스마트계약을 두 가지 의미로 분류한다. 첫째, 스마트계약은 ‘컴퓨터 코드화 된 계약’이다. 즉, 계약조항을 컴퓨터 코드로써 만드는 것이라는 의미이다. 둘째, ‘코드에 의하여 규정되는 당사자 간의 관계’를 의미한다. 여기서 당사자 간의 관계는 그 근저에 있는 전통적인 계약상의 권리 및 의무와 연계되지 않고 오로지 코드에 의하여 정의되고 자동적으로 이행되는 관계를 의미한다. 정경영․ 백명훈(2017)은 스마트계약을 협의의 스마트계약과 광의의 스마트계약으로 구분한다. 협의의 스마트계약은 블록체인 기술을 기반으로 계약의 자동실행이 보장된 컴퓨터 프로그램(코드)을 말한다. 협의의 스마트계약은 상대 방을 예상하고 있지만 아직 상대방과 의사합치가 이루어진 것은 아니므로 전통적 계약개 념과는 구별된다. 상대방이 코드가 요구하는 일정한 조건을 실행한 경우에 비로소 전통적 계약과 유사한 구조가 되며 이를 광의의 스마트계약으로 정의한다. 즉, 광의의 스마트계약 은 코드가 상대방의 의사표시와 합치한 경우이고 청약과 승낙의 구조를 가진 계약과 유사 하게 코드에 따라 상대방의 의사표시가 행하여진 것이다.