플레타 (암호화폐)
플레타는 블록 채굴 합의를 통해 지정된 순서를 기반으로 블록을 생성하는 새로운 합의 모델 ‘PoF(Proof of Formulation)’ 및 디앱(DApp) 개발자에게는 손쉬운 개발 환경을, 사용자에게는 편리한 사용 환경을 제공하는 맞춤형 멀티 블록체인 플랫폼이다. 플레타는 현재 빗썸, 코인원 등의 국내 거래소와 비트렉스, 디지파이넥스 등의 글로벌 거래소에 상장돼있다.
목차
개요
플레타는 지속적인 디앱(Dapp) 생태계를 위한 블록체인 플랫폼이라는 비전을 가지고 있다. 각종 블록체인 프로토콜들이 많이 나오고 있고, 이 프로토콜이 디앱을 동작할 수 있게 하는 것이다. 예를 들면, 스마트폰으로 문자를 보내고, 이메일을 확인하고 게임을 할 수 있다. 이런 기능은 스마트폰 OS로 동작하며, 블록체인에서는 디앱이 있고, 이 디앱을 동작할 수 있게 지원하는 OS 역할을 하는 플랫폼이 있다. 플레타는 이 플랫폼을 만드는 프로젝트이다. 그리고, 블록체인은 아직 향상되고 발전할 부분이 많이 남아있어서, 플랫폼을 블록체인 원천기술을 통해 진보시키고 있는 블록체인 플랫폼이다. 또한, 플레타는 디앱 개발사가 자유롭게 플랫폼을 사용할 수 있고, 유연하게 대처할 수 있다. 디앱 개발사마다 원하는 체인 구조와 프로젝트 구조가 조금씩 다를 수 있기 때문에 이에 대응하기가 쉽지 않다. 개발사 문제를 해결하고 진행해야 결국 그 혜택이 사용자에게 돌아가게 되며, 원하는 목표와 원하는 방향대로 개발을 완료하여 사용자에게까지 혜택이 이어지는 강점이 있다.
플레타는 서비스 가능한 성능의 블록체인 엔진과 다른 암호화폐 개발 환경과의 통합지원을 목표로 한다.
- 1. 트랜잭션과 블록생성 속도를 줄이는 기술과 독립 멀티체인 구조를 통해 개별 서비스들이 독립적으로 사용할 수 있도록 지원한다.
- 2. 시스템들의 개발환경과 통합을 할 수 있도록, RDMBS, NoSQL, Event Sourcing 등을 사용할 수 있도록 하며, 이를 스마트 계약으로 제공한다.
플레타는 블록체인 기술을 이전 서비스와 연동하여 개발할 수 있도록, 진입장벽과 개발 난이도를 낮추고 효율적으로 개발하여 운영이 가능하도록 한다.
특징
플레타는 각 디앱 전용 서브체인에서 작동하는 개별 레이어 체인을 개별적으로 분배하는 독특한 블록체인 구조를 기반으로 구축되었다. 플레타는 트랜잭션 속도, 새로운 형식의 합의(Proof-of-Formulation 또는 PoF) 및 관찰자 노드를 통한 다중 체인 구조, 샤딩기술을 사용하며 이 방식은 네트워크 과부하 문제를 해결한다.
독립 멀티체인 구조
플레타의 디앱은 개별 체인을 구동시키며, ICO 등을 위한 토큰 추가 발행과 인터체인 기능을 사용하는 경우에만 메인 체인과 연동되어 동작한다. 메인 체인과 별개로 독립체인이 개별 디앱과 연동하여 작동한다. 시그마체인의 시스템과 유사하다.
- 1.토큰체인
- 플레타의 디앱은 개별 토큰을 발행할 수 있다. 토큰의 전체 수량, 초기 계좌 구성, Observer Node 공개키, 시드 노드 IP, 락업, 토큰 판매 등의 제네시스(Genesis) 정보를 설정하면 토큰 계정(Token Account)이 개설되며, 해당 정보를 이용하여 토큰체인(Token Chain) 노드(node)의 설정 값을 지정하고 네트워크를 구성할 수 있다. 토큰체인은 토큰 발행과 인터체인(interchain) 기능을 한다.
- 2. 토큰이슈
- 토큰이슈(TokenIssue)는 생성된 토큰의 초기 값에 토큰 판매 정보가 있는 경우 사용된다. 사용자가 토큰을 입금하면, 검증을 거쳐 토큰 입금이 승인된다. 토큰 체인은 메인 체인의 거래 중 해당 토큰 체인에서 처리해야 하는 정보를 처리하므로, 이 때 실제 토큰을 발행하게 된다. 플레타 토큰 교환은 토큰이슈를 통해 이뤄지며, 이 때 토큰으로 교환된 플레타는 토큰 관리자 주소로 들어가고, 토큰 생성 트랜잭션이 이뤄진다. 토큰 체인은 발행된 이슈 트랜잭션을 확인하여 해당 금액을 입금한 주소에 지정된 토큰을 생성하여 제공하게 된다.
- 3. 인터체인
- 플레타의 디앱들은 독립된 블록체인으로 구성되므로 각각의 디앱들과 통신을 위한 인터체인 기술이 필요하다. 인터체인은 디앱체인의 블록 헤더를 주기적으로 메인 체인에 보고하여 작성함으로 이뤄진다. 블록헤더에는 거래 정보들이 담겨있다. 토큰을 이전하면 이전 체인에서 삭제되고, 토큰을 받은 메인 체인에서 토큰을 생성한다. 인터체인 기능은 하나의 체인이 여러 종류의 토큰을 보유할 수 있어서, 스마트 계약 또한 여러 종류의 토큰으로 실행할 수 있다.[1] 이러한 인터체인에는 스테이블코인의 페깅과 같은 방법이 사용된다.
포뮬레이션 합의 알고리즘
플레타는 블록채굴 순서를 합의해 지정된 순서를 바탕으로 채굴자를 선택하는 포뮬레이션증명 (PoF: Proof of Formulation) 방식으로 채굴에 대한 보상을 한다. 포뮬레이션증명(PoF)은 위임지분증명(DPoS)의 일부로 볼 수 있지만 투표가 아닌 스코어 기반이기 때문에 EOS와 비교했을 때, 훨씬 더 많은 노드가 네트워크 운영에 참여할 수 있는 기회를 가질 수 있다. 신규 포뮬레이터 또한 블록 검증 및 보상기회를 받을 수 있도록 임의의 값과 네트워크 검증 기여도의 합산을 통하여 순번을 정한다. 또한 옵져버 노드를 통해 실시간 컴펌이 가능하며, 만일에 발생할 수 있는 있는 포크도 방지한다.
플레타의 총 노드 즉, 포뮬레이터는 확정짓기가 어렵지만 Dash의 사례로 보아 보수적으로 8,000개가량으로 산정하였다. 그리고 이 8,000개의 포뮬레이터 중에서 블록 검증과 보상을 받는 그룹의 포뮬레이터는 20개 이며 스코어를 통하여 그룹 내 합류 여부가 결정된다. 해당 스코어는 신규 포뮬레이터 또한 블록 검증 및 보상기회를 부여받을 수 있도록 임의의 값과 네트워크 검증 기여도의 합산을 통하여 순번을 정한다.
블록 재설계
플레타 블록 구조 측면에서 블록 헤더 및 서명은 블록 트랜잭션 수와 함께 각각 고정 바이트이다. 트랜잭션 서명 및 트랜잭션 수는 블록의 이러한 요소에 비례한다. 이러한 방식으로 블록을 설계함으로써 병렬 처리를 위한 기반을 만들 수 있다. 예를 들어 시그니처 목록에서 레벨 3 오프셋을 가져올 수 있다. 16개의 트랜잭션을 가져와서 경량 스레드로 보낸다. 이 경량 스레드는 필요한 데이터를 효율적으로 전달할 수 있고 트랜잭션의 유효성을 검사하는데 사용할 수 있다. 이 프로세스를 사용하여 고속 검증으로 레벨 트리를 구축하여 검증 및 레벨 경로를 동시에 병렬 처리할 수 있다. 따라서 20,000TPS의 트랜잭션 속도를 달성할 수 있다. 이러한 블록 구조 재설계는 블록의 용량을 기존보다 43% 축소시키고 운용에 필요한 인덱스 용량을 줄일 수 있게된다. 이러한 블록 재설계는 거래 처리 속도를 1.8배 향상시켰다.
레벨트리
거래 검증 과정에 많이 쓰이는 머클트리(Merkle Tree) 방식이 아닌 레벨트리(Level Tree) 방식을 도입해 검증 구조의 용량을 90% 줄였다. 이러한 레벨트리 검증방식은 적은 데이터로 검증을 수행할 수 있게되어 데이터 검증 속도를 5배이상 향상 시켰다.
샤딩을 사용한 병렬 처리
트랜잭션의 병렬 처리(Multinode Parallel transaction processing)는 초고속 트랜잭션 처리를 실현하는 매우 중요한 기술이다. 거래는 일반적으로 사전 결정된 규칙에 따라 나뉘며 결과는 이중지불 방지 및 일련 번호 순서를 통해 수집 및 처리된다. 플레타 블록체인에서 각 샤드는 독립적으로 작동하는 대신 다른 샤드와 종속되거나 상호 연결되지 않는다. 즉, 각 샤드에는 자체 체인이 있으며 하나의 계정은 동일한 키와 주소를 가진 모든 샤드에 엑세스 할 수 있다.
- 트랜잭션 샤딩 기반 다중체인 : 단일 체인에 있는 트랜잭션 처리 구조와 달리 각 샤드에는 독립적인 블록체인이 있다. 따라서 샤드가 처리하는 트랜잭션은 각 샤드가 서로 영향을 받지 않고 병렬로 트랜잭션을 처리할 수 있는 독립 블록체인 내에서 유지 관리된다. 샤드 시스템은 기본적으로 이중 지출을 방지하도록 구성되어 있으며 각 샤드마다 고유한 블록체인이 있으므로 완전한 병렬 프로세스를 통해 처리 속도가 향상된다. 또한 플레타에서는 트랜잭션 처리 뿐 아니라 데이터 분할처리까지 지원하는 풀샤딩을 지원한다.
- 성능개량 : 초당 20,000회의 놀라운 속도를 달성할 수 있다. 플레타의 TXID는 TXID를 인덱싱하기 위해 블록의 높이와 블록 내의 트랜잭션 위치를 사용하여 트랜잭션 해시에서 고유하게 생성되므로 다른 블록체인 솔루션과 비교할 때 상당한 메모리를 절약한다. 이렇게 하면 큰 인덱스에 대한 필요성이 줄어들고 트랜잭션을 크게 검색할 때 요구가 줄어든다. 서명을 통해 확인이 이루어지기 때문에 내용을 위조하지 못하도록 하는 이점이 있다. 이를 통해 즉각적인 트랜잭션 검색, 필요한 인덱스 용량 감소 및 데이터 볼륨 감소가 가능하다.
- 다중 서명 : 플레타 트랜잭션에 여러 서명이 필요한 경우 여러 주소가 블록 출력에 배치될 수 있다. 트랜잭션을 완료하기 위해 필요한 모든 서명을 트랜잭션에 배치할 수 있다. 이 시스템은 다중 서명 구현의 복잡성을 크게 줄이고 유효성 검사 프로세스를 크게 단순화한다.
라이트노드
라이트노드를 사용하면 모바일 장치를 사용할 때 레벨 2까지의 데이터가 저장되는 반면, 레벨 3까지의 데이터는 PC를 사용하여 저장될 수 있다. 레벨 3 트리 데이터가 저장되면 특정 트랜잭션을 검색하고 유효성을 확인하기 위해 16개의 해시와 단일 트랜잭션만 필요하다. 이를 통해 미우 낮은 메모리 요구와 매우 빠른 속도로 트랜잭션을 검증할 수 있다.
트랜잭션
플레타 플랫폼에서 가능한 초당 트랜잭션 양은 궁극적으로 네트워크의 속도와 서명 검증 속도에 달려있다. ECDSA8 코어 표준은 1.4MB/s의 합리적인 네트워크 속도로 작동하는 8개의 코어를 기반으로 한 초당 23,000개의 트랜잭션을 물리적으로 제한할 수 있다. 따라서 플레타는 초당 20,000의 트랜잭션 속도를 안전하게 달성하는 것을 목표로 한다.
네트워크
플레타의 네트워크는 모든 위치의 피어가 균일하게 처리되도록 설계되었다. 이 네트워크 배포 방식을 통해 특정 방향으로 중앙 집중화를 방지할 수 있다. 거리는 ping에 의해 결정되며, 네트워크 거리는 각 피어의 최대 거리를 보장하여 가능한 한 균일하도록 설계된다. 이렇게 하면 네트워크의 거리 중심화 가능성이 줄어든다.
포크 방지
동일한 높이를 갖는 두 개의 블록이 관찰자 노드에 들어가면, 포크는 5개의 그룹으로부터 3개의 서명을 요구함으로써 검출될 수 있다. 따라서 관찰자 노드가 이러한 충돌을 감지하면 포크를 생성할 수 없다. 포뮬레이터 그룹이 거짓 보고서를 작성하면 구현된 프로토콜이 금지되어 허위 블록 생성에서 네트워크를 보호한다.
관찰자 노드를 통한 실시간 확인
플레타는 유효성 검사 프로세스의 속도를 높이기 위해 관찰자 노드를 개발했다. 관찰자 노드는 트랜잭션의 유효성 확인에만 전념하기 때문에 실시간 확인이 가능하다. 비트코인 및 이더리움과 같은 이전 블록체인 모델은 확인을 완료하는데 몇 분이 걸린다. 플레타는 실시간 확인을 통해 이 프로세스를 크게 가속화한다. 이 방법을 사용하면 5개의 관찰자 노드 중 3개가 서명을 만들기 위해 공식화 된 블록에 동의해야 한다. 포뮬레이터 그룹에 의해 결정된 일련의 그룹 일치는 노드 서명의 유효성 검사와 함께 블록 작성 프로세스에서 위조 또는 결탁을 방지한다.
다중체인 프로토콜
대부분의 코인들은 메인넷을 유지하는 하나의 메인체인으로 구성되어 있다. 모든 트랜잭션은 포리스트 데이터 구조에서 상호 참조되므로 각 트랜잭션의 유효성 검사에는 모든 트랜잭션의 전체 기록이 필요하다. 플레타 플랫폼의 다중체인 구조를 통해 각 디앱에는 별도의 관찰자 노드와 공식자가 있어 체인을 독립적으로 운영할 수 있다.
- 독립사슬 : 포뮬레이터는 PoF 시스템을 사용하여 열린 노드에서 작동하여 네트워크와 지속적으로 동기화되고 체인 진행을 유지한다. 포뮬레이터 그룹이 체인 작동에서 동기화되면 포뮬레이터는 확인을 수락할지 여부를 결정하여 동기화를 보장할 수 있다. 관측 노드는 분기 시스템이 동기식으로 계속 작동할 수 있도록 포크의 가능성을 없앰으로써 이 시스템을 보강한다. 주 체인에서 포뮬레이터를 사용하는 대신, 주 체인이 중지되는 경우에도 주 체인과 독립적으로 작동하도록 하위 체인에서 구성자를 구성할 수 있다.
확장성이 뛰어난 멀티체인
플레타는 각 디앱에 대해 서브 체인을 호스팅하는 메인체인으로 구성되며, 전체적으로 다중 체인 플랫폼을 형성한다. 이 시스템에서는 각 추가 디앱에 따라 확장되는 블록체인만 아니라 데이터 체인도 확장된다. 이 기능 및 데이터의 분리는 무한 확장성을 제공한다. 한편 서브체인 유지보수는 자체 명시적 접근 경로를 형성하는 각 디앱별 서브체인에 의해 처리된다. 이렇게 하면 다른 다중 체인 시스템에서 나타나는 유지보수 및 접근 문제가 공식화 그룹 시퀀스 동기화를 사용하여 각 서브체인의 위치를 조정함으로써 해결된다. 개별 하위 체인은 관련 디앱에만 전적으로 기인하므로 디앱 관리자가 지정한 업데이트, 데이터 마이그레이션, 롤백 및 기타 다양한 기능을 사용할 수 있다. 실행 수수료는 해당 디앱의 토큰으로 지불하거나, 원하는 경우 특정 디앱의 정책에 따라 제어 기능에 의해 결정되며, 별도의 수수료가 부과되지는 않는다. 이는 기능, 데이터 및 토큰 마이닝 경제의 측면에서 디앱이 독립성을 갖는 다중 체인을 생성한다.
토큰 이코노미
디앱이 플레타 블록체인에서 생성한 토큰은 병렬 처리 및 샤딩 시스템으로 가능한 고유한 매개 변수에 따라 채굴된다. 채광 보상 및 거래 수수료는 각 디앱 하위 체인별로 독립적으로 맞춤 설정할 수 있다. 이 함수는 초기 생성 단계 다음에 토큰 이름에 첨부된 스마트 계약에서 실행된다. 이 업데이트는 포크나 스왑을 필요로 하지 않고 각 디앱의 거버넌스를 통해 완료될 수 있다.
디앱의 분산화
플레타가 특정 디앱에 대한 새로운 토큰을 생성하면 관련 토큰 보유자가 디앱 플랫폼의 개발 및 관리에 직접 참여할 수 있다. 이렇게 하면 디앱 개발 및 운영이 분산되어 토큰 소유자가 디앱 체인의 직접 참여자가 될 수 있다. 이 구조는 각 디앱의 토큰 보유자가 응용 프로그램의 작성자일 뿐만 아니라 응용 프로그램의 직접 소유자이기도 하여 디앱을 크게 분산시킨다. 각 디앱 전용 하위 체인은 고유한 개발 및 관리 권한을 통해 자체 전용 서비스를 실행하며 디앱의 토큰 소유자의 관리를 통해 액세스한다.
각주
- ↑ 〈FLETA TECH PAPER Update 2018.10.17_v2.0〉, 《플래타 기술백서》, 2018-10-17
- ↑ 플레타 공식 홈페이지 - http://fleta.io/
- ↑ 플레타 공식 홈페이지 - http://fleta.io/
- ↑ 플레타 공식 홈페이지 - http://fleta.io/
- ↑ 플레타 공식 홈페이지 - http://fleta.io/
참고자료
- 플레타 공식 홈페이지 - http://fleta.io/
같이 보기
이 플레타 (암호화폐) 문서는 암호화폐 종류에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.