모든 언어
Bityuan은 단순하고 안정적이며 확장 가능한 퍼블릭 체인 네트워크입니다. 2013년 12월 BitYuan이 탄생했습니다.처음에는 채굴 전 에어드롭 + POW 합의 메커니즘으로 제작되었으며 2015년 BitYuan 합의 메커니즘은 POS로 업데이트되었습니다. 4년 이상의 설계 및 연구 끝에 2018년 5월 17일 BitYuan 블록체인 3.0이 개발 및 테스트되었고 메인 네트워크가 출시되었으며 SPOS(안전 POS), 즉 보안 POS 합의 메커니즘으로 업그레이드되었습니다. 난수를 최적화합니다. 6개월 이상이 지난 2018년 12월 7일에 비트코인(BTY)이 Github에서 공식적으로 오픈 소스가 되었습니다.
Bityuan의 연구 개발은 구현 및 구현된 멀티 체인(병렬 퍼블릭 체인) 아키텍처의 퍼블릭 체인 프로젝트인 Hangzhou Complex Beauty Chain33의 기본 기술을 채택합니다. Bityuan 블록체인에서 여러 개의 병렬 퍼블릭 체인을 개발할 수 있습니다.각 병렬 퍼블릭 체인은 다양하고 독립적인 블록체인 생태 구조와 DAPP 개발을 가지고 있을 뿐만 아니라 여러 체인 간의 교차 체인 교환 기능을 실현할 수 있습니다. 병렬 퍼블릭 체인 프로젝트의 적용 분야에는 안정 통화, 빨간 봉투, 소셜 네트워킹, 전자 상거래, 온체인 자산, 온체인 부채, 증서 예금 및 게임이 포함됩니다.
BitYuan 블록체인은 MVCCKVDB(다중 버전 KV 데이터 저장소)를 혁신적으로 구현하는 데 앞장섰습니다. 기존 블록체인은 머클 트리 또는 MPT 트리 형태로 데이터를 저장합니다. 한 번 리팩토링되므로 상대적으로 비효율적입니다. 예를 들어, 20계층 Merkle 트리의 경우 리프 노드의 데이터를 쿼리하려면 완료하는 데 20번의 읽기 작업이 필요하므로 데이터 쿼리의 효율성은 일반 데이터베이스의 쿼리 효율성의 1/20에 불과합니다. 초 100,000개의 읽기 작업이 있는 시스템은 초당 5,000개의 트랜잭션 데이터만 읽을 수 있으므로 시스템의 읽기 성능이 크게 제한됩니다. 데이터를 쓸 때 트리 분기에 여러 노드의 데이터를 로드하고 마지막으로 업데이트 후 디스크에 쓰는 작업도 필요하며 이 작업 소비도 상대적으로 큽니다. BitYuan은 데이터베이스 설계에서 MVCC(Multi-Version Concurrency Control) 개념을 사용하고 고유한 KVMVCC 데이터 저장 형식을 설계하여 MAVL 또는 MPT 구조의 비효율성을 개선합니다.블록체인 데이터 이후 높은 데이터 읽기 및 쓰기 성능을 유지해야 하는 요구를 충족합니다. 일정 규모로 성장합니다.
해시 계산:
statehash=hash(prevstatehash, KVSet, height), 이전 블록의 상태 해시 정보, 이 블록의 상태 데이터 KVSet 정보 및 현재 블록 높이 정보(즉, 버전 정보).
각 노드의 데이터베이스에는 다음 대응이 저장됩니다.
해시->높이(버전)
높이(버전)->해시
키:높이(버전)->값
lastest:key->value
데이터 쿼리:
statehash에 따라 해당 높이(버전)를 찾을 수 있고, 높이에 따라 해당 높이를 찾을 수 있을 때, 특정 키 값은 값 값에 해당합니다.
데이터 검증:
특정 높이의 KVSet에 대해 해시 값 prevstatehash, KVSet 및 이전 블록의 높이에 따라 해시 작업을 수행할 수 있습니다. 값이 일치하고 데이터가 변조되지 않았으며 그렇지 않으면 데이터가 변경되었거나 데이터가 잘못되었습니다(높이가 잘못되었거나 KVSet 데이터가 잘못됨).
데이터의 최신 버전 유지:
특히 최신 블록의 키와 값을 저장할 때, 동시에 유지(새 키) 또는 업데이트(이미 히스토리 있음) 버전 키) 키:최신->값 매핑 관계는 로컬 키-값 데이터베이스에 저장됩니다. 최신 배치 데이터를 가져와야 하는 경우 최신 접두사(사용자 지정 가능)에 따라 최신 데이터를 배치로 쿼리할 수 있습니다. 일반적인 키-값 데이터베이스는 접두사 일치 쿼리를 잘 지원할 수 있으므로 쿼리 효율성은 Merkle 트리 스토리지 구조의 쿼리보다 훨씬 높습니다.
블록체인의 성능을 향상시키기 위해 병렬 퍼블릭 체인은 일반적으로 DPOS(Share Authorization Proof Mechanism) 합의를 채택합니다. 즉, 컴퓨팅 파워와 광대역 지원을 지불하기 위해 체인에서 여러 슈퍼 노드를 선택합니다. .
거래 정보는 블록에 패키징되어야 하고, 블록 정보는 다른 노드로 전파되며, 거래 정보는 블록에 저장되어 커뮤니티를 공동으로 통치하는 기능을 한다.
퍼블릭 체인의 성공 여부에 관계없이 핵심 지표 중 하나는 체인의 노드 수입니다. 슈퍼 노드 메커니즘은 병렬 퍼블릭 체인이 체인에서 신속하게 생태계를 구축하도록 돕고 각 슈퍼 노드의 운영 및 유지 관리에 의존하여 병렬 퍼블릭 체인 생태계의 번영을 촉진하고 보다 안정적이고 강력하며 분산된 영역을 실현할 수 있습니다. 블록체인 시스템.
동시에 병렬 퍼블릭 체인 운영자는 슈퍼노드 기반의 다양한 토큰 인센티브 메커니즘과 운영 방법 및 토큰 환매를 통해 슈퍼노드의 주도권과 열정을 촉진하기 위해 병렬 체인 기반을 구축할 수 있습니다. , 거래 절차 병렬 퍼블릭 체인의 건전하고 지속 가능한 개발을 촉진합니다.
오라클 머신은 블록체인과 현실 세계 간의 연결을 실현합니다. 오라클 머신은 서명을 통해 외부 세계의 상태에 대한 정보를 도입하여 특정 스마트 계약이 불확실한 < br> 외부 세계가 반응합니다. 오라클 머신은 변조가 불가능하고 안정적인 서비스를 제공하며 감사가 가능한 특성을 가지고 있습니다.
오라클 계약 해제 데이터는 3단계로 나뉩니다. 이벤트가 발생하지 않으며 취소할 수 있습니다.)
(2) 사전 공개 결과(데이터 제공자가 시간 결과를 사전 공개하며, 감사 결과 문제가 있는 경우 철회될 수 있음).
(3) 결과를 게시합니다(시험판 결과가 감사된 후 최종적으로 전체 네트워크에 공개되며 변조할 수 없고 감사 및 추적이 가능함).
다른 계약(예: 추측 계약)은 위 1단계의 이벤트 ID 및 특정 이벤트를 사용하여 (추측) 활동을 수행할 수 있으며, 3단계 결과가 발표되면 추측 계약이 계약을 완료하도록 트리거합니다. 사람의 개입 없이 객관적이고 신뢰할 수 있고 감사 가능하며 추적 가능한 공정한 추측을 달성하기 위해 이벤트 ID에 해당하는 결과에 따른 추측 결제.