heart
unicorn
unicorn

Nervos: 크립토 이코노미의 신뢰 엔진

10 Questions You Should Ask In A Web Dev Interview KIDORI 2019년 6월 19일

  1. 블록체인은 왜 글로벌 컴퓨터가 되어야 합니까?​

만약 블록체인의 개념을 제쳐두고 “글로벌 컴퓨터” 라는 단어로 이해한다면, 전 세계 사용자가 공동으로 사용할 수 있는 컴퓨터가 되어야 합니다. “글로벌 컴퓨터”의 핵심은 자체 애플리케이션을 구축하고 배포할 수 있어야 합니다. 또한, 각각의 데이터도 저장할 수 있어야 합니다. 그뿐만 아니라 응용 애플리케이션 간에도 완벽한 협업이 가능하며 우리가 처리해야 할 작업을 함께 수행할 수 있습니다. 나는 이 아이디어가 매우 마음에 듭니다.

블록체인이 등장하기 전에 저희는 이미 “클라우드 컴퓨팅”이라고 부르는 글로벌 컴퓨터를 사용하고 있었습니다. 클라우드 컴퓨팅이 제공하는 서비스는 전 세계 사용자가 엑세스 할 수 있으며 이러한 서비스를 통해 자체 애플리케이션을 구축 및 배포하고 데이터를 저장할 수 있습니다. 애플리케이션은 HTTP 및 API와 같은 프로토콜을 사용하여 공동 작업하고 완성할 수 있습니다. 클라우드 컴퓨팅의 기술은 점점 진화되고 있습니다. IaaS부터 PaaS, FaaS에 이르기까지 추상화 계층의 수준이 더 높아졌으며 기능 및 사용성도 기존 기술보다 더 편리해졌습니다.

글로벌 컴퓨터로 사용하려면 블록체인이 클라우드 컴퓨팅 플랫폼과 비교했을 때 단점이 존재함을 인정해야 합니다. 클라우드 컴퓨팅은 데이터 처리량이 빠르고 사용자 간에 완벽한 개인 정보 보호를 제공할 수 있습니다. 그러나 블록체인이 이러한 단점 때문에 설계의 누락 때문이 아닙니다. 사토시 나카모토는 이미 Ta에 대한 목표를 위해서 단점을 포기한 가치가 있도록 설계했습니다.

글로벌 컴퓨터는 블록체인이 목표가 되어서는 안 되며 설계자를 잘못된 목표로 인도해서는 안 됩니다. 설계자는 자기만의 장단점을 가지고 있어야 합니다.

2. Ask the Right Question

블록체인을 깊게 관찰하자면 우리의 질문은 “어떻게 글로벌 컴퓨터를 구축할 것인가”가 아니며 “블록체인이 직면한 성능과 프라이빗의 두 가지 주요 문제를 해결하는 방법”도 아닙니다. 블록체인 기술은 단지 도구일 뿐이고 사람들이 원하는 것은 블록체인이 아니라 크립토 이코노미입니다. Nervos의 설계자로서 우리는 다음 질문을 대답하려고 합니다.

미래의 크립토 이코노미를 위한 인프라 설계를 어떻게 하나요?

이 질문에 대한 대답은 블록체인이 될 수 있지만, 크립토 이코노미의 핵심 자체 실행 프로토콜입니다. (Self Enforced Protocol) 그 동시에 트랜잭션 성능과 같은 문제도 해결해야 합니다. 예를 들어 트랜잭션 처리 및 트랜잭션 프라이버시 기능입니다. 우리는 확장성과 프라이버시의 문제들을 해결해야 합니다. 그래서 이 문제들의 핵심이 블록체인이 아닌 크립토 이코노미로부터 시작됩니다.

3.자체 실행 프로토콜과 크립토 이코노미

