• 본 게시글은 K-MOOC 묶음강좌 '블록체인 암호화폐:입문부터 심화까지' 강의를 수강하고 공부하며 정리한 내용입니다.
블록체인은 ‘블록’이라는 소규모 데이터를 체인 형태의 연결 기반 분산 데이터 저장 환경에 저장하여 누구도 임의로 수정할 수 없고 변경의 결과를 열람할 수 있는 분산 컴퓨팅 기술 기반의 원장관리 기술 입니다.
가상화폐는 지폐, 동전과 같은 실물 없이 네트워크로 연결된 특정한 가상 공간에서 사용되는 디지털 화폐 또는 전자화폐를 이야기합니다. 특히 블록체인 기술을 기반으로 만들어진 가상 화폐를 '암호 화폐'라고 부릅니다.
암호화폐는 분산장부에서 공개키 암호화를 통해 안전하게 전송하고 해시 함수를 이용하여 소유권을 쉽게 증명해낼 수 있는 디지털 자산을 이야기합니다. 쉽게 말해서, 블록체인을 기반으로 한 디지털 자산 입니다.
비트코인, 이더리움 등이 '암호 화폐 (Cryptocurrency)'에 해당하며 최근에 한국에서는 이러한 암호화폐를 '가상자산'으로 부르고 있습니다.
비트코인은 2008년 10월 '사토시 나카모토'라는 익명의 개발자에 의해 'Bitcoin: A Peer-to-Peer Electronic Cash System'라는 논문으로 2009년 1월 3일 처음 발행된 암호화폐입니다.
블록체인 기술을 기반으로 만들어진 최초의 암호화폐로, 1세대 블록체인이라고 부릅니다.
이후 글에서도 다루겠지만 비트코인(Bitcoin)은 SHA-256 해시 알고리즘 기반의 작업증명(PoW) 방식의 합의 알고리즘을 채택하여 채굴이 진행되고 있습니다.
채굴은 블록체인 네트워크에 추가할 새로운 블록과 비트코인을 생성하는 것으로, 시간과 컴퓨팅 파워를 소모하여 암호를 해독하는 일련의 과정으로 진행됩니다.
난이도에 해당하는 특정 목표값(Difficulty)과 0부터 1씩 증가하는 nonce라는 값이 존재합니다.
이 nonce를 hash 함수를 통해 임의의 hash값으로 만들어내고, 이 hash값이 목표값보다 작은 값을 가질 때까지 nonce값을 1씩 증가시키면서 반복합니다.
조건이 만족되면 채굴이 완료되고 채굴에 대한 보상을 받습니다.
채굴자들은 시간과 컴퓨팅 파워의 비용 소모에 대해, 두가지 형태의 보상을 받게 됩니다.
블록체인 기술을 기반으로 스마트 컨트랙트 기능을 구현하기 위한 분산 컴퓨팅 플랫폼
비트코인의 핵심 기술인 블록체인에 계약서 등의 추가 정보를 기록할 수 있는 점을 더하여, SNS, Email, 전자 투표 등 다양한 정보를 기록하는 시스템을 만들 수 있도록 한 플랫폼
스마트 컨트랙트는 Nick Szabo가 1994년 개념을 제안한 개념으로, 디지털 방식으로 특정한 계약을 수립, 검증, 실행하기 위한 컴퓨터 프로토콜을 말합니다.
비탈릭 부테린은 이 개념을 블록체인에 적용하여 이더리움을 개발하였습니다.
블록체인을 이용한 스마트 컨트랙트는 거래들은 추적할 수 있고 되돌릴 수 없기 때문에 제 3자없이 신뢰할 수 있는 거래의 수행을 가능하게 합니다. 제 3자없이 신뢰할 수 있는 거래를 수행할 수 있으므로 기존 계약 관련 법률보다 우수한 보안성을 제공하고 저렴한 비용으로 계약을 처리할 수 있습니다.
디지털 명령어로 계약을 작성하면 조건에 따라 계약 내용을 자동으로 실행할 수 있고, 디지털로 된 계약서이기 때문에 조건에 따른 계약 결과가 명확하고 내용을 즉각 이행할 수 있습니다.
이더리움은 Solidity(프로그래밍 언어)를 사용하여 스마트 컨트랙트를 작성하고, 작성된 코드를 이더리움 컴퓨터가 이해할 수 있는 코드로 변환하여 블록체인에 저장하여 스마트 컨트랙트를 수행합니다.
스마트 컨트랙트을 작성하는 것은 사람이므로 논리적 결함이 있을 수 있지만, 작성자는 이러한 문제를 곧바로 파악하기 어렵습니다. 이러한 문제로 스마트 컨트랙트가 해킹되어 오작동하는 사례가 발생할 수 있고, 대표적인 사례로 DAO해킹이 있습니다. 원치 않는 작동 혹은 요청이 있더라도 계약이 수행된다는 것을 알아두어야 하고, 따라서 코드를 작성할 때 신중히 작성해야합니다.
DAO 해킹이란?
스마트 컨트랙트에서 코드의 취약점을 이용하여 약 520억원 가량을 중간에서 탈취한 해킹 사건입니다. 해당 사건으로 인해 이더리움 네트워크를 하드포크 하였고, 기존의 이더리움 블록체인을 그대로 유지하는 이더리움 클래식이 만들어졌다.
DApp은 블록체인 위에서 동작하는 어플리케이션으로, 중앙 서버 없이 정보를 분산하여 저장하고 블록체인을 기반으로 만들어진 스마트 컨트랙트를 통해서 서비스를 제공하여 스마트 컨트랙트의 규칙에 따라 처리됩니다.
현재 암호화폐거래소, 도박, 지갑, 게임, 금융, 미디어, 소셜, 스토리지, 자산, 정부, 개발, 보안, 인증, 에너지, 건강, 보험 등 많은 영역에서 개발되고 있습니다.
정보를 블록체인에 저장하여 해킹이 어렵고 삭제가 불가능하며 정보의 투명성을 제공합니다. 즉, 블록체인의 장점을 가집니다.
디앱의 서비스를 이용하기 위한 메시지 생성을 위해서 비용(수수료)을 코인이나 토큰으로 지불해야 합니다.
블록체인마다 속도에 차이가 있지만 전통적인 앱보다 비교적 느립니다.