블록체인을 분석하기 위한 실질적인 접근

블록체인, 비트코인, 암호화폐, 가상화폐, SAS이벤트스트림프로세싱, SAS비주얼인베스티게이터


최근 영국 유력지 파이낸셜타임스(FT)는 미국 음료 업체인 ‘롱 아일랜드 아이스 티(Long Island Iced Tea Corp)’가 자사의 이름을 ‘롱 블록체인(Long Blockchain)’으로 바꾸겠다고 발표하자 주가가 하루 만에 500% 급등했다고 보도했습니다. 비트코인을 필두로 시작된 블록체인 열풍은 가상화폐 시장을 넘어 전체 산업과 기업에 영향을 미치고 있는데요. 이러한 현상을 두고 블룸버그는 20년 전 모든 기업이 저마다 인터넷 기업이라고 자칭하던 닷컴 열풍을 상기시킨다고 설명하기도 했습니다.


실제 세계적인 블록체인 석학이자 미래학자인 돈 탭스콧은 블록체인을 19세기의 자동차, 20세기의 인터넷과 비교하며 ‘제 2의 인터넷’이라고 평가했습니다. 나아가 그는 블록체인 기술을 통해 모든 사람들이 직접 개인 정보와 데이터를 관리하면서 정보 생산 및 소유의 불균형을 해소할 것으로 내다봤는데요.


그렇다면 블록체인이란 무엇이며, 이를 통해 생성된 정보와 데이터를 어떻게 분석하고 활용할 수 있을까요? 오늘은 전략적 또는 경험적 관점에서 다양한 형태의 블록체인 분석에 대해 설명하고자 합니다. SAS 기술은 다양한 오픈 소스 블록체인 기술이 존재하는 복잡한 환경에서 운영, 가치/자산, 규제적 관점에 대한 고급 분석을 제공하는데요. 우선 블록체인 분석의 바탕이 되는 몇 가지 기본적인 블록체인 기술의 개요에 대해 살펴보겠습니다.



블록체인이란? – 블록체인의 정의

블록체인을 쉽게 연결된 리스트(linked list)의 연결된 리스트라고 설명할 수 있습니다. 클라이언트가 생성한 개별 거래는 합의 프로세스에 의해 변경할 수 없는 블록들이 연결된 리스트인 데이터 저장소 안으로 수집, 업데이트됩니다. 이때 블록체인의 보안성과 무결성은 내장된 프로토콜과 암호화 알고리즘을 통해 보장되는데요.


신뢰할 수 있는 제 3의 이해관계자가 없어도 당사자 간 직접 거래를 수행할 수 있는 방법을 제공함으로써 블록체인의 인기가 높아지고 있습니다. 일반적으로 블록체인은 송금, 상품 추적, 법적 문서 공유 등에 활용되고 있습니다.



블록체인의 유형

블록체인의 유형은 크게 퍼블릭 블록체인(public blockchain)과 프라이빗 블록체인(private blockchain)으로 나눌 수 있습니다. 누구나 거래 네트워크에 참여할 수 있는 퍼블릭 블록체인은 주로 비트코인, 이더리움과 같은 암호화폐 분야에서 널리 활용되고 있으며, 익명 또는 가명 식별자(pseudonymous identity)를 제공합니다.


반대로 프라이빗 블록체인은 허가를 받은 참여자들이 독자적으로 사용하기 때문에 허가된 원장(Permissioned Ledger)이라고도 불리는데요. 주로 기업 방화벽 뒤에서 구현되며, 일반적으로 알려진 엔터프라이즈용 신원을 갖추고 있습니다. R3코다(R3Corda), 체인(Chain), 빅체인DB(BigChainDB), 하이퍼레저(Hyperledger) 등 개념 증명(PoC; Proof-of-Concept) 프로젝트의 대부분은 프라이빗 블록체인을 사용합니다.



블록체인의 구조

구조는 운영 측면에서의 블록체인의 구성요소를 정의하는데요. 주로 블록체인의 데이터 저장소를 중심으로 합니다. 오픈 소스 블록체인이 다양하게 구현됨으로써 블록체인 데이터 구조 또한 매우 다양해졌는데요. 블록체인 데이터 저장소의 대부분은 다른 블록체인 기술의 파생물입니다. 예를 들어, Litecoin, ZCash, Prova는 비트코인의 다양한 구현 방식을 기반으로 합니다. LevelDB, RocksDB, MongoDB와 같은 키/값(key/value) 데이터 스토어는 주로 허가된 블록체인을 기반으로 하죠.



블록체인 데이터의 유형

지금까지의 논의를 바탕으로 블록체인 데이터를 크게 두 가지 범주로 나눌 수 있습니다.