크립토 이코노미는 수년간 블록체인 발전을 통해 형성된 새로운 경제모델입니다. 이 경제 모델은 다른 가상 경제모델과 달리 유일무이한 모델입니다. 왜냐하면 이 모델은 지금까지 만든 수많은 경제모델 중 가장 활발한 시장을 만들었기 때문입니다. 규모가 네트워크와 비슷하며 국가와 지역을 넘어서 전 세계 수천만 명이 시장에 참가했습니다. 그리고 개인이 암호자산 (Cryptoassets)을 생성 및 거래에 대한 비용은 대폭으로 낮추었습니다. 이는 전례 없는 관심을 불러일으킨 블로그 및 페이스북의 파급력과 비슷합니다. 또한 유동성을 가져왔으며 사용자들은 7*24시간 동안 사용할 수 있게 됐습니다.

국경을 초월한 자발적인 자유시장은 전통적인 제도권의 제한을 받기 어렵습니다. 언제 어디서나 보편적인 수학, 합리성, 게임이론 등을 성립했습니다. 크립토 이코노미는 암호학 및 게임이론을 기반으로 만들었으며 기존 시장에서 각종 프로토콜 (e.g.계약)을 실행하여 자기가 운영할 수 있는 인센티브 시스템을 설계했습니다. 이는 시장 참여자의 자산 소유권 보장 및 거래를 안정적인 운영을 만들었습니다. 크립토 이코노미의 프로토콜은 참여자가 아닌 제3 자가 보증할 수 있고 탈중앙화 메커니즘으로 구현됐으며 이를 자체 실행 프로토콜 (Self Enforced Protocol)이라고 부릅니다

자체 실행 프로토콜은 크립토 이코노미의 기초이자 이전에는 볼 수 없었던 새로운 모델입니다. “고전적인” 인터넷이 의존하는 네트워크 프로토콜은 낙관적인 프로토콜이며 설계자는 참여자가 프로토콜의 규정을 준수하는 가정 아래에 설계합니다. 현실과 이상은 항상 반대로 실행됩니다. 즉 네트워크 프로토콜은 의도치 않게 중지되거나 파괴됩니다. 참여자는 어쩔 수 없이 다른 프로토콜을 만들게 됩니다. 이런 유형인 프로토콜에 의해 창출된 인터넷은 불확실성이 가득한 네트워크이며 디지털 이코노미에 대한 원초적인 지원을 제공할 수 없는 네트워크가 됩니다.

​4. 신뢰의 창조와 전달

<The Economist>는 2015년 블록체인을 “트러스트 머신(The Trust Machine)”이라고 칭했습니다. 작성자는 Candy Machine인 사탕을 만드는 기계처럼 이 이름을 <신뢰를 창조하는 머신>으로 칭하고 싶습니다. 직접 손으로 창조한 소프트웨어 개발자가 되고 싶습니다. 개발자로서 “신뢰 창조”는 제가 생각할 수 있는 가장 멋진 목표 중 하나입니다. (따라서 우리의 슬로건은 We Build Trust입니다) 흥미롭게도 3년이 지난 현재 블록체인은 터무니없는 사탕을 만들 수 있는 Candy Machine이 되었습니다. 다양한 기능을 블록체인 위에 구축이 되었고 복잡성은 더 증가했습니다. 어떻게 보면 “고전적인” 기술 솔루션이 더 좋은 선택이 될 수 있을 것 같습니다.

아키텍처 관점에서 데이터를 단일 레이어에 처리하는 것 보다 시스템의 전체 성능 레이어를 분해하여 다른 성능레이어에 처리하는 게 더 좋은 설계 모델입니다. 멀티 레이어 처리 방식은 복잡한 시스템 설계의 핵심이라고 말할 수 있습니다. UNIX 설계 디자인을 통해 전통적인 데스크톱 소프트웨어 및 인터넷 서비스에서 Model / View / Controller 모드를 적용합니다. 플러그인 아키텍처의 편집기는 VIM이 대표적인 좋은 예입니다. 인터넷은 데이터 전송, 이메일 전송 등 다양한 네트워크를 통해 많은 기능이 포함되고 있습니다. 이 인터넷의 신뢰 시스템 구성에서는 PKI (Public Key Infrastructure) 및 TLS (Transport Layer Security)와 같은 신분증명 및 암호화 관련된 프로토콜도 포함됩니다.

