[블록미디어] 블록체인 지불.결제 플랫폼 ‘오픈플랫폼’이 깃허브에 테크니컬 로드맵을 첫 공개했다.
오픈 플랫폼은 개발자가 모든 체인을 연결하고 결제 및 지불 데이터를 처리 할 수 있게 해주는 결제 인프라다.. OPEN Platform을 사용하면 응용 프로그램에서 다양한 암호화폐와의 통합을 쉽게 수행 할 수 있다.. 대부분의 앱에는 결제를 전달할 수 있는 온 체인 및 오프 체인 구성 요소가 필요하다. 하지만 OPEN API는 다른 시스템 및 아키텍처로 작업하는 데 따르는 어려움을 줄여준다. 이는 개발자가 이미 설정된 코드베이스를 응용 프로그램 계층의 도움으로 연결할 수 있도록 기술을 지원하기 때문이다.
OPEN이 이 문제를 해결하기 위해 선택한 방법은 Scaffolds를 사용하는 것이다. 스캐 폴드 (Scaffolds)는 스마트 계약을 지원하는 블록 체인 (blockchain)과 함께 작동 할 수 있는 기술로 OPEN에서 개발했다. Scaffolds의 강점은 사용자 지불 상호 작용에 자동으로 응답함으로써 원활한 워크 플로우를 보장 할 뿐만 아니라 애플리케이션을 조정하는 프로세스를 단순화하는 능력이다
스캐폴드는 개발자가 요구하는 사양으로 만들 수 있는 템플릿 스마트 계약의 역할을 한다. 계약은 간단한 API 호출을 통해 수행된다. 개발자는 약 11-15 줄의 코드를 실행 한 다음 임의의 암호 해독 사용을 허용 할 수 있다. 즉, 개발자는 Scaffolds를 이용해 스스로 원하는 지불 방식을 플러그 앤 플레이 할 수 있다.오픈 플랫폼은 이 같은 내용의 테크니컬 로드맵과 향후 업데이트 계획을 주1회 이상 공개한다고 밝혔다. 다음은 오픈플랫폼이 6월 초 공개한 스캐폴드와 생성기에 대한 글이다.
OPEN Chain테크니컬 로드맵과 업데이트
2018년 3월에 OPEN이 처음으로 Scaffold 상성기 API 론칭을 발표하며, OPEN 개발자 커뮤니티의 시작을 알렸습니다. 우리는 주류에 편입되기 위하여 블록체인 기술의 현재 한계를 혁신하고 최상의 제품을 만들어 내기 위해 내부적으로 조사, 테스트, 실험을 해왔습니다. OPEN은 지난 5일 Github에 개발자들을 위한 다음 로드맵과 업데이트를 공개했습니다. 공개한 이유는 다음과 같습니다.
OPEN팀은 개발자들과 최종 사용자들을 위해 최고의 인프라 툴을 구축하고 싶습니다. 그리고 우리가 어디로 가고 있는지에 대해 개발자들에게 투명성과 계속된 업데이트를 제공하는 것이 매우 중요하다고 생각합니다.
이번에 공개하는 문서에서는 OPEN의 구조학적 고찰과 더불어 앞으로의 로드맵에 관해 간략히 다루도록 하겠습니다. OPEN과 함께하며 상호정보교환이 가능한 차세대 데이터 샤딩 프로토콜 개발 부문 향상에 도움을 주시고 피드백을 해 주실 여러분을 ‘오픈 커뮤니티’에 초대합니다.
OPEN 비전
OPEN은 모든 애플리케이션이 현물 화폐처럼 쉽게 크립토를 받아들이는 세상을 상상합니다. 미래의 모든 애플리케이션들이 블록체인 기술상에 구축될 것은 아니라는 것은 알고 있습니다. 오히려 블록체인은 핵심 역할을 하고 지불, 자산 발행, 투명성 그리고 감사가능성과 같은 그 기술에 특별하게 맞춰진 것들을 수행할 것입니다. 맡은 기능을 최상으로 수행하기 위해 데이터베이스를 중앙화 시키는 것도 포함됩니다. OPEN은 탈중앙화된 네트워크에서 사용자와 개발자 모두 자신의 이익을 추구하는데 활용,초기 비즈니스를 안정적으로 성장할 수 있도록 도움을 줍니다.
이것이 OPEN이 하는 일의 핵심입니다. 우리는 서로 다른 데이터를 어떤 것은 탈중앙화 네트워크에 넣고 어떤 것은 중앙화 네트워크에 넣어 확장 가능한 방법으로 서로 의사 소통하게 합니다.
예를 들어 이 데이터의 상호정보교환성을 테크놀로지 기업과 애플리케이션 개발자들이 지난 15년간 진화해온 방식을 모델링해 개발자들이 a) 채택하기 b)개발하기 c) 거래하기 등 편리하게 만들어서 탈중앙화된 모든 구성요소 (블록체인)상에서 활성화시킵니다.
OPEN은 두 가지의 중요한 기술에 집중합니다
»OPEN Platform은 개발자들이 그들의 애플리케이션 Scaffolds를 OPEN Chain에 쉽게 배치할 수 있도록 하고, Backend에 블록체인을 쉽게 통합시키고 기업 수준의 개발자 인프라 구성요소의 호스트를 통합시킬 수 있게 합니다.
»블록체인 거래가 생성되고 확장성과 신뢰성을 보장하기 위해 상호정보교환이 가능한 블록체인 전반에 걸쳐 블록체인 거래가 샤딩되는 OPEN Chain.
플랫폼과 퍼블릭 체인 구성 요소 Scaffolds와 Scaffold 생성기
Scaffold 생성기는Ethereum network를 위해 2018년 3월에 공개 발표됐습니다. 그때부터, Kotlin과 Scaffold 생성기에 코드를 리팩터했고, api.openfuture.io에서 생중계 됐습니다., 6월 4일 월요일에 다시 생중계될 것입니다.
게다가, 통합 파트너들이 사용할 수도 있고 OPEN이 미래에 무엇을 할 수 있을 것인지 짧게 살펴볼 수 있는 Scaffold 템플릿을 구축했습니다. 이번 주에 이 2가지 템플릿을 공개할 것입니다, 서비스 형 소프트웨어비즈니스 모델과 다른 B2B 회사들을 위해 솔루션을 제공할 업체 간 기록을 작성하는 Scaffold, 또한 게임 개발자들에 의해 투입될 수 있고 그들의 애플리케이션과 통합되는 게임 속 구매 Scaffold 템플릿을 구축하고 있습니다.
이것들이 블록체인을 사용함으로써 해결핳 수 있는, 보통 개발자들이 힘들어하는 점에 대해 고심하기 위해 출시된 많은 Scaffold 중 첫 번째입니다. Scaffold 생성기와 파트너 십 블록체인 통합도 발표할 것입니다.
퍼블릭 체인 디자인 개요
블록체인 생태계 안에서, 다양한 유형의 블록체인이 다른 기술 스택과 프로그래밍 언어를 이용하여 시행되어 왔습니다. 물론 각각을 위해 선택된 스택 고려사항은 특정 프로젝트가 성취하려고 하는 필요조건과 목표에 근거합니다. 특별한 경우에 OPEN Chain을 위해, 기술 스택이 아래의 특성을 넣어 디자인 되었습니다.
»신뢰성 있는
»최신의
»대중적인
»안전한
»고성능
»오픈 소스
»영리 단체의 지원을 받는
»쉽게 확장될 수 있는 잘 짜인 코드 베이스
»쉽게 이용할 수 있는 툴과 라이브러리가 많은 활동적인 커뮤니티
게다가, OPEN을 위해 네트워크 참여자가 Scaffolds를 포함한 스마트 컨트랙트를 실행할 수 있는 버추얼 머신이 필요할 것입니다. 고려할 만한 가능한 솔루션은 JVM 기술 스택을 활용하는 Corda입니다. Corda는 실행 가능한 코드와 격이 다른 스마트 컨트랙트를 운용하는 버추얼 머신을 갖게 해줄 것입니다. 우리는 현존하는 블록체인 실행과 우리의 요구 조건을 충족시키기 위한 각각의 기술적인 스택의 장단점에 대해서 내부적으로 연구를 진행했습니다.
< 비교 요약표>
Kotlin
우리는 Kotlin이 Java의 v2라고 믿습니다. Kotlin은 Java의 많은 단점을 해결했습니다.: Kotlin은 상용구 코드가 없고, 언어 수준은 Null-Safe에서 실행되며 일반적인 문제는 해결되었습니다.
게다가, Kotlin으로부터 Java code를 불러내는 것과 그 반대도 가능하도록 Java 이전 기종과 완벽히 호환됩니다. 새로운 세대의 언어로 Java의 모든 유산과 파워를 사용할 수 있도록 합니다.
자바 버추얼 머신으로 뛰어난 스마트 컨트랙트 VM을 갖게 되고 개발자들은 Kotlin, Java, Groovy나 JavaScript같은 프로그래밍 언어에 기반을 둔 자바 버추얼 머신으로 쓰여진 스마트 컨트랙트를 배치할 수 있게 될 것입니다.
TCP vs. UDP 커뮤니케이션 레이어
UDP 커뮤니케이션 레이어를 시행하는 것은 좀 더 복잡합니다. 왜냐하면 UDP는 메시지 전달을 보장하지 않기 때문입니다. 따라서 그것은 애플리케이션 레벨에서 독립적으로 시행되어야 할 것입니다.
TCP와 달리, the size of messages in UDP에서의 메시지 사이즈는 엄격히 제한되고 파쇄, 패킷 분실을 막고 어느 호스트든 패킷을 받을 수 있도록 하기 위해 UDP에서의 데이터 사이즈는 508 바이트를 넘으면 안됩니다. 길이가 더 긴 메시지는 508 바이트로 잘려 번호가 매겨져 전송되어야 한다는 뜻입니다. 패키지 전송이 보장되지 않는다는 점을 고려하면 수신자 호스트로부터 송신자 호스트까지, 분실된 패킷이 재전송 되는 동안 목적지에 도착한 패키지에 대한 정보를 전송해야 합니다.
UDP communication layer를 실행할 수 있으나 상당히 긴 시간이 걸리고 PoW의 컨센서스상에 구축된 네트워크와 달리 DPoS 컨센서스의 맥락에서는 엄격한 필요조건이 없습니다. 이를 감안하면, TCP 커뮤니케이션 레이어 상에 Kotlin 사용으로 인한 스크래치로 OPEN Chain을 구축할 것을 제안합니다.
투표
컨센서스의 주요 부분 중 하나는 연산자와 투표의 선택입니다.
노드가 연산자가 되려면 노드가 활동 중인 연산자에 요청을 보냅니다. 그러한 노드를 후보자라고 합니다. 연산자는 후보자들의 필요조건을 체크합니다: 유효성, 하드웨어와 네트워크 특성, 스택 양, 네트워크 상에서 머무는 시간 등. 새 블록을 확인하는 규칙과 유사하게, 후보자가 연산자 체크의 2/3를 통과하면 후보자리스트에 들어가게 됩니다.
각각의 노드는 활성화된 커넥션을 8개까지 갖게 됩니다. 장소는:
»6개의 노드가 활성화 돼있고 무작위로 선택된 연산자와 연결됨
»2개의 노드가 리스트에 있는 후보자들과 연결됨
자동적으로 각각의 노드는 새 이벤트에 대한 정보를 더 빠르게 자주 보내는 노드에게 투표하게 됩니다. 따라서 후보자들은 블록을 형성하고 바운티를 받는 선정된 대표자가 되도록 연산자 들과 경쟁할 기회를 얻게 됩니다. 대기중인 후보자들은 보이스의 파생품들과 스택의 가치 총합 부분에서 하향 등급에 따라 분류됩니다. 등급은 모든 투표 된 노드와 후보자 자신의 총합입니다.
(후보자 스택 총계candidateStackAmount) + ∑(투표자 스택 총계voterStackAmount).
블록 형성 과정
DPoS 컨센서스에 따르면 매 라운드 전에 블록 형성을 위한 고정된 시간 즉 10초 동안 각각의 연산자들이 배치된 곳에 연산자들이 연이어 배열됩니다. 이 시간 동안 연산자들은 블록을 형성하고 2/3 이상의 대표자들로부터 컨펌을 받기 위해 다른 연산자에게 블록을 배포해야 합니다.
연산자의 다수 (2/3)로부터 컨펌을 받는 경우, 블록은 블록체인에 추가됩니다.
만약 노드가 할당된 시간 안에 블록 형성에 실패하면 연산자 리스트로부터 제외됩니다. 그리고 다음 노드는 그 다음 10초 안에 2 블록을 형성해야 합니다.: 하나는 자신을 위해, 하나는 이전 노드를 위해서 입니다.
라운드는 각각의 노드가 하나의 블록을 형성할 때까지 지속됩니다. 즉, 한 라운드는 21 블록입니다.(컨센서스 안의 연산자의숫자), 만약 1 블록당 10초라고 한다면 라운드의 지속 기간은 3.5분입니다. 라운드 마지막에, 각각의 노드는 생성된 블록 수와 그들에게 포함된 거래량에 따라 비례 보상을 받습니다. 매 라운드 전에, 모든 활성화된 연산자와 후보자들은 리스트에 수집되어 하향 등급에 따라 분류됩니다. 연산자가 다음 라운드를 갈 때 1위부터 21위까지 선정됩니다.
로드맵
우리 팀은 몇 주 안에 더욱 상세한 로드맵을 발표할 것입니다, 하지만 우리 개발자 커뮤니티에 몇몇 초기 통찰을 제공하고 싶었습니다. 최소 주 단위로 개발 진척 상황에 관한 업데이트 포스트를 게재해드릴 것입니다.
OPEN의 Scaffolds와 Scaffolds 생성기는 거의 완성되어 6월 중순까지는 완벽하게 가동될 것입니다. 남은 API 문서에 대한 작업을 시작하였고 7월 초까지 완성될 공개버전 API에 대한 업데이트는 앞으로 5주간 제공해드릴 것입니다. API와 함께, JavaScript SDK, Java Virtual Machine SDK, Python SDK, 그리고 GO SDK를 각각 구축할 것입니다. 그러한 개발자 툴과 SDK는 개발자들의 블록체인 기술 채택에 대단히 중요할 것입니다.
OPEN Chain 테스트 네스트 넷은 2018년 9월 중순에 가동 준비되는 것으로 예정되어 있습니다. TCP 커뮤니케이션 레이어에 대한 작업을 시작했고 7월 말까지는 완전히 효율적으로 사용될 것으로 기대하고 있습니다. 상호정보교환이 가능한 블록체인 네트워크와 경쟁력 있는 확장성 수준을 달성하기 위해 이런 것들이 굉장히 중요할 것입니다. 동시에, 8월 중순까지는 투표와 컨센서스 실행을 구축하고 완벽한 코드 오픈 소스를 갖게 될 것입니다.
개발자 커뮤니티 구조
중앙화 된 기술 스택에서만 작업해온 개발자들 또한 포함하는 가장 탄탄한 개발자 커뮤니티를 만들기 위한 우리의 헌신을 반영하기 위해 토큰 제너레이션 이벤트에서 만들어진 개발자 성장 Pool을 갖고 있으며 OPEN 토큰 총 공급량의 20%를 보유하고 있습니다. 이 토큰들은 새로 합류한 개발자들, 일류 기업들과 파트너 십 만들기, 해커 톤과 개발자 이벤트들 개최, 많은 다양한 방법으로 커뮤니티에게 권한을 주는 데 쓰일 것입니다.
어떤 공개 블록체인 프로젝트보다 OPEN은 개발자Pool이 가장 큰 토큰 할당량을 갖고 있다는 데에 자부심을 느낍니다. 최초의 OPEN 오픈 소스가 GitHub에 발표되면서 우리의 공개적인 기술 커뮤니티가 활성화됐습니다. 우리는 세계 어디에 있든 개발자에게 최고의 툴과 자원을 공급하면서 우리의 사명을 구체화할 수 있도록 노력해나아갈 것입니다. 오픈플랫폼은 앞으로도 기술과 관련 최소 주 단위로 개발 진척 상황에 관한 업데이트를 포스트 할 예정입니다. 오픈 플랫폼은 이미 퍼블릭키 알고리즘을 구축했으며 6월 말까지는 월렛 소프트웨어 업데이트를 시작할 입니다. 7월 말에 이용가능한 오픈 월랫 등 더 자세한 사항은 곧 발표할 것입니다.