1. 첫 번째 범주는 유휴 상태의 데이터 또는 블록체인의 변경 불가능한 데이터 저장소에 이미 저장되어 있는 데이터입니다. 비트코인은 시작부터의 모든 거래를 자체 블록체인에 저장하고 있는데요. 이때 블록체인의 변경 불가능한 데이터 저장소에 접근하는 방법에는 여러 가지가 있습니다. 예를 들어, 파이썬(Python) 스크립트와 SAS 베이스(Base SAS®)를 이용해 전체 비트코인 블록체인을 규제와 운영에 대한 폭넓은 분석을 지원하는 SAS 데이터 세트로 내보낼 수 있습니다. 특히 금전이 오고 가는 거래의 경우, 자금세탁방지(AML), KYC(Know Your Customer; 고객바로알기), 사기 방지를 위해 활용할 수 있죠!


2.  두 번째 범주는 바로 이동중인 데이터(data in movement)입니다. 이벤트 형태의 데이터 수집 지점은 개별 블록체인 프로세스를 따라 이동하는데요. 다양한 클라이언트 지점에서의 이벤트 생성, 채굴/합의, 블록체인의 프로토콜 프로세스를 추가하면 모든 블록체인 활동 또는 블록체인 콘텐츠에 대한 스트림 기반의 실시간 분석을 구현할 수 있습니다. 이 접근법은 완전히 암호화된 블록체인의 경우에 더욱 유용하죠!



실시간 블록체인 데이터 분석

초 단위로 업데이트되는 블록체인 데이터를 분석하기 위해서는 이동중인 데이터를 수집하는 스트리밍 접근법을 활용해야 하는데요. 아래 이미지는 SAS 이벤트 스트림 프로세싱(SAS® Event Stream Processing)  제품을 이용해 개발한 블록체인 시뮬레이터의 워크 플로우를 보여줍니다. 이 시뮬레이터는 합의 프로세스에 의해 제어되는 채굴 프로세스(miner process) 안에서 클라이언트 요청을 생성합니다. 이때 시뮬레이터와 합의 프로세스 모두 블록체인 업데이트를 관리하기 위해 SAS 이벤트 스트림 프로세싱 모델에 연결된 pub/sub API(애플리케이션 프로그래밍 인터페이스)를 사용합니다.


블록체인, 비트코인, 암호화폐, 가상화폐, SAS이벤트스트림프로세싱, SAS비주얼인베스티게이터

▲SAS 이벤트 스트림 프로세싱(SAS® Event Stream Processing) 제품을 이용해 개발한 블록체인 시뮬레이터의 워크 플로우



스트리밍 기반의 블록체인 분석 기술

이 방법을 이용한 최초의 스트리밍 분석(streaming analytics)은 운영성을 띠며, 초당 거래와 초당 블록 업데이트 그리고 거래의 생성부터 블록 업데이트까지의 전체 횟수를 포괄합니다.


이 모델에 환경 구성 창을 추가하면 블록체인 채굴을 시작, 중지, 일시 정지, 뮤트할 수 있습니다. 또 블록체인 업데이트 속도를 동적으로 변경할 수 있는데요. 향후 블록 크기와 경과 시간과 같은 블록체인 지표를 자동으로 관리하기 위해 채굴과 합의 프로세스 단에 딥러닝(deep learning) 기능이 추가 강화될 것입니다. SAS 이벤트 스트림 프로세싱 엔진을 이용하면 30개의 채굴 작업으로 850 밀리초(millisecond) 속도의 블록체인 업데이트를 구현할 수 있는데요. 사물인터넷(IoT) 프로젝트 분석 시 매우 이상적인 환경입니다.


그렇다면 R3코다(R3Corda), 하이퍼레저(Hyperledger), 체인(Chain)과 같은 오픈 소스 블록체인에서 데이터를 분석하는 것은 어떨까요? 특정 블록체인에 대한 프로세스가 원하는 이벤트를 생성하도록 수정하면 이 시뮬레이터와 유사한 SAS 이벤트 스트림 프로세싱 모델(합의 및 구성 창을 제외)을 적용할 수 있습니다.


블록체인 기술이 사물인터넷 분야에 빠르게 적용되면서 더 빠른 블록 업데이트, 프로세스, 커뮤니케이션에 대한 요구가 스트림 중심의 분석 환경으로 나아가고 있는데요. SAS 이벤트 스트림 프로세싱과 같은 스트리밍 기반의 블록체인 분석 기술은 블록체인 성공의 핵심 요소로 자리잡고 있습니다.


블록체인, 비트코인, 암호화폐, 가상화폐, SAS이벤트스트림프로세싱, SAS비주얼인베스티게이터