PKI 시스템은 디지털 신분 증명 및 물리적 신분 증명과 관련된 문제를 해결하기 위해 디지털 인증서를 생성, 관리, 배포, 사용, 저장 및 해지를 할 수 있습니다. 디지털 루트 인증기관(CA)은 사용자 및 기업의 신원을 퍼블릭 키와 연결하는 디지털 인증서를 관리하고 발행하는 일을 담당합니다. 디지털 인증 발행 기관은 다른 디지털 인증서 중개자에게 인증서를 발급하여 웹 사이트와 웹 사이트로부터, 사용자와 웹 사이트, 사용자와 사용자 간에 안전한 프라이빗 정보 교환 채널을 구축할 수 있습니다. 예를 들어 사용자가 전자상거래 또는 은행 웹 사이트를 방문하면 디지털 인증서와 HTTPS (HTTP Over TLS) 프로토콜을 통해 보안 연결이 설정됩니다.

PKI는 신원 및 디지털 인증성 관리에만 집중되어 있으며 암호화된 데이터 전송은 HTTPS를 통해 완성됩니다. PKI 자체 시스템은 레이어별로 설계되어 있으며 레이어1은 루트 인증 발행 기관이며 전체 레이어중 신뢰 구축의 출발점입니다. 루트 인증 기관의 디지털 인증서는 기본적으로 브라우저 및 기타 소프트웨어에 내장되어 있으며 모든 인터넷 사용자가 신뢰할 수 있습니다. 이 신뢰 인증서는 체인을 통해 각 레이어에 전달되고 마지막으로 시스템의 모든 인터넷 서비스에 유입됩니다. 루트 인증 기관은 인증서 관리만 수행하며 전자 상거래, 게임 또는 기타 특정 시나리오의 비즈니스는 신경 쓰지 않고 있으며, 이러한 배경 중 데이터 상호 작용은 루트 인증 기관을 거칠 필요가 없습니다. 루트 인증 기관은 인터넷에 대한 신뢰를 창출하며 전체 인터넷 신뢰 시스템의 “엔진” 입니다. “엔진”이라는 단어가 인용되는 이유가 루트 인증 기관이 여전히 사람이 관리하고 엔터프라이즈의 머신이 관리하는 게 아닙니다.

인터넷은 성능이나 개인 정보 보호의 번거로움 없이 잘 작동하는 매우 성공적인 신뢰 네트워크를 구축했습니다. 그 이유는 인터넷이 계층화되고 분리된 아키텍처를 사용하기 때문입니다. 이 고전적인 신뢰 네트워크의 유일한 문제점은 루트 인증 기관의 실력 및 인품 (루트 인증 기관의 보안 사건이 자주 일어납니다) 문제로 인해 신뢰도가 충분히 높지 않기 때문에 자체 실행 프로토콜 결함이 생깁니다. 또한 스스로 보장되는 프로토콜은 사용자가 정의하고 완벽히 구현할 수 없습니다. 우리는 이러한 문제를 해결할 필요가 있습니다. 따라서 우리의 이상적인 암호화 경제 네트워크 인프라는 단지 프로토콜이 아닌 일련의 프로토콜로 정의된 계층화되고 분리된 아키텍처 이여 야하고, 자체 실행 프로토콜에 대한 기본 지원을 제공하며 어떤 다른 체인의 프로토콜에도 의존하지 않습니다.

이제부터 우리가 근본적인 문제를 해결할 수 있는 프로토콜이 등장합니다!

5. CKB:Nervos의 신뢰 엔진

블록체인은 신뢰를 창출하고 제 3자에 의존하지 않는 알고리즘 및 경제적 인센티브에 의해 유지되는 네트워크입니다. 블록체인은 우리가 생각하는 제3 자에 의존하지 않는 신뢰 체인의 뿌리입니다.

