- Web3를 뒷받침하는 블록체인 -- 알아야 할 '5가지 특징'이란
-
- Category사물인터넷/ ICT/ 제조·4.0
- 기사일자 2022.10.17
- 신문사 Nikkei X-TECH
- 게재면 online
- Writerhjtic
- Date2022-10-23 21:12:03
- Pageview285
Nikkei X-TECH_2022.10.17
기술에서 읽어내는 ‘Web3’
Web3를 뒷받침하는 블록체인
알아야 할 '5가지 특징'이란
앞에서 이미 언급했듯이 블록체인은 웹3의 중심을 이루고 있다. 블록체인을 특징짓는 것은 '블록화된 장부 데이터', '암호 해시에 의한 동일성 담보', '전파(Propagation) 알고리즘', '공개키 암호를 이용한 인증', '합의 형성 알고리즘' 등 5가지이다.
우선 블록화된 장부 데이터란 블록체인에서 데이터 기록 방식을 가리킨다. 블록체인에서는 기록할 데이터를 '블록'이라고 하는 단위로 분할하고 이를 연결해 관리한다. 블록 안에는 기록하는 데이터 그 자체인 트랜잭션(거래) 데이터와 이전 블록 전체를 요약한 데이터(요약 데이터)가 들어 있다.
블록체인이 조작이 어렵다는 말을 듣는 이유는 이 요약 데이터가 있기 때문이다. 데이터를 한 군데 조작하면 이후의 블록 요약 데이터에 부정합이 발생한다. 트랜잭션 데이터를 조작하기 위해서는 이후 모든 블록의 요약 데이터를 다시 작성해야 한다.
재작성을 어렵게 하는 것이 두 번째, 암호 해시에 의한 동일성 담보이다. 구체적으로는 앞에서 언급한 요약 데이터 작성에 해시함수를 적용한다. 이를 통해 조작되었을 때 검지할 수 있게 된다. 이전 블록의 해시값을 트랜잭션 데이터와 함께 기입하기 때문에 조작이 어렵다.
이러한 블록의 연결은 블록체인에 참여하는 모든 노드가 보유한다. 이것이 블록체인이 '분산형 대장'으로 불리는 이유이다. 노드 간에는 직접 P2P(Peer to Peer) 방식으로 통신한다. 이것이 세 번째, 전파 알고리즘이다. 클라이언트-서버 방식과 달리 각 노드가 대등한 입장에서 데이터를 주고받는다. 하나의 노드가 정지해도 다른 노드가 데이터를 유지하기 때문에 블록체인은 누군가가 독단적으로 운용을 멈추려 해도 멈출 수 없다.
네 번째, 공개키 암호에 의한 인증을 통해 참가자의 개인정보를 공개하지 않고도 블록체인 이용이 가능하다. 페어 키를 생성하고 이를 통해 블록체인과 데이터를 주고받는다.
마지막, 합의 형성 알고리즘은 추가된 트랜잭션 데이터를 노드 간에 공유하고 블록체인에 추가하기 위한 구조다. 트랜잭션 발생부터 블록체인 등록까지의 흐름을 확인해보자. 한 노드에서 트랜잭션이 발생하면 노드는 이것을 블록체인 전체에 통지한다. 다른 노드도 마찬가지로 전체에 트랜잭션을 통지해나간다.
하지만 잘못된 정보가 흘러나오는 경우도 있다. 어떤 트랜잭션을 추가하고 블록체인 전체에서 공유할지는 합의 알고리즘(Consensus algorithm)에 의해 결정된다. 합의 알고리즘에 의해 인증에 성공할 경우 트랜잭션이 블록체인에 등록된다. 실패할 경우에는 파기된다.
-- 이더리움, PoS를 도입 --
이러한 블록체인의 기초는 비트코인에 의해 만들어졌다. 하지만 Web3에서는 비트코인이 별로 사용되지 않는다. 스마트 컨트랙트 구현에는 적합하지 않기 때문이다.
Web3에서 자주 사용되는 것은 이더리움(Ethereum)이다. 이더리움은 스마트 콘트랙트의 자유도가 높다는 점이 특징이다. 디앱(dApps)을 개발하기 쉬워 가상화폐 이외의 용도를 개척해오고 있다.
이더리움은 현재, 등장 이래 최대 업데이트 '더머지(The Merge)'를 눈앞에 두고 있다. 올 후반에 실시 예정인 더머지는 이더리움이 안고 있던 과제 중 몇 가지가 개선되었다.
더머지에서는 합의 알고리즘이 바뀐다. 이것이 가장 중요하다. 지금까지는 계산량이 많아 시간이 걸리는 PoW(Proof of Work)를 채택하고 있었다. 그것이 단시간에 계산이 끝나는 PoS(Proof of Steak)로 바뀐다.
PoS는 ‘보유에 근거하는 증명’이라고 번역할 수 있다. 블록체인에서 나도는 토큰, 이더리움으로 말하면 가상화폐 ‘이더(Ether)’를 보유해온 노드라면, 그 블록체인을 해치는(신뢰성을 해치는) 행위는 하지 않을 것이라는 생각에 근거하고 있다. 만일 부정을 행하면 신뢰를 잃고 이더의 가격이 하락해 보유자도 손해를 보고 만다.
PoS에서는 토큰을 일정량 이상 보유한 노드를 '밸리데이터(Validator, 검증인)'라고 부르며, 블록을 추가하는 담당자를 밸리데이터 중에서 랜덤으로 선출한다. 블록을 추가한 노드는 토큰을 보상으로 받는다.
-- 체인을 분할하여 처리를 고속화 --
또 하나의 큰 변화는 샤딩(Sharding)의 구현이다. 블록체인을 샤드라고 부르는 그룹으로 분할해 처리 속도를 높이는 구조이다.
샤드 별로 체인의 일부를 검증한 후에 각 샤드의 검증 결과를 연결한다. 이를 통해 복수의 트랜잭션을 병렬로 처리할 수 있게 되어 처리속도 향상을 기대할 수 있다.
하지만 합의 형성 알고리즘으로 PoW를 채택하는 블록체인이 샤딩을 실시하기는 어렵다. 샤드 단위로 분할했을 때 특정 노드에 샤드를 탈취당할 가능성이 있기 때문이다.
반대로 말하면, 합의 알고리즘을 PoS로 바꿈으로써 샤딩 구현이 가능하게 되었다. PoS에서는 특정 노드가 특정 샤드를 계속 담당하는 상황은 발생하기 어려워 탈취 우려가 적기 때문이다.
-- 가스비 절감 기대 --
더머지에서의 PoS와 샤딩의 구현은 이더리움이 안고 있는 과제 중 하나인 가스비 문제를 해결할 것으로 기대되고 있다. 가스비란 이더리움에 트랜잭션을 추가할 때 발생하는 수수료이다. 블록체인에서는 트랜잭션을 처리할 때 인증한 노드에 보상으로 수수료를 지불한다. 이것이 가스비가 된다.
가스비는 트랜잭션 처리 수요에 따라 변동하지만, 최근 가격 상승 추세에 있었다. 디앱 이용이 활발해지면서 트랜잭션 처리 수요가 급증했기 때문이다. 이더리움 송금 비용도 은행을 통한 법정화폐 송금보다 훨씬 높은 상황이 이어지고 있었다.
더머지로 인해 이더리움 전체 처리 속도가 향상되면 트랜잭션 처리 수요가 늘어도 가스비는 급등하기 어려워질 것이다.
-- 이더리움 VM이 처리를 실행 --
또 하나, 이더리움을 특징짓고 있는 것이 '이더리움 VM'이라는 가상 머신의 존재이다. 이더리움에서는 이 VM을 사용해 스마트 콘트랙트를 실행한다. 이더리움 VM은 ‘튜링이 완전한 실행 환경'이라고 한다. 이를 통해 이더리움에서는 이론상 어떠한 프로그램도 실행할 수 있게 된다.
이더리움의 스마트 콘트랙트는 전용 언어를 사용해 기술한다. 솔리디티(Solidity)가 자주 사용된다. 솔리디티로 기술한 스마트 콘트랙트를 컴파일하고 이것을 블록체인에 입력함으로써 가상머신이 콘트랙트를 처리하게 된다.
-- 토큰이 규격화 --
이더리움 상에서 주고받는 토큰에는 몇 가지 규격이 마련되어 있다. 이러한 규격이 있기 때문에 하나의 월릿으로 서로 다른 NFT를 관리할 수 있는 것이다.
많은 토큰에 쓰이는 것이 ERC(Ethereum Request for Comments)20이다. ERC20에 의해 토큰을 공통 인터페이스 상에서 취급할 수 있게 되었다.
하지만 ERC20에는 운용 상의 문제가 있었다. 존재하지 않는 주소로 토큰을 잘못 전송한 경우, 스마트 콘트랙트가 트랜잭션을 처리하지 못해 토큰이 소실되는 문제이다. 실제로 ERC20을 기반으로 만들어진 토큰 중 몇 억엔 분이 소실되었다고 알려져 있다.
그래서 새롭게 등장한 규격이 'ERC223'이다. ERC223은 'token Fallback'이라는 함수를 실행해 앞에서 말한 문제를 해결한다. token Fallback을 사용하면 트랜잭션 처리에 실패했을 때 송신원으로 토큰을 반환할 수 있다. ERC223은 ERC20과 호환되기 때문에 ERC20을 지원하는 스마트 콘트랙트는 ERC223 토큰에도 적용이 가능하다.
ERC20과 ERC223은 가상화폐와 같은 교환 가능한 토큰(FT:Fungible Token)용 규격이지만, ERC721이라는 NFT 전용 규격도 만들어졌다. ERC721은 토큰의 소유자나 양도 이력을 적을 수 있는 함수를 구비하고 있다. 이러한 것들이 기입된 상태에서 블록체인에 보내지기 때문에 조작할 수 없는 정보가 되어 NFT로서 성립한다는 것이다.
ERC1155라는 하이브리드 규격도 등장했다. ERC1155에서는 하나의 스마트 콘트랙트로 FT와 NFT를 모두 취급할 수 있다. 또한 ERC1155에서는 복수의 토큰을 한 번에 송신할 수 있다.
-- 끝 --
Copyright © 2020 [Nikkei XTECH] / Nikkei Business Publications, Inc. All rights reserved.