
블록체인 개발자 Chain은 자체 개발한 스마트 계약 언어인 Ivy를 사용하여 비트코인 스마트 계약을 작성하기 위한 오픈 소스 컴파일러 및 개발 환경을 출시하고 있습니다.
Chain은 오픈 소스 Chain 프로토콜과 확장 가능하고 개인적인 블록체인 네트워크에서 금융 거래를 촉진하는 기업 블록체인 인프라인 Chain Core로 가장 잘 알려져 있습니다. Chain Core의 오픈 소스 개발자 버전은 개발자에게 제공되며, Chain이 운영하는 테스트넷이 있습니다. Ivy는 Chain Core를 위한 스마트 계약 언어로 Chain에서 개발되었습니다. Bitcoin을 위한 Ivy는 Bitcoin Script로 컴파일되며, Chain은 일반 프로그래머가 공개 비트코인 네트워크를 위한 스마트 계약을 더 쉽게 작성할 수 있도록 하기를 원합니다.
설계상 비트코인은 임의의 복잡성을 가진 스마트 계약을 위한 튜링 완전 프로그래밍 언어를 포함하지 않습니다. 그러나 이것이 비트코인이 스마트 계약을 지원하지 않는다는 의미는 아닙니다. 사실, 비트코인의 기본 스크립팅 언어(비트코인 스크립트)에 포함된 간단하고 저수준의 원시 작업들은 상당한 복잡성을 가진 스마트 계약을 작성하는 데 활용될 수 있습니다. “비트코인 스크립트는 유용한 원시 작업 세트를 제공합니다 — 서명 확인, 해시 계산, 절대 및 상대 타임락 — 그리고 이러한 원시 작업을 결합할 수 있는 자유를 제공합니다,”라고 Chain의 보도 자료는 언급합니다.
그러나 비트코인 스크립트는 소프트웨어 개발자들에 의해 완전히 사용되지 않고 있으며, Chain에 따르면 이는 “비트코인 스크립트 프로그램을 읽고 작성하는 상대적인 어려움과 이러한 프로그램에서 주소를 생성하고 사용하는 것 때문”입니다. 사실, 비트코인 스크립트는 매우 저수준의 어셈블리 유사 언어로, 고급 프로그래밍 언어의 가독성과 사용 용이성을 제공하지 않습니다. 따라서 대부분의 비트코인 프로그래머는 비트코인 스크립트를 한계까지 밀어붙이지 않고 간단한 애플리케이션에만 국한됩니다.
Chain 개발자들은 Ivy를 통해 이를 변화시키고자 하며, Ivy는 개발자들이 비트코인 프로토콜에서 지원하는 임의의 조건 조합을 시행하는 사용자 정의 SegWit 호환 비트코인 주소를 생성할 수 있게 해주는 고급 언어입니다.
올해 초, Chain은 Ivy를 사용하여 Chain Core 블록체인 네트워크에서 스마트 계약을 설계, 초안 작성 및 테스트하기 위한 도구인 Ivy Playground를 출시했습니다. 이제 Chain은 비트코인 개발자에게 Ivy를 제공하고, 개발자들이 시뮬레이션된 비트코인 계약을 설계, 생성 및 사용할 수 있도록 하는 Ivy Playground for Bitcoin을 출시하고 있습니다. 이 놀이터에는 비트코인을 위한 미리 로드된 스마트 계약 템플릿과 개발자 문서가 포함되어 있습니다.
면책 조항에서는 Ivy가 상대적으로 테스트되지 않은 프로토타입 소프트웨어이며 교육 및 연구 목적으로만 사용해야 한다고 명시하고 있습니다. “실제 비트코인을 제어하기 위해 Ivy를 사용하려고 시도하지 마십시오,”라고 첫 페이지 문서는 경고합니다.
Chain 외에도 다른 개발자들은 비트코인이 더 정교한 스마트 계약과 사용자 친화적인 프로그래밍 환경이 필요하다는 것을 깨닫고 있습니다. 최근 블록체인 개발자 Blockstream은 블록체인 기반 스마트 계약을 위한 새로운 프로그래밍 언어인 Simplicity를 소개했으며, 이는 Blockstream의 사이드체인에 포함될 예정이며 궁극적으로 비트코인에도 포함될 것입니다. 수석 개발자 러셀 오코너는 “광범위한 검토 후,” Simplicity 지원이 비트코인의 다음 릴리스 중 하나에 포함될 수 있다고 말했습니다.
Blockstream 발표에서 오코너는 Ivy의 프로그래밍 언어 개발 노력이 Simplicity로 컴파일되는 데 적합할 수 있다고 언급했습니다. 그러나 현재 Ivy의 이러한 더 정교한 비트코인 스마트 계약을 향한 진전이 일부 사람들이 예상했던 것보다 더 빠르게 진행되고 있는 것으로 보입니다.