우리는 Nervos 네트워크의 신뢰 엔진인 CKB (Common Knowledge Base)라고 합니다. 이 이름은 블록체인에 대한 우리의 이해에서 비롯된 것이며 CKB 백서의 부록에 자세히 설명되어 있어서 여기서 자세한 설명을 안 할 것입니다. Nervos 네트워크의 온체인 (우리는 레이어 1이라고 칭합니다)에 위치한 CKB는 Nervos 네트워크 신뢰 체인의 뿌리이자 전체 Nervos 네트워크가 설계한 유일무이한 퍼블릭 체인 프로토콜입니다. CKB 뿐만 아니라, Nervo는 레이어1과 레이어2 사이의 신뢰 전송 프로토콜을 정의했습니다. CKB는 신뢰 전송을 상단을 구축하여 레이어 2 DApp을 안전하게 구현했습니다. 이는 전체 Nervos 크립토 이코노미의 작동을 보장합니다. 이러한 프로토콜은 PKI 시스템 계층 신뢰 네트워크와 유사합니다. 대부분 컴퓨팅, 스토리지 및 네트워크 전송은 레이어 2에서 발생합니다. 레이어 2의 운영 노드가 악의적인 경우에만 레이어 1과 상호작용을 하고 CKB에게 암호확 증거를 제출해야 됩니다. CKB는 증거 및 사전 결정된 규칙에 따라 중재하므로 레이어 2에 대한 프로토콜 실행을 보장합니다. 레이어1의 목표는 보안이며 레이어 2의 목표는 데이터 처리에 대한 연산입니다.

CKB는 자체적으로 PoW 합의 알고리즘을 사용하여 CKB는 PoW를 통해 현실에서 사용한 에너지 소비량을 고정할 수 있습니다. PoW는 현재 알려진 가장 안전한 퍼블릭 네트워크 합의 알고리즘이기 때문에 선택되었습니다. 따라서 Nervos 네트워크는 나무와 같은 신뢰 전달 네트워크를 형성합니다.

이러한 계층화된 아키텍처는 레이어 1에 대해 완전히 다른 요구 사항을 가지고 있으며 요구 사항을 충족할 수 있는 퍼블릭 체인 설계를 해야 합니다. 하지만 우리는 이러한 모델을 한 번도 보지 못했습니다. 우리는 이러한 목표와 현 상태 요구는 레이어 1을 재설계 해야 합니다. 따라서 CKB는 다른 퍼블릭 체인과는 완전히 다른 설계 목표를 가지고 있습니다. 구체적으로 우리는 CKB를 극대화하는 대신 CKB의 책임을 최소화하고 안전 합의에 초점을 맞춥니다.각 레이어에 대한 신뢰를 창조할 수 있고 다양한 기존 비즈니스 시나리오를 지원할 수 있습니다. PKI 시스템의 루트 인증 발급 회사는 특정 애플리케션을 신경 쓸 필요가 없듯이 아름다운 설계는 중점이 아닌 단순함과 균형에서 비롯됩니다.

따라서 CKB는 두 가지 기능만 유지하면 됩니다. 하나는 간단하고 안전한 합의 알고리즘이고 다른 하나는 레이어 1과 레이어 2 사이의 신뢰 전송 프로토콜을 지원하는 것입니다.

우리의 연구 및 개발팀은 PoW 합의 알고리즘의 잠재력을 극대화하고 CKB의 TPS 성능을 높일 수 있고 트랜잭션 컨펌 시간을 줄이면서 보안을 보장하기 위해 새로운 PoW 합의 알고리즘을 구현합니다. Nervos 네트워크의 대부분 트랜잭션이 레이어 2에서 발생하기 때문에 새로운 PoW 합의 알고리즘 및 병렬 컴퓨팅이 친화적인 Cell 모델 (백서 참조)이 초기 Nervos 네트워크 요구를 실현할 수 있습니다,

레이어 1과 레이어 2 사이의 신뢰 전송을 지원하기 위해 CKB는 상태 중심 설계를 선택하고 계정 모델 및 UTXO 모델이 아닌 Cell 모델을 제안했습니다. Cell 모델은 UTXO 모델의 자연스러운 확장이며 숫자만 신경 쓰는 UTXO를 확장하여 모든 데이터 유형을 포함할 수 있는 Cell로 확장됩니다. Cell은 데이터 상태를 저장하는 방법이 있어야 하며 이것은 레이어 1과 레이어2 간에 신뢰 전송 프로토콜의 기초입니다 (e.g. KV 또는 SQL DB가 필요 없습니다). 상태 확인을 위해 가상 머신이 필요합니다. 이 가상 머신은 많은 시나리오를 지원할 필요가 없으며 적절하게 지원하는 게 제일 좋습니다. 상태는 레이어 2에서 생성되고 레이어 1에서 기록되고 검증됩니다.

자체 보안을 고려할 뿐만 아니라 신뢰 전달 프로토콜과 레이어 2를 지원하는 방법을 고려해야 하므로 CKB의 경제적 메커니즘은 큰 문제에 직면해 있습니다. CKB 토큰은 레이어 2에 대한 담보자산입니다. 이는 Nervos 네트워크에 대한 기본값 저장 장치(SOV)입니다. 우리는 이 분야에 대한 더 많은 연구가 필요합니다. 다행히도 Nervos를 돕고 있는 경제학자가 있습니다.

Nervos의 전반적인 설계 접근법은 CKB의 초기 설계는 레이어 2의 요구를 우선시해야 합니다. 여러 방면에서 이를 통해 Nervos 네트워크에서 레이어 2 솔루션을 더욱더 쉽게 구현할 수 있습니다. 이는 Nervos의 독특한 방법론입니다.

6.A Better World

크립토 이코노미 네트워크는 기존 인터넷의 성숙도를 자연스럽게 확장할 수 있습니다. 인터넷은 1.0 및 2.0 시대가 지나고 GAFA (Google/Apple/Facebook/Amazon)와 BATX (Baidu/Alibaba/Tencent/Xiaomi)를 만들었고 우리의 삶을 편하게 만들었습니다. 현재 인터넷 플랫폼은 사용자 및 제3 자 파트너를 유입해야 하는 성장기는 이미 지나갔습니다. 산업의 성장 한계가 곧 끝이 보이며 플랫폼과 플랫폼 사용자 간의 관계가 0이 아닌 게임에서 제로섬 게임으로 변경되고 있습니다. 사용자와 이익은 제3 자 와 경쟁해야 하며, 모든 사람이 알고 있다고 해도 제3 자의 열정을 억제하면 혁신을 저해할 수 있습니다. 이것이 바로 인터넷 모델의 딜레마입니다.

이러한 창조가 어려운 상황에서 블록체인 및 크립토 이코노미의 출현이 필연적이며 인터넷의 차세대 변신이 시작됩니다. 크립토 이코노미에서 필요한 것을 신중하게 고려하고 겸손한 자세로 고전 인터넷 모델에서 배우며 우리가 원하는 아름다운 세상을 만들어 보겠습니다.

커뮤니티

Nervos 커뮤니티는 개발 및 기술를 같이 토론하여 현존에 있는 블록체인의 문제점을 같이 공유하여 개선합니다.

Nervos 프로젝트는 Nervos Network는 Nervos Foundation이 추진하는 암호경제 인프라이며 레이어 아키텍처(layer architecture)를 통해 블록체인 트릴레마(blockchain trilemma) 문제를 해결하는 프로젝트입니다.

현재 Nervos네트워크는 레이어1의 퍼블릭체인인 CKB(Common Knowledge Base)와 CKB 기반 상태 채널 또는 플라즈마 등 레이어2 애플리케이션 솔루션으로 블록체인 트릴레마를 해결하는 프로젝트이며 레이어1과 레이어2 간의 연결 프로토콜로 구성됩니다.

Nervos 커뮤니티
널보스#블록체인#솔리디티#Rust#Landingblock#랜딩블록#Nervos#토큰#블록체인 개발#블록체인 공부open.kakao.com

Nervos 커뮤니티
Nervos에 관한 모든것t.me


# 로그인 후 댓글을 달아주세요
10 Questions You Should Ask In A Web Dev Interview

Landingblock