탄소 배출 머클
" 탄소 배출 머클 ( Carbon Emission Merkle ) " 은 탄소 배출 데이터를 처리하는 " 워크 티어 머클 "의 일부입니다. 이 머클은 탄소 배출 데이터를 계산하고, 최종적으로 계산된 데이터는 토큰화되어 연산 처리됩니다.
외부에서 수집된 탄소 배출 데이터는 결제 서비스 및 이용 서비스 앱과 같은 애플리케이션, 그리고 인증된 기관 및 기업들의 인프라를 통해 제공됩니다. 이들 데이터는 WEB3 기술을 활용하여 수집됩니다.
아키텍쳐
탄소 배출 머클 클라이언트
탄소 배출 머클은 " 웹3 프로바이더 ( Web3 Provider ) "를 통해 접속하는 결제 및 이용 서비스 클라이언트를 위한 시스템입니다. 이 시스템에서, 클라이언트는 트랜잭션이 발생할 때마다 블록을 검증하는 역할을 합니다.
또한, 탄소 배출 머클 클라이언트는 레이어 단위의 시스템 구조를 채택하고 있으며, 이는 기존의 " 이더리움 가상 머신(EVM : Ethereum Virtual Machine ) " 시스템의 네트워크 프로토콜을 수정하여 탄소 배출과 관련된 트랜잭션의 처리에 특화된 기능을 제공합니다.
탄소 배출 머클 네트워크 구조
검증자 노드
마스터 티어 머클 블록 및 스마트컨트랙트 제안을 검증하는 과정에서, 검증자 노드는 중요한 역할을 수행합니다. 이 시스템에서 검증자 노드는 라우터 노드 시스템을 통해 특정 그룹으로 선출되며, 이 그룹은 " BLS(Boneh-Lynn-Shacham) " 서명 방식을 사용하여 트랜잭션을 검증합니다.
검증자 노드 그룹은 마스터 티어 머클 블록과 관련된 스마트컨트랙트의 제안 및 실행을 검증하는 책임을 지닙니다. 이는 블록체인 네트워크 내에서 합의를 달성합니다.
또한, 검증자 노드는 다른 워크 티어 머클과 스마트 컨트랙트의 호출 및 배포에 대한 합의 처리도 담당합니다.
부트 노드
노드가 네트워크의 다른 노드를 쉽게 찾아 연결할 수 있도록 돕는 기능은 주로 " 부트스트랩(Bootstrapping) 노드 ", 일명 " 부트 노드 ( Boot Node )"에 의해 수행됩니다. 새로운 노드가 네트워크에 참여하려 할 때, 이 부트 노드는 매우 중요한 역할을 합니다.
새로운 노드가 네트워크에 참여하기 위해서는 먼저 부트 노드 중 하나에 연결되어야 합니다. 부트 노드는 네트워크 내의 활성 노드들의 IP 주소 목록을 제공함으로써, 새 노드가 네트워크에 쉽게 통합될 수 있도록 돕습니다. 이 목록을 통해 새로운 노드는 네트워크 내의 다른 노드들과 연결을 시작하고, 네트워크와 동기화 과정을 진행할 수 있습니다.
RPC 노드
" RPC (Remote Procedure Call) 노드 "는 클라이언트가 스마트 컨트랙트의 함수를 호출하고 그 결과를 받을 수 있도록 하는 노드입니다. 이를 통해 클라이언트는 RPC 노드의 명령어를 사용하여 스마트 컨트랙트의 다양한 조합을 실행하고 관리할 수 있습니다.
거버넌스
노드 권한 분산 자율 조직(Node Authority DAO)
" 탄소 배출 머클 "의 노드 " 권한 분산 자율 조직(Node Authority DAO) "에 참여하고자 하는 서비스 앱은 서비스 앱 ID를 보유해야 합니다. 이 ID는 구글 앱 ID와 IOS 앱 ID를 포함합니다. 서비스 앱의 정보는 이 앱 ID를 통해 기존 노드 운영자들에게 전달되며, 이 운영자들은 1일에서 7일의 투표 기간 동안 해당 앱을 평가합니다. 기존노드 운영자들의 50% 이상의 찬성을 얻으면, 해당 서비스 앱은 노드 참여가 가능해지며, 이를 통해 배포 인증 토큰 및 사용 인증 토큰를 발급해주는 권한을 얻게 됩니다. 이 배포 인증 토큰은 탄소 배출 머클 내에서 스마트 컨트랙트를 배포할 수 있는 권한을 의미하며 사용 인증 토큰은 탄소 배출 머클 내에서 스마트 컨트랙트를 사용 할 수 있는 권한을 의미합니다.
합의 알고리즘
" 탄소 배출 머클 " 에서 블록 생성은 물리적인 검증자 역할을 하는 " 노드 권한 분산 자율 조직(Node Authority DAO) "에 의해 사전 허가를 받아야 하며, 이 조직은 네트워크 내에서 POA(Proof of Authority) 합의 알고리즘에 따라 합의를 이루어냅니다.
스마트컨트랙트 배포 및 사용권한
배포 인증 토큰
탄소 배출 머클 시스템에서 스마트 컨트랙트를 배포하고자 할 때, 개발자는 노드 운영자로부터 배포 인증 토큰를 받아야 합니다. 이 토큰은 스마트 컨트랙트 배포를 위한 권한을 부여하는 역할을 합니다. 스마트 컨트랙트의 배포가 성공적으로 완료되면, 이 배포 인증 토큰은 소멸( Burn )됩니다.
사용 인증 토큰
탄소 배출 머클 시스템에서 스마트 컨트랙트를 사용하려면, 해당 노드 운영자로부터 사용 인증 토큰를 받아야 합니다. 이 사용 인증 토큰은 서비스 앱 ID와 연동되어 있으며, 이는 서비스 앱이 스마트 컨트랙트를 사용할 수 있는 권한을 가지고 있음을 확인하는 역할을 합니다.
Last updated