1. 블록체인 트릴레마
숫자 3을 의미하는 Tri와 명제를 의미하는 Lemma의 합성어인 트릴레마는 블록체인의 확장성(Scalability), 탈중앙화(Decentralization), 보안성(Security)의 세 가지 장점을 모두 만족할 수는 없다는 의미로 사용되고 있다. 다시 말하면 세가지 중 하나에 중점을 두면 나머지 두가지의 장점이 줄어들기 때문에 블록체인의 가치가 퇴색되는 경향이 있어 쉽게 어떤 하나의 특성을 부각시키고 발전시키기 쉽지 않다는 의미다.
세가지 특징 중 확장성은 블록체인 네트워크의 처리속도와 관련이 있는데 3세대 블록체인 네트워크인 EOS가 지분증명 합의 알고리즘과 시스템적 차별성을 이용해 확장성 문제를 해결하려고 노력했다. 그러나 일부에서는 이러한 노력에 반하여 탈중앙화 문제와 보안문제를 지적했다.
탈중앙화에 문제에 대한 반론으로 EOS 얼라이언스의 토마스 콕스의 블록체인 조건을 인용하자면 블록체인은 블록이 그룹화되고, 데이터 기록들의 리스트 증가하고, 블록은 암호화를 사용하여 연결되며, 각 블록에는 이전 블록, 타임스탬프 및 트랜잭션 데이터의 암호화 해시가 포함되어야 하고 트랜잭션 및 블록은 합의된 메커니즘을 통해 합의에 도달하는 여러 독립된 장치를 통해 검증되어야 한다. EOS는 위의 조건들을 충분히 충족하고 있다고 말한다.
GlueOS는 BTF-Dpos 방식을 채택하고 EOS가 가진 스테이킹 정책이 참여자 진입장벽을 가지고 있다 생각해 과감히 No Gas Fee, No staking 정책을 통해 진입장벽을 낮추고 보다 생태친화적인 퍼블릭 블록체인 네트워크를 지향한다. 또한 GlueOS 키 분산관리 저장 시스템과 GlueOS RNG를 통한 난수생성, 그리고 스마트컨트랙트 보안 감사 시스템을 통해 보안성 또한 향상시켰다.
뿐만 아니라 키페어, 하이브랩과 같은 기술력 중심의 회사와 파트너쉽을 통해 지갑보안 및 FATF 권고사항에 준수한 결제 시스템을 보유하고 있어 보안과 규제 두 부분을 충족시켰다. 향후 GlueOS는 트릴레마의 균형을 해치지 않으면서 지속적인 개발을 통해 B2C 서비스에 특화된 메인넷으로 거듭날 것이다.
2. GlueOS 익명성
우리는 블록체인과 관련된 기사에서 영지식 증명이란 단어를 종종 확인할 수 있다. 그러나 암호학을 공부하지 않은 일반인들은 영지식 증명이란 말을 쉽게 이해할 수 없다. 영지식 증명이란 무엇이고 이것이 왜 블록체인에서 중요한지 알아보자.
영지식 증명(Zero-Knowledge Proof)이란 쉽게 말하면 거래 상대방에게 알려야 할 정보가 참임을 증명할 때, 해당 정보의 참 또는 거짓여부를 제외한 다른 어떠한 정보도 노출되지 않는 상호 절차를 의미한다. 참임을 증명하는 쪽을 증명자(Prover)라하고 증명과정에서 정보를 교환하는 쪽을 검증자(Verifier)라 할 때 영지식 증명은 다음의 세가지 성질을 만족시켜야 한다.
- 완전성(completeness): 어떤 정보가 참이라면 증명자 (Prover)는 검증자 (Verifier)를 이 사실을 납득시킬 수 있어야 한다.
- 건전성(soundness): 어떤 정보가 거짓이면 어느 부정직한 증명자 (Prover)도 거짓말을 통해 검증자에게 조건이 참임을 절대 납득시킬 수 없어야 한다.
- 영지식성(zero-knowledge): 검증자는 어떤 정보가 참 또는 거짓 외에는 아무 정보를 알 수 없어야 한다.
그럼 블록체인에서 영지식 증명이 중요한 이유는 무엇일까? 블록체인의 모든 데이터는 공개된다. 누군가의 주소만 안다면 과거부터 현재까지의 거래, 잔고상황 등의 모든 활동을 알아낼 수 있다. 블록탐색기는 일반적으로 가시성 규칙을 존중해서 Private한 데이터를 표시하지 않는다. 그러나 블록탐색기에 Private한 데이터가 표시되지 않는다고 해서 속으면 안된다. 이때 영지식 증명을 활용하면 거래의 중요사항은 숨긴 채로 유효함을 증명할 수 있다.
GlueOS 플랫폼은 영지식 증명 (Zero-knowledge proof)을 도입해 익명성 강화를 필요로 하는 서비스에 GlueOS Zkp를 제공한다. 영지식 증명 기술은 지캐시(Zcash)에서 개발한 기술로, 암호학 관련 스타트업 경험이 풍부한 주코 윌콕스(Zooko Wilcox)와 암호학의 대가 데이비드 차움(David Chaum)이 공동 개발했으며 JP 모건과의 파트너십으로 큰 관심을 받았다. GlueOS 플랫폼은 거래 내역을 공개 블록체인에 기록하지만, 디앱(DAPP) 서비스 주체가 암호화를 원하는 주체에 대해 영지식 증명 프로토콜인 zk-SNARKs(zero-knowledge Succint Non-interactive Arguments of Knowledge) 기술을 바탕으로 익명성 기능을 제공한다.
3. 블록체인에서 합의 알고리즘이란?
블록체인의 합의 알고리즘은 블록체인 네트워크에서 합의를 달성하는 규칙이라 정의할 수 있다. 여기에서 말하는 합의는 노드가 블록을 블록체인에 추가할지 여부를 결정하는 프로세스이다. 좀더 자세히 말하면 합의는 블록체인에서 트랜잭션과 블록의 처리 순서를 결정하는 방식을 말한다. 네트워크의 모든 노드가 공통된 합의에 도달하려면 호환 가능한 규칙을 바탕으로 함께 작동해야 한다. 합의 규칙은 노드가 블록체인의 로컬 복사본에 블록을 수락할지 여부를 결정하는데 사용하므로 일부 블록체인은 이를 블록 유효성 검사 규칙이라고도 부른다.
퍼블릭 블록체인의 경우 가장 잘 알려진 합의 알고리즘으로 크게 작업증명(PoW) 방식과 지분증명(PoS) 방식 두 가지가 있다. 우리가 잘 아는 이더리움(Ethereum)은 처음 시작은 작업증명 방식으로 시작했지만 매우 많은 전기와 연산 자원을 필요로 하고 너무 느리다는 단점으로 인해, 가까운 장래에 합의 알고리즘으로 지분증명 방식의 하나인 캐스퍼라고 불리는 직접 민주주의와 유사한 증명 시스템을 도입할 계획이다.
GlueOS의 경우 같은 지분증명 방식의 하나인 대의민주주의와 유사한 위임지분증명(DPoS) 방식에 비잔티움 장애 허용 기능을 추가한 BFT-DPoS 검증방식을 사용하고 있다. 좀 더 자세히 설명하자면 DPoS 합의 알고리즘은 구성하는 모든 노드들의 투표 결과로 정해진 상위 노드에게 권한을 위임해 일종의 대표자를 선출한다. PoS의 경우 일정 지분을 소유한 모든 노드에게 블록생성 권한이 주어지기 때문에 오랜 합의 시간을 필요로 하지만, DPoS의 경우 투표로 선출된 비교적 적은 수의 상위 노드 간 합의로 인해 시간과 비용을 줄일 수 있다. 합의 시간과 비용의 감소는 곧 빠른 전송 처리를 의미한다. 기존 DPoS에 모든 BP가 모든 블록에 서명해 동일한 타임스탬프나 높이(Height)를 갖는 두 블록에 서명할 수 없게 하는 비잔티움장애허용(Byzantine Fault Tolerance, 이하 BFT) 기능을 추가했다. GlueOS Core의 경우 15명의 BP가 블록에 서명하면 해당 블록은 확정된 것으로 간주된다. 어떤 비잔티움 BP가 동일한 타임스탬프나 높이를 갖는 두 개의 블록에 서명할 경우, 반역에 대한 암호학적 증거가 남게 되고, 이 모델 하에선 1초 이내에 번복 불가능한 합의에 도달할 수 있게 된다.
4. GlueOS 프라이빗 키 분산 관리 시스템
많은 기업이나 개인이 블록체인 기술을 채택하는 가장 근본적인 이유는 안전한 네트워크를 통해 데이터와 프로세스를 보호할 수 있도록 높은 수준의 신뢰를 제공하기 때문일 것이다. 그럼에도 불구하고 블록체인 시스템 해킹에 대한 피해사례는 심심치 않게 보고되고 있다. 업비트 사례를 포함해 몇몇 사례에서 볼 수 있듯이 키 해킹을 당하거나 키를 분실, 도난 당했을 때 엄청난 피해를 입을 수 있다.
GlueOS KMS(Key Management System)는 합의 네트워크(Consensus Networks)를 통해 개인적이고 암호화된 데이터를 안전하게 저장하는 분산화 키 관리 시스템(KMS)이다. 이 시스템은 분리 암호화 기술을 근간으로 한 GlueOS Cryption Script를 이용해 분산화 된 네트워크가 수행하는 키 관리 기능을 제공한다. 일반적인 서비스 솔루션으로 제공되는 중앙화된 키 관리 시스템과 다르게 탈중앙화 키 관리 시스템은 신뢰 가는 서비스 제공자(CA)를 필요로 하지 않는다. GlueOS KMS를 사용하면 분산형 응용 프로그램에서 중요한 데이터를 안전한 키를 통해 공유할 수 있으므로 의료관리부터 ID관리, 분산 네트워크 콘텐츠 시장까지 다양한 응용 프로그램에 보안 인프라를 제공할 수 있다. SSL/TLS가 모든 보안 웹 응용 프로그램의 필수 요소인 것처럼 GlueOS KMS는 분산 응용 프로그램의 필수 요소가 될 것이다.
5. 블록체인 ORACLE
이더리움 블록체인 플랫폼의 본격적인 사용과 함께 스마트 컨트랙트의 사용이 확대되면서 스마트 컨트랙트의 사용은 이제 모든 퍼블릭 블록체인과 대표적인 프라이빗 블록체인인 하이퍼레져 패브릭까지 보편화 됐다. 물론 하이퍼레져 패브릭에선 체인코드라는 이름으로 쓰이지만 스마트 컨트랙트가 프라이빗 네트워크에서 쓰이는 것에 대해서는 의심의 여지가 없다. 스마트 컨트랙트(Smart Contract)란, 중개자 없이 거래 당사자끼리 디지털 명령어로 계약을 작성해서 특정 조건이 충족되면 계약 내용이 자동으로 이행되는 계약 자동화 시스템이다.
블록체인 기반이라 계약 내용이 모든 사람들에게 공개되기에 함부로 악의적인 행위를 하기 어렵고, 계약 조건만 충족되면 무조건 시행되기 때문에 계약 사항이 불이행될 위험도 없다. 그러나 이런 이면엔 불편한 진실이 있는 것도 사실이다. 누구에게나 공개되기에 조작(해킹)의 위험성도 있고, 블록체인 네트워크가 아닌 외부로부터의 데이터가 위·변조 될 수 있는 위험성도 있다.
블록체인에서 오라클이란 위에서 언급한 외부데이터를 블록체인 내부로 어떻게 위·변조 없이 내부로 들여올 수 있는가 하는 이슈다. 대부분의 스마트 컨트랙트(Smart Contract)가 제대로 작동하기 위해서는 현실 세계에서 일어난 사건(외부 데이터)을 스마트 컨트랙트에 반영해야 하기 때문이다. 오라클 시스템의 종류로는 어떤 현상에 대한 정도를 계량적인 수치로 보여주는 센서와 같은 하드웨어 오라클과 이미 인터넷에 올라와 있는 데이터를 서버 등으로부터 가져오는 소프트웨어 오라클, 그리고 블록체인상의 데이터를 외부세계로 전송하는 아웃바운드 오라클이 있다. 현재 대부분의 메인넷 시스템에선 아직까지 어느 오라클에 대해서 시원한 대답을 내놓지 못하고 있는데 블록체인 활성화를 위해서는 GlueOS 뿐만 아니라 모든 메인넷 시스템이 풀어야할 숙제이다.
GlueOS 역시 디앱(DApp) 회사들을 지원하기 위한 오라클 지원 플랫폼을 준비 중에 있다. 다중 오라클시스템, 보상에 의한 오라클 플랫폼, 또는 미들웨어 플랫폼 등 여러가지 방안을 고려하고 있으며, 실제로 서비스 될 디앱 회사들의 의견을 수렴해 적용할 예정이다.