▲SAS 이벤트 스트림 프로세싱과 같은 스트리밍 기반의 블록체인 분석 기술은 블록체인 성공의 핵심 요소로 자리잡고 있습니다.



블록체인 규제 및 조사

암호화폐 분야에서 쓰이는 공공 블록체인은 자금세탁방지(AML), KYC(Know Your Customer; 고객바로알기), 사기 방지 등과 같은 이슈와 밀접하기 때문에 규제 압력에서 자유롭지 못한데요. 특히 최근 투자자들에게 가상화폐를 판매하는 방식으로 블록체인 프로젝트의 투자금을 모집하는 ICOs(Initial Coin Offerings; 신규 코인 발행)가 증가하고, 암호화폐 시장의 가치가 높아짐에 따라 전 세계적으로 규제 압력이 거세지고 있습니다.


SAS 비주얼 인베스티게이터(SAS® Visual Investigator)는 다양한 지능형 분석과 관리 툴로 엄격한 블록체인 규제에 대응합니다. 사기, 보안, 컴플라이언스 조사를 통해 의심스러운 활동을 효과적으로 밝혀내는데요. 다양한 형태의 데이터를 가져오고, 데이터마다 고유한 관계와 사용자 인터페이스를 정의하는 것이 특징입니다.


블록체인, 비트코인, 암호화폐, 가상화폐, SAS이벤트스트림프로세싱, SAS비주얼인베스티게이터


구체적으로 비트코인 주소를 이용한 자금세탁 조사 과정을 예로 들어보겠습니다. 먼저 SAS 비주얼 인베스티게이터로 blockchain.info API와 파이썬 스크립팅을 이용해 해당 비트코인 주소의 모든 거래를 추출하고, 입력 거래의 세 가지 수준을 도출합니다. 그리고 다른 웹 API로부터 거래 날짜별 비트코인 가격을 추출함으로써 거래가 생성될 때의 달러 가치를 파악합니다.


재미있는 사실은 IP Location Finder를 통해 주어진 IP 주소를 기반으로 경도와 위도를 식별했다는 것입니다. 이 데이터를 집계, 결합한 후 SAS 비주얼 인베스티게이터로 가져와 간단한 데이터 드래그 앤 드롭(Drag and Drop)만으로 거래 및 사용자의 네트워크 다이어그램과 지리적인 활동 맵을 작성했습니다.


이때 가장 까다로운 작업은 비트코인 입력 거래의 추출과 집계인데요. 비트코인 주소의 익명성 때문에 조사 과정에서 알려진 주소 외에는 패턴, 금액, 위치 정보만 활용할 수 있습니다. 하지만 SAS 비주얼 인베스티게이터를 이용하면 다양한 블록체인 데이터에 간편하게 접근하고 활용할 수 있습니다.


블록체인, 비트코인, 암호화폐, 가상화폐, SAS이벤트스트림프로세싱, SAS비주얼인베스티게이터



블록체인 분석의 미래

블록체인 기반의 기술은 금융은 물론 헬스케어, 제조, 리테일 등 수많은 산업으로 확산, 적용되고 있습니다. 안전성과 분산성이라는 본질적 특징을 가진 블록체인은 보안이 중요한 모든 시스템에서 효율적으로 활용될 수 있기 때문입니다. 보다 현명한 계약 관리부터 송금 유효성 검사까지, 블록체인 분석 기술의 활용성은 무궁무진합니다.


이처럼 블록체인 기술이 빠르게 확산됨에 따라 관련 데이터 또한 점점 더 복잡해지고 방대해지고 있습니다. 기업은 블록체인 데이터에 효과적으로 접근하고 분석해야 하며, 동시에 여러 변종 블록체인 기술에 대한 분석력 역시 확대해가야 하는데요. SAS는 빠르게 진화하고 있는 블록체인 기술 분야에서 고급 분석 솔루션과 기술을 제공합니다.


SAS 웹사이트에서 초당 수백만 개의 센서 데이터를 실시간으로 변환하고 분석하는 SAS 이벤트 스트림 프로세싱에 대해 확인해보세요. 금융, 에너지, 리테일, 운송 등 다양한 산업에서 의미 있는 신호를 식별하고 분석해 고객 경험 향상, 자산 성능 관리, 사기 방지, 사이버 보안 등 폭넓은 분야에 활용할 수 있습니다.


블록체인, 비트코인, 암호화폐, 가상화폐, SAS이벤트스트림프로세싱, SAS비주얼인베스티게이터




저자

샘 펜필드(Sam Penfield) l SAS 자문 솔루션 아키텍트(Advisory Solutions Architect at SAS)


편집

조민기 수석 l SAS코리아 SSP 사기방지 솔루션