Tutte le lingue
Bityuan è una rete di catene pubbliche semplice, stabile ed espandibile. BitYuan è nato nel dicembre 2013. Inizialmente, è stato prodotto dal meccanismo di consenso pre-mining airdrop + POW.Nel 2015, il meccanismo di consenso BitYuan è stato aggiornato al POS. Dopo oltre quattro anni di progettazione e ricerca, il 17 maggio 2018 è stata sviluppata e testata BitYuan Blockchain 3.0, è stata lanciata la rete principale ed è stata aggiornata a: SPOS (Safe POS), ovvero un meccanismo di consenso sicuro per i POS che ottimizza i numeri casuali. Più di 6 mesi dopo, il 7 dicembre 2018, Bitcoin (BTY) è stato ufficialmente reso open source su Github.
La ricerca e lo sviluppo di Bityuan adotta la tecnologia di base di Hangzhou Complex Beauty Chain33, che è un progetto di catena pubblica con un'architettura multi-catena (catena pubblica parallela) che è stata implementata e implementata. Sulla blockchain Bityuan possono essere sviluppate più catene pubbliche parallele.Ogni catena pubblica parallela non solo ha una costruzione ecologica blockchain diversa e indipendente e lo sviluppo DAPP, ma può anche realizzare funzioni di scambio incrociato tra più catene. I campi di applicazione dei progetti di catena pubblica parallela includono: valuta stabile, buste rosse, social networking, e-commerce, asset on-chain, debito on-chain, deposito di certificati e giochi.
La blockchain BitYuan ha assunto un ruolo guida nell'implementazione innovativa di MVCCKVDB (archiviazione dati KV multi-versione). Le blockchain tradizionali memorizzano i dati sotto forma di alberi merkle o alberi MPT. Ogni volta che i dati cambiano,< br> L'albero verrà sottoposto a refactoring una volta, il che è relativamente inefficiente. Ad esempio, per un albero Merkle a 20 livelli, l'interrogazione dei dati di un nodo foglia richiede il completamento di 20 operazioni di lettura, con il risultato che l'efficienza della query dei dati è solo 1/20 dell'efficienza della query dei database ordinari, che possono essere completati per secondo Un sistema con 100.000 operazioni di lettura può leggere solo dati di 5.000 transazioni al secondo, il che limita notevolmente le prestazioni di lettura del sistema. Quando si scrivono i dati, è anche necessario caricare i dati di più nodi sul ramo dell'albero e infine scriverli sul disco dopo l'aggiornamento.Anche il consumo dell'operazione in questo è relativamente elevato. BitYuan si basa sul concetto MVCC (Multi-Version Concurrency Control) nella progettazione del database e progetta un formato di archiviazione dati KVMVCC originale per migliorare l'inefficienza delle strutture MAVL o MPT.Soddisfa la necessità di mantenere elevate prestazioni di lettura e scrittura dei dati dopo i dati blockchain cresce fino a una certa scala.
Calcolo dell'hash:
statehash=hash (prevstatehash, KVSet, altezza), che contiene le informazioni sullo stato dell'hash del blocco precedente, le informazioni sullo stato del KVSet dei dati di questo blocco e l'attuale informazioni sull'altezza del blocco (ovvero informazioni sulla versione).
Nel database di ogni nodo verrà memorizzata la seguente corrispondenza:
hash->altezza(versione)
altezza(versione)->hash
chiave:altezza(versione)->valore
lastest:key->value
Query di dati:
L'altezza corrispondente (versione) può essere trovata in base allo statehash e quando l'altezza corrispondente può essere trovata in base all'altezza, il valore della chiave specifica corrisponde a Il valore valore.
Verifica dei dati:
per un KVSet con un'altezza specifica, le operazioni Hash possono essere eseguite in base ai valori hash prevstatehash, KVSet e altezza del blocco precedente. Se l'hash i valori corrispondono, i dati non sono stati manomessi, altrimenti i dati vengono modificati o i dati sono errati (l'altezza è errata o i dati KVSet sono errati).
Mantenimento dell'ultima versione dei dati:
In particolare, quando si memorizza la chiave e il valore dell'ultimo blocco, allo stesso tempo conservare (nuova chiave) o aggiornare (avere già cronologia Chiave di versione) key:latest->la relazione di mappatura del valore viene archiviata nel database chiave-valore locale. Quando è necessario ottenere i dati batch più recenti, è possibile eseguire query sui dati più recenti in batch in base all'ultimo prefisso (può essere personalizzato). Poiché il normale database di valori-chiave può supportare bene le query di corrispondenza del prefisso, l'efficienza della query sarà relativamente elevata, molto superiore alla query della struttura di archiviazione dell'albero Merkle.
Al fine di migliorare le prestazioni della blockchain, la catena pubblica parallela generalmente adotta il consenso DPOS (Share Authorization Proof Mechanism), ovvero vengono selezionati diversi supernodi sulla catena per pagare potenza di calcolo e supporto a banda larga
Le informazioni sulla transazione devono essere impacchettate nel blocco e le informazioni sul blocco vengono trasmesse ad altri nodi e le informazioni sulla transazione vengono memorizzate sul blocco per svolgere la funzione di governo congiunto della comunità.
Indipendentemente dal fatto che una catena pubblica abbia successo o meno, una delle metriche chiave è il numero di nodi della catena. Il meccanismo del supernodo può aiutare la catena pubblica parallela a stabilire rapidamente un'ecologia sulla catena e fare affidamento sul funzionamento e sulla manutenzione di ciascun supernodo per promuovere la prosperità dell'ecologia della catena pubblica parallela e realizzare un'area più stabile, potente e decentralizzata Sistema blockchain.
Allo stesso tempo, l'operatore di catena pubblica parallela può istituire una fondazione di catena parallela per promuovere l'iniziativa e l'entusiasmo dei super nodi attraverso vari meccanismi di incentivazione token e metodi operativi della fondazione per super nodi e attraverso il riacquisto di token , procedure di transazione Promuovere lo sviluppo sano e sostenibile della filiera pubblica parallela.
La macchina dell'oracolo realizza il collegamento tra la blockchain e il mondo reale. La macchina dell'oracolo è un'entità attendibile che introduce informazioni sullo stato del mondo esterno attraverso le firme, consentendo così a contratti intelligenti deterministici di determinare l'incertezza < br> Il mondo esterno reagisce. La macchina Oracle ha le caratteristiche di non manomissione, servizio stabile e verificabile.
I dati di rilascio del contratto Oracle sono suddivisi in tre passaggi:
(1) Evento di rilascio dei dati di rilascio (notifica a tutta la rete che il risultato di un evento verrà annunciato in futuro e assegna un ID evento univoco, se l'evento non si è verificato e può essere annullato).
(2) Risultati pre-rilascio (il fornitore di dati pre-rilascia i risultati temporali, se i risultati risultano problematici dall'audit, possono essere revocati).
(3) Pubblicare i risultati (dopo che i risultati pre-rilascio sono stati verificati, verranno finalmente rilasciati sull'intera rete, che non può essere manomessa e può essere verificata e tracciata).
Altri contratti (come i contratti di ipotesi) possono utilizzare l'ID evento e eventi specifici nel precedente passaggio 1 per eseguire attività (di ipotesi). Quando vengono annunciati i risultati della fase 3, il contratto di ipotesi attiverà il completamento del contratto la soluzione dell'ipotesi in base al risultato corrispondente all'ID evento, per ottenere un'ipotesi equa oggettiva, credibile, verificabile e tracciabile senza intervento umano.