습관처럼
블록체인 기술 용어 정리 본문
블록체인 기술 용어
- 노드(Node)
블록체인 분산원장 네트워크 노드이다. 블록체인은 중앙 집중형 서버에 거래 기록을 보관, 관리하지 않고 거래에 참여하는 개개인의 서버들이 모여 네트워크를 유지 및 관리하는데 이 개개인의 서버, 즉 참여자를 노드라고 한다. 비트코인은 채굴자부터 일반 사용자까지 모두 비트코인 네트워크 중 하나의 노드로 볼 수 있다. 다만 비트코인은 다중심화 특징을 갖고 있어 '비트코인 풀 노드'라는 중역할을 하는 노드가 필요하다. 네트워크의 데이터를 보관하며 생성된 거래마다 정보를 수신하는 노드는 거래에 대해 검증하고 다른 노드에 전송을 한다. 때문에 데이터가 한번 생성되면 이를 변조할 수 없고 노드의 수가 많을수록 블록체인 네트워크는 더 안전하다고 할 수 있다.
- 풀 노드(Full Node)
풀 노드는 모든 블록체인 원장을 가진 노드로 블록체인 데이터를 동기화하기 위해 메모리를 사용한다. 모든 거래를 검증하고 실시간으로 데이터를 업데이트할 수 있으며 분산 원장 중 블록체인 거래를 전송 및 수신하고 확인하는 중요한 역할을 담당한다. 비트코인에서는 비트코인 클라이언트를 통해 완전한 블록체인 데이터를 다운로드하고 보존한다.
- 소프트 포크(Soft Fork)
기존 블록체인의 일부 시스템 성능 개선을 위한 업그레이드를 의미한다. 기존의 체인을 때어낸뒤 수정 후 그대로 다시 체인에 덧붙이는 기술이며, 이전 노드들과 하위 호환이 가능하다. 일반적인 블록체인 업데이트들은 소프트 포크로 시행된다.
- 하드 포크(Hard Fork)
기존 블록체인과 호환되지 않는 새로운 블록체인을 생성하여 나뉘는 것이다. 기존 블록체인의 기능 업데이트나 잘못된 거래가 기록될 때 이를 바로잡기 위해 진행되며 기존의 블록체인과는 호환되지 않는 새로운 방식으로 변경한다. 업데이트된 체인을 계속 사용하지만 이더리움클래식, 비트코인캐시와 같은 예외도 있다.
- 하드 스푼(Hard Spoon)
기존 블록체인에서 새로운 체인이 생성되는 것은 하드포크와 동일하지만 새로운 합의 알고리즘을 사용 한다. 이미 존재하고 있는 기존 체인의 상태를 새로운 체인에 옮기는 것이며 기존의 체인과 경쟁함이 아닌 접근성을 높이기 위함이다. 개발 용도에 따라 새로운 토큰은 트랙잭션 수수료로 사용할 수도 있다.
- 영지식 증명(Zero-Knowledge Proof)
영지식 증명 체계는 한 사람이 다른 사람에게 사실의 증명에 관한 어떠한 정보도 보이지 않고 사실의 증명을 알 수 있도록 만드는 방법이다. 정보를 전혀 주지 않고 상대방에게 정보를 알고 있음을 증명하는 방법이며 영지식증명은 복잡한 과정을 거쳐야 하는 프로토콜 수행이다. 매 단계가 원래의 약속대로 잘 진행이 된다는 것을 확신하게 하는데 이용할 수 있으며 프로토콜의 건전성, 검증성, 신뢰성을 보장하기 위한 용도에 사용된다.
- 세그윗(Segwit)
암호화폐의 거래가 급증하면서 블록의 생성 속도와 크기가 문제가 되었으며 거래 시 데이터 용량을 줄이기 위한 방법으로 데이터를 분리한 것이 세그윗이다. 세그윗은 블록체인의 외부에서 거래량의 일부를 처리하는 방법이며 비트코인에서 진행된 세그윗은 하드포크가 아닌 소프트포크로 소프트웨어의 업그레이드를 하지 않더라도 세그윗 이전과 세그윗 적용 버전을 모든 노드에서 사용할 수 있다.
- 토큰 스왑(Token Swap)
토큰 형태의 암호화폐 프로젝트가 메인넷을 런칭하게 되면, 기존 플랫폼을 기반으로 제작되었던 토큰들은 독립된 블록체인의 자체 암호화폐(코인)로 변환되는 과정을 거친다. (스왑이 이루어지는 방식은 토큰에 따라 다를 수 있다.) 개인이 토큰 스왑 절차를 이행할 수 있는 방법은 개인지갑 활용과 거래소 활용의 두가지 보편화된 방식이 있다. OKCOIN은 상장된 모든 토큰에 대해 메인넷 런칭 시 토큰스왑 지원을 원칙으로 한다. 단 메인넷 런칭에 따른 토큰스왑을 지원하기 위해서는 해당 블록체인 자체 지갑의 안정성 확보가 필요하며 이에 대한 검증이 필요하다.
- 비잔틴 장군 문제(Byzantine General's Problem)
고대 동로마 비잔틴 제국을 비유한 시스템 문제이다. 분산 컴퓨팅 분야에서 오랫동안 풀지 못했던 난제로 서로 신뢰할 수 없는 사람들이 참여하는 분산된 P2P 네트워크에서 어떻게 합의를 이뤄낼 것인가에 대한 문제이다. 비잔틴 장군 문제에 대한 사토시 나카모토의 해결책은 블록체인과 작업 증명이다. 그는 작업 증명에 의해 검증 및 시스템이 유지되는 블록체인을 통해 신뢰할 수 없는 사람들이 참여하는 분산된 네트워크에서 신뢰할 수 있는 합의 방식을 도출해냈다. 개인은 서로 믿을 수 없지만, 개인이 모여 참여하는 네트워크 자체를 신뢰할 수 있게 만든 것이 블록체인이다.
- 이중 지불(Double Spending)
결제가 이중으로 발생할 경우 생기는 문제이다. 디지털 데이터의 경우 중앙제어 시스템이 있기 때문에 거래 요청이 발생한 순서대로 거래를 진행하면 이중지불 문제가 발생할 수 없으며 무한대로 복제가 가능하고 원본과 복사본의 구별이 어렵다. 때문에 디지털 화폐는 이중 지불이란 문제를 내재적으로 안고 있다. 디지털 데이터가 검증받지 못한다면, 그 데이터를 복사해서 동시에 여러 곳에 사용할 수 있다. 블록체인은 작업 증명을 통해 제3자 없이 이중지불을 검증한다. 기존의 금융 시스템에선 제3자가 거래를 검증해주는 방식으로 이중 지불 문제를 해결할 수 있다.
- 아토믹스왑(Atomic swap)
분리된 블록체인 상에서 운영되며 서로 다른 코인간의 직접적인 거래를 의미한다. 거래에 필요한 중앙화된 거래소나 다른 제3자의 개입이 전혀 없으며, 아토믹스왑은 일반 거래자들이 암호화폐를 구매하는데 있어 복잡한 여러 절차를 거치지 않게 해준다.
- BME(Burn and mint equilibrium)
토큰 모델 중 하나로, 재화나 서비스를 사용하기 위해 토큰이 사용되면 토큰이 소각(Burn)된다. 따라서 서비스가 많이 사용될수록 소각되는 토큰의 양이 늘어나게 되고 토큰 가치가 상승한다. 그러나 끝없이 소각만 진행되는 것을 막기 위해 발행(Mint)의 개념이 등장한다. Burn & Mint 모델은 토큰의 유통량을 조절하여 토큰가치에 영향을 미치게 된다.
- SPV(Simple Payment Verify)
비트코인을 받았다는 거래에 대해 모든 블록체인을 다운로드하지 않고 검증하는 간이 결제 확인 방법이다. 이는 비트코인 백서에서도 소개되고 있는 부분이다. 라이트 노드는 모든 블록 정보를 가지고 있지 않기 때문에 새로운 거래 정보를 수신받았을 경우 이 거래가 정상적인지 검증할 수 없다. 풀노드는 모든 데이터를 가지고 있기 때문에 로컬에 있는 블록 정보를 조회하여 검증을 할 수 있다. 라이트 노드에서 거래를 검증하기 위해 풀 노드에게 블록 정보를 요청하여 머클 트리를 통해 이 거래가 검증된 거래인지를 확인하는 방법이 SPV이다.
- 사이드 체인(Side Chains)
서로 다른 블록체인에 존재하는 자산 간의 상호 거래를 가능하도록 하는 기술이다. 예를 들어 이더리움 블록체인 위에서도 비트코인 거래가 가능하다. 비트코인이 가지고 있는 한계를 보완하면서 사용 범위를 확장할 수 있다.
- IPFS(InterPlanetary File System)
기존의 HTTP Web의 문제점을 해결하고 보완한 새로운 Web이다. 모든 컴퓨팅 장치를 동일한 파일 시스템으로 연결하려고 하는 P2P 분산 파일 시스템으로 데이터 탈중앙화를 위한 웹 프로토콜이다. 고용량의 파일을 빠르고 효율적이게 전달할 수 있으며 파일 중복을 알 수 있기 때문에 저장소 또한 효율적으로 사용할 수 있다.
- 솔리디티(Solidity)
스마트 컨트랙트(Smart contract) 작성 및 구현을 위해 사용되는 프로그래밍 언어이다. 이더리움 가상머신(EVM) 위에서 동작하고, 자바스크립트와 비슷한 문법을 가지며 개발자는 솔리디티를 통해 스스로 실행되는 비즈니스 로직을 스마트 컨트랙트에 담아 어플리케이션을 구현할 수 있다.
- 라이트닝 네트워크(Lightning Network)
암호화폐인 비트코인 기반 코드를 바꾸지 않고 네트워크에 추가로 층을 더하는 것이다. 비트코인 네트워크의 느린 거래 속도와 높은 전송 수수료를 해결하는 확장성 솔루션을 말한다. 복잡했던 거래 방식이 라이트닝 네트워크로 합의를 하고 보내는 사람이 서명만 하면 전송할 수 있다. 하지만 블록체인에 이 거래를 올리지 않으면 인정이 되지 않으므로 한번에 블록체인에 올릴 수 있다. 라이트닝 네트워크의 장점으로는 빠른 속도와 낮은 수수료가 대표적이다.
- 레이든 네트워크(Raiden Network)
비트코인에서 사용하는 라이트닝 네트워크와 유사한 개념의 프로젝트이다. 결제 채널을 열고 닫는 과정 사이에 있는 중간 거래들을 블록체인에 기록하지 않는 오프체인(Off-chain) 방법을 통하여 블록체인 기록을 최소화하고, 수수료를 절약할 수 있는 기술이다.
- 샤딩(Sharding)
단일의 데이터베이스나 웹 검색 엔진에서 대규모의 데이터를 효과적으로 처리하기 위해 수평으로 나누는 것을 말한다. 메인 체인이 처리해야 하는 블록을 일부 연결하여 각각의 샤딩에 분배하고 각 샤딩은 할당받은 블록의 유효성만을 검사한 뒤에 메인 체인에 전달한다. 하나의 블록이 전체 체인에 전달될 필요가 없어지기 때문에 거래 속도를 개선할 수 있다. 이더리움 개발진들은 현재 약 12개의 샤딩 노드를 시뮬레이션하고 있으며, 실제 가동되면 100개 이상이 운영될 것으로 예상하고 있다. 또한 이더리움의 비탈릭 부테린은 샤딩이 이더리움의 POS 캐스퍼에 병합될 예정이라고 밝혔다.
- 플라즈마(Plasma)
레이든 네트워크가 결제 채널을 열고 닫는 과정을 통해 오프체인을 활용하는 기술이라면, 플라즈마는 하부 체인(Child-chain)을 별도로 생성하고 거래를 진행하여 주요 체인에는 하부 체인의 검증에 필요한 최소한의 데이터만 올리는 방법을 통해 데이터 기록을 최소화하는 기술이다. 이를 통해 이더리움 블록 사이즈와 수수료 소비를 줄일 수 있고, 더 빠른 속도로 DApp을 구동할 수 있게 된다.
'금융 & 디지털' 카테고리의 다른 글
기업은행 디지털 용어 스터디 - 1회 (0) | 2020.03.27 |
---|---|
양자 컴퓨터 시대 그리고 암호화 기술 (0) | 2020.03.18 |
블록체인 기본 용어 정리 (0) | 2020.03.18 |
블록체인 투자 용어 정리 (0) | 2020.03.18 |
빅데이터 그리고 하둡 (0) | 2020.03.18 |