다중 상태 네트워크로 사용되는 2 키 스마트 링크

작성자 : Dr. Yoram Kornatzky, eiTan LaVi

초기 구현 — 다단계 추천

2key Network는 스마트 계약을 통해 리퍼러에게 보상하기위한 블록 체인 기반 추천 네트워크입니다. 사람들이 서로에게 링크를 전달하여 네트워크를 통한 추천이 진행됩니다. 네트워크에 전원을 공급하는 2key Protocol은 블록 체인에 도달하지 않고 사용자들 사이에 전파되는 오프 체인 암호화 서명 링크를 생성합니다. 전환 또는 계약이 크게 완료되면 사용자는 서명 된 링크 중 일부 또는 전부를 메인 체인 2 키 스마트 계약에 제출하면 서명 된 링크에 표시된 리퍼러 체인에 보상합니다. 2key 스마트 계약은 캠페인 개시 자 ( "계약자")에 의해 추천 캠페인별로 배포되며 계약 유지에 대한 지분을 확보하기 위해 2KEY 토큰을 입금합니다.

다당?

주 채널

상태 채널 (결제 채널이라고도 함)은 채널의 양쪽이 송신자 및 수신자라고하며 오프로드 메커니즘으로, 발신자, 수신자가 암호 화폐를 예금하는 스마트 계약을 배포합니다. 사전 동의 된 오프 체인 이벤트가 발생하면 발신자가 암호화 된 서명 된 메시지를 수신자에게 전송합니다. 각 메시지는 이전 메시지보다 우선합니다. 각 메시지는 발신자가 수신자에게 일정량의 암호 화폐를 지불하도록합니다. 이 약정은 수신자가 스마트 계약에 거래를 제출함으로써 실제 지불로 전환 될 수 있습니다.

주 채널은 두 개 이상의 당사자를 포함하는 다자간 주 채널로 일반화 될 수 있으며, 여기서 다시 미래 약속의 집행을 보장하는 역할을하는 주 채널에 cryptocurrency가 초기에 입금됩니다.

기존의 주 채널 솔루션에는 채널에 참여하는 당사자에 대한 사전 지식이 필요합니다.

Raiden Network와 같은 구조는 사전에 알려지지 않은 중개자를 사용하여 2 자 상태 채널을 구성 할 수 있지만, 실제로 상태 채널에 관련된 두 당사자는 채널을 시작하기 전에 미리 알려야합니다.

다자 국가 채널 인 2 키 캠페인

본질적으로 2 키 서명 링크를 통해 캠페인 스마트 계약은 캠페인 개시 자에서 리퍼러까지 다자간 상태 채널을 생성합니다. 이 DAG (Directed Acyclic Graph) 구조는 추천이 캠페인을 진행함에 따라 동적으로 구축됩니다. 리퍼러는 추천 그래프에서 다운 스트림으로 생성 된 보상 보류 전환이 보장됩니다.

다른 주 채널 솔루션에 비해 2key Protocol을 사용하면 관련 당사자에 대한 초기 지식이 필요하지 않습니다. 실제로, 발신자는 최종 참조 자 또는 변환기가 누구인지에 대한 사전 지식이 없습니다. 이는 2 키 프로토콜이 web2.0과 유사한 방식으로 HTTP에 내장되어 있으며 이러한 다자간 상태 채널이 국가, 애플리케이션 및 플랫폼의 경계에 걸쳐 웹 전체에 배포 될 수 있다는 사실과 함께 나타납니다.

2key의 고유 한 참신함은 암호화 된 서명 링크 인 2key "Smart Links"를 통해 상태 채널을 구축하는 것입니다. 따라서 서명 된 링크가 약정으로 사용되므로 약정을 교환 할 필요가 없습니다. 또한이 약속에는 여러 당사자가 포함됩니다.

반상

Counterfactual은 오프 체인 애플리케이션 용 라이브러리, 직관적 인 일반화 된 상태 채널 프로토콜 및 이더 리움 스마트 계약 세트로 구성된 오프 체인 블록 체인 용 프로토콜입니다. 상반된 사실은 채널간에 당사자간에 암호화 서명 된 트랜잭션을 교환하여 상태 채널을 일반화합니다. 이러한 트랜잭션에는 계약 배포 및 스마트 계약 기능 호출이 포함될 수 있습니다.

허위 사실은 사실이지만 사실이 아닌 것을 의미합니다. 이것은 우리가 체인에서 일어날 수는 있지만 일어날 수없는 일에 대해 많은 시간을 소비하는 상태 채널을 논의 할 때 매우 유용한 개념입니다. 상태 채널에서, 우리는 다음과 같은 경우를 설명하기 위해 반 사실 X를 말합니다 : X는 체인에서 일어날 수 있지만 그렇지 않습니다. 모든 참가자는 일방적으로 X를 온 체인으로 만들 수 있습니다. 따라서 참가자는 X가 체인에서 일어난 것처럼 행동 할 수 있습니다. "

반증은 블록 체인에 설치된 일련의 스마트 계약을 기반으로하며 각 Dapp 개발자는 라이브러리를 사용하여 상태 채널을 구성하고 예금을 가진 멀티 시그 지갑을 설치하여 상태 채널을 시작하려고합니다.

분명히, 스마트 계약의 배포를 나타내는 메시지와 스마트 계약의 방법에 대한 호출을 통해 Counterfactual은 더 복잡한 상태의 상호 작용을 오프 체인 방식으로 수행한다는 의미에서 더 강력한 상태 채널을 가능하게합니다.

그러나 2key와 달리, Counterfactual은 주 채널을 설정하기 전에 주 채널의 당사자를 미리 알고 있어야하며, 주 채널을 시작하기 위해 중앙 엔티티가 암호 화폐 예금으로 멀티 시그 지갑을 구성하고 관리해야합니다. . 따라서 주 채널의 당사자는 사전에 알려야 할뿐만 아니라, 반 상식 솔루션은 주로 특정 앱의 사일로 중앙 집중식 컨텍스트 내에서 사용되며 분산되고 역동적이며 웹 전체 솔루션으로 적합하지 않습니다.

일반화 된 상태 채널 프로토콜로 2 키 서명 된 링크

2key Smart Link는 추천 경로에 대한 지불을 약속합니다. 따라서 2 키 서명 링크는 여러 당사자가 참여하는 오프 체인 상태 채널입니다. 사실에 반하여 서명 된 링크는 제출시 블록 체인에서 발생할 수있는 것을 나타냅니다. 그러나 모든 리퍼러 당사자에 대한 이러한 보상 보상은 전환시에만 발생하므로이 초기 구현은 동적이고 조건부로 최종화 된 주 채널 솔루션으로 생각할 수 있습니다.

지금까지 2key signed link의 초기 구성은 암호로 서명 된 일련의 조회로 설명했습니다. 이것이 우리가 2key 프로토콜 위에 구현 한 2key 네트워크의 초기 개념이었습니다.

우리는 이제 일반적인 다자간 상태 채널 솔루션을 가능하게하기 위해 2 키 프로토콜을 확장하기 위해 노력하고 있습니다 :

먼저, 작은 상태 조각을 포함하도록 일련의 참조 주소로 참조 경로를 포함하는 것에서 서명 된 링크를 일반화했습니다. 예를 들어, 투표 계약의 경우 주정부가 투표가되거나 토큰 획득 캠페인의 경우 소규모 주정부가 리퍼러의 요청에 따라 보상금을 삭감하도록 요청합니다.

링크에 모든 정보를 저장하는 제한을 실현하면서 확장 된 스마트 링크를 현재 IPFS를 사용하는 분산 스토리지에 저장하도록 옮겼습니다. 따라서 2key 스마트 링크에는 이제 상호 작용 시점의 전체 상태를 나타내는 단일 해시와 상호 작용 / 거래 / 상태 변경 요청 자체가 포함됩니다.

나중에 우리는 브라우저 자체가 채널의 다른 참가자에게 이러한 스마트 계약을 저장하고 제공하는 게시판 역할을 수행하여 진화하는 상태와 동적으로 동기화하는 구현을 릴리스합니다.

이제는 상태 채널을 사용하는 반상 메커니즘을 살펴보면 라이브러리를 사용하는 Dapp에 의존한다는 것이 분명합니다. 대조적으로, 2key는 서명 된 링크가 JavaScript를 사용하는 일반 브라우저로 구성되기를 원했습니다.

리퍼러의 브라우저가 서명 된 링크를 구성하는 데 참여하는 방법에는 두 가지가 있습니다. 중앙 집중식 접근 방식을 사용하려면 사용자가 2key 웹 사이트로 이동해야합니다.이 웹 사이트에서는 추천자가 추천 링크를받습니다. 우리는 이제 분산 형 접근 방식으로 전환하고 있습니다. 여기서 사용자 키를 생성하는 데 사용되는 코드와 2key 스마트 링크의 유효성을 검사하고 구성하는 데 필요한 암호화가 분산 스토리지에도 있습니다.

이것은 2key 스마트 링크가 궁극적으로 브라우저가 IPFS의 특정 해시 및 상태 해시와 함께 큰 자바 스크립트 코드 (UI 및 암호화)를로드하도록 지시하는 작은 자바 스크립트 일뿐임을 의미합니다.

따라서 2 키 링크는 다음과 같은 기호 구조를 갖습니다.

js : // {node-code-hash} & {state-hash}

여기서 node-code-hash는 링크를 구성하기위한 JavaScript 코드에 대한 해시이고 state-hash는 결합 된 상태 및 참조 주소에 대한 해시이며 암호로 서명됩니다.

2key 링크를 사용하는 Dapp 자체는 분산 스토리지에서 제공됩니다. 이에 따라 2key 다중 당사자 상태 채널은 표준 브라우저를 통해 완전히 분산 된 방식으로 작동합니다.

결론

우리는 2key가 다자 상태 채널과 같은 여러 가지 상반된 속성을 가지고 있다고 생각합니다. 또한 2key는 상태 채널 참가자에 대한 사전 지식이 필요하지 않기 때문에 분산화 측면에서 우수하며 HTTP를 통해 표준 브라우저를 통해 전 세계 웹에 완전히 개방되어 작동합니다.