BlockChain
BlockChain
BlockChain 이란 무엇인가
- 블록체인은 분산 컴퓨팅 기술 기반의 데이터 위변조 방지 기술이다.
- 비트코인, 이더리움 등 암호화폐에 사용된 핵심 기술
- 블록체인 기술이 갖는 중요한 특징은 데이터를 분산 처리 및 저장이다.
- P2P 방식을 기반으로 소규모 데이터들이 체인으로 무수히 연결되어 형성된 ‘블록’ 이라는 분산 데이터 저장 환경에 관리 대상 데이터를 저장함으로써 누구도 임의로 수정할 수 없고 누구나 변경의 결과를 열람할 수 있게끔 만드는 기술이다.
- 블록에는 해당 블록이 발견되기 이전에 사용자들에게 전파되었던 모든 거래 내역이 기록되어 있고, 이런 블록들의 집합을 블록체인이라 칭한다. 쉽게 말하면 수많은 기록을 한 묶음으로 만들어버리는 기술이다.
- 기존 전자화폐로 거래할 때는 중앙 서버에 거래 기록을 저장했지만 블록체인은 모든 사용자에게 거래 기록을 보여주며 서로 비교해 위조를 막는다.
- 중앙 관리의 필요성이 없어지기 때문에 비용적으로도 효율을 꾀할 수 있다.
- 결국 중개자의 개입 없는 신뢰가능한 지불 체계를 구현하는 것
- 비트코인 창시자 ‘사토시 나카모토’ 는 블록체인을 개발하고 비트코인을 만든 것이 아닌 P2P만으로 운영되는 전자 화폐 시스템인 비트코인을 개발하면서 발생하는 문제를 블록체인을 개발, 적용함으로써 해결했다.
Public BlockChain 퍼블릭 블록체인
Bitcoin 비트코인
- 퍼블릭 블록체인의 첫 번째 구현 사례
- 각 ‘블록’에 포함된 거래 내역이 악의적인 공격자에 의해 변조되지 않았는지를 검증하고 정상적인 블록만 남기기 위해 Proof-of-work 방식을 도입했다.
- 채굴이라는 방식을 통해 수많은 노드 ( 블록체인 네트워크 참가자들 ) 들 중 누군가가 직접 이전 블록들과 연결되는 ( 체인 ) 새로운 블록을 만들어냈음에 성공했음( Work )을 증명하는 ( Proof ) 방식으로 이루어진다.
- 비트코인 네트워크에 참여하는 모든 노드 ( 사용자 ) 들은 다음에 올 블록을 만들어 낼 수 있는 권리를 가지고 있다.
- 한 마디로 이전 블록들과 연결되는 새로운 블록을 만들어냈음을 증명하는 방식이다.
- 비트코인 채굴이란 새로운 ‘블록 후보’들의 블록 헤더값을 해시 함수에 넣고 돌려, 그 실행 결과가 비트코인 네트워크에서 정한 난이도 이하의 값이 될 때 까지 블록 헤더의 논스 값을 바꿔나가는 과정이다.
Ethereum 이더리움
- 스마트 컨트랙트를 구현한 블록체인 플랫폼이다.
- 스마트 컨트랙트 만을 위한 언어 ( Solidity, LLL 등 ) 을 개발하고 이를 실행시키기 위한 가상 머신 ( EVM, Ethereum Virtual Machine ) 도 제장하였다.
- 비트코인에서는 반복문이 동작할 수 없는 튜링 불완전한 스택 기반의 스크립트 언어라면 이더리움의 스마트 컨트랙트는 반복문을 포함하여 좀 더 복잡한 로직을 구성할 수 있는 튜링 완전 언어를 사용한다.
- 비트코인의 블록체인을 확장하여 탈중앙화된 응용 프로그램 ( dApps ) 이 블록체인상에서 구동 될 수 있는 구조를 가지고 있다.
- 하나의 암호화폐가 하나의 블록체인에서만 거래되던 기존의 패러다임을 여러개의 암호화폐가 하나의 블록체인에 거래될 수 있도록 한 블록체인이다.
- 단순 분산 원장 ( 광범위하게 널리 분포되어 있고 거래 내역을 적은 장부가 있는 ) 수준에 머물러 있던 블록체인을 수많은 서비스에 적용할 수 있게끔 탈바꿈시킨 혁신적인 시스템이다.
- 그래서 이더리움 부터 2세대 블록체인, 2세대 암호화폐 라 불린다. ( 비트코인은 1세대 )
- 단순한 가치 저장의 수단이 아닌 안에서 애플리케이션을 구동하고, 증권 등 자산을 만들고, 계약도 할 수 있는 비즈니스 플랫폼으로 가치를 가진다.
이더리움과 비트코인 ( 1세대 블록체인 ) 차이점
- 암호 해시함수
- 1세대는 SHA 계열의 해시함수를 사용
- 이더리움은 ASIC 저항성을 향상하고 채굴의 중앙화 해소를 위해 Ethash 라는 KECCACK 기반의 해시 알고리즘을 개발하여 사용
- MPT ( Modified Merkle Patricia Trie )
- MPT는 트랜잭션 데이터의 위변조 감지 및 스마트 컨트랙트 관련 상태 정보를 저장, 관리하기 위한 기술
- 1세대는 Merkle Tree를 이용해서 감지
- 이더리움은 Merkle Tree를 Patricia Trie와 접목시킨 MPT를 사용하여 상태 정보를 Key-Value 형식으로 저장하고 관리
- 암호화폐의 관리 기술에 관한 차이
그 외
-
카르다도 ( 에이다 )
- 블록체인 3세대
- 이더리움 킬러
- 이더리움 못지 않은 막강한 생태계
- 테조스, 트론, 이오스
- 비트코인은 단순 화폐(가치) 교환수단만 있을 뿐 이더리움과 같은 스마트 컨트랙트, 분산앱(Dapp) 등 복잡한 기능은 없다. 리플, 스텔라루멘 같은 경우도 비트코인과 마찬가지로 화폐 교환 수단만 있다. 국경 간 송금 등에 각광을 받는다.
Private BlockChain 프라이빗 블록체인
- 허가된 노드 ( 사용자 ) 만이 참가할 수 있는 블록체인 네트워크
- 네트워크 상의 모든 거래 이력이 전부 투명하게 공개되어서는 곤란한 금융권 등지를 중심으로 도입되고 있다.
- 주된 특징
- 암호화폐에 의존하지 않는다.
- 암호화폐는 블록체인에 데이터를 쓰기 위한 수수료로 활용되며, 이를 블록체인의 유효성을 검증해준 노드들에게 지급하는 형태이다.
- 그러나 프라이빗 블록체인은 특정 노드에게만 허용하기 때문에 굳이 수수료의 개념이 필요가 없다. ( 검증할 필요가 X )
- 따라서 암호화폐 시스템을 채택하지 않아도 된다.
- 처리 속도가 빠르다 - 유효성 검증에 참여하는 노드 수가 적기 때문에 비교적 빠르다. - 때문에 다수 합의 기반인 퍼블릭 블록체인과 달리 소수 합의에 적합한 다른 분산 합의 알고리즘을 사용하기도 한다.
- 암호화폐에 의존하지 않는다.
- 이더리움, 카르다노 등 퍼블릭 블록체인 오픈소스를 활용해 프라이빗 블록체인을 구성할 수도 있다.