Alle talen
Bityuan is een eenvoudig, stabiel en uitbreidbaar openbaar ketennetwerk. In december 2013 werd BitYuan geboren. Aanvankelijk werd het geproduceerd door het pre-mining airdrop + POW-consensusmechanisme. In 2015 werd het BitYuan-consensusmechanisme geüpdatet naar POS. Na meer dan vier jaar ontwerp en onderzoek werd op 17 mei 2018 BitYuan Blockchain 3.0 ontwikkeld en getest, het hoofdnetwerk gelanceerd en geüpgraded naar: SPOS (Safe POS), dat wil zeggen een veilig POS-consensusmechanisme dat optimaliseert willekeurige getallen. Meer dan 6 maanden later, op 7 december 2018, werd Bitcoin (BTY) officieel open-source op Github.
Het onderzoek en de ontwikkeling van Bityuan maakt gebruik van de onderliggende technologie van Hangzhou Complex Beauty Chain33, een openbaar ketenproject met een architectuur met meerdere ketens (parallelle openbare keten) die is geïmplementeerd en geïmplementeerd. Meerdere parallelle openbare ketens kunnen worden ontwikkeld op de Bityuan-blockchain.Elke parallelle openbare keten heeft niet alleen een diverse en onafhankelijke blockchain-ecologische constructie en DAPP-ontwikkeling, maar kan ook cross-chain uitwisselingsfuncties tussen meerdere ketens realiseren. De toepassingsgebieden van parallelle openbare ketenprojecten zijn onder meer: stabiele valuta, rode enveloppen, sociale netwerken, e-commerce, asset on-chain, debt on-chain, certificaatstorting en games.
De BitYuan-blockchain nam het voortouw bij de innovatieve implementatie van MVCCKVDB (multi-versie KV-gegevensopslag). Traditionele blockchains slaan gegevens op in de vorm van merkle-bomen of MPT-bomen. Elke keer dat de gegevens veranderen,< br> De boom zal één keer worden geherstructureerd, wat relatief inefficiënt is. Voor een Merkle-boom met 20 lagen vereist het opvragen van de gegevens van een bladknooppunt bijvoorbeeld 20 leesbewerkingen om te voltooien, wat resulteert in de efficiëntie van gegevensquery's is slechts 1/20 van de query-efficiëntie van gewone databases, die kunnen worden voltooid per tweede Een systeem met 100.000 leesbewerkingen kan slechts gegevens van 5.000 transacties per seconde lezen, wat de leesprestaties van het systeem aanzienlijk beperkt. Bij het schrijven van gegevens is het ook nodig om de gegevens van meerdere knooppunten op de boomtak te laden en deze na het bijwerken uiteindelijk naar de schijf te schrijven.Het bewerkingsverbruik is hierbij ook relatief groot. BitYuan maakt gebruik van het MVCC-concept (Multi-Version Concurrency Control) in databaseontwerp en ontwerpt een origineel KVMVCC-gegevensopslagformaat om de inefficiëntie van MAVL- of MPT-structuren te verbeteren. Voldoen aan de behoefte om hoge lees- en schrijfprestaties te behouden na de blockchain-gegevens groeit tot een bepaalde schaal.
Hash-berekening:
statehash=hash (prevstatehash, KVSet, height), die de status Hash-informatie van het vorige blok, de statusgegevens KVSet-informatie van dit blok en de huidige blokhoogte-informatie (dat wil zeggen versie-informatie).
De volgende correspondentie wordt opgeslagen in de database van elk knooppunt:
hash->height(version)
height(version)->hash
key:height(version)->value
lastest:key->value
Gegevensquery:
De overeenkomstige hoogte (versie) kan worden gevonden volgens de statehash, en wanneer de overeenkomstige hoogte kan worden gevonden volgens de hoogte, de specifieke sleutelwaarde komt overeen met De waarde waarde.
Gegevensverificatie:
Voor een KVSet met een specifieke hoogte kunnen hash-bewerkingen worden uitgevoerd volgens de hash-waarden prevstatehash, KVSet en hoogte van het vorige blok. Als de hash waarden komen overeen, er is niet met de gegevens geknoeid, anders zijn de gegevens gewijzigd of zijn de gegevens onjuist (de hoogte is onjuist of de KVSet-gegevens zijn onjuist).
Onderhoud van de nieuwste versie van gegevens:
Vooral bij het opslaan van de sleutel en waarde van het laatste blok, tegelijkertijd behouden (nieuwe sleutel) of updaten (hebt al geschiedenis Versiesleutel) sleutel:nieuwste->waardetoewijzingsrelatie wordt opgeslagen in de lokale sleutel-waardedatabase. Wanneer u de nieuwste batchgegevens nodig heeft, kunt u de nieuwste gegevens in batches opvragen op basis van het laatste voorvoegsel (kan worden aangepast). Aangezien de gebruikelijke sleutel-waardedatabase query's voor het matchen van prefixen goed kan ondersteunen, zal de query-efficiëntie relatief hoog zijn, veel hoger dan de query van de Merkle-boomopslagstructuur.
Om de prestaties van de blockchain te verbeteren, neemt de parallelle openbare keten over het algemeen de DPOS-consensus (Share Authorization Proof Mechanism) aan, dat wil zeggen dat er verschillende superknooppunten in de keten worden geselecteerd om rekenkracht en breedbandondersteuning te betalen
De transactie-informatie moet in het blok worden verpakt en de blokinformatie wordt naar andere knooppunten uitgezonden en de transactie-informatie wordt in het blok opgeslagen om de functie van gezamenlijk bestuur van de gemeenschap te vervullen.
Of een openbare keten nu succesvol is of niet, een van de belangrijkste statistieken is het aantal knooppunten in de keten. Het superknooppuntmechanisme kan de parallelle openbare keten helpen om snel een ecologie in de keten tot stand te brengen en te vertrouwen op de werking en het onderhoud van elk superknooppunt om de welvaart van de parallelle openbare ketenecologie te bevorderen en een stabieler, krachtiger en gedecentraliseerder gebied te realiseren Blockchain-systeem.
Tegelijkertijd kan de parallelle openbare ketenbeheerder een stichting parallelle keten opzetten om het initiatief en enthousiasme van superknooppunten te bevorderen door middel van verschillende token-stimuleringsmechanismen en werkwijzen van de stichting voor superknooppunten, en door de terugkoop van tokens , transactieprocedures Ter bevordering van een gezonde en duurzame ontwikkeling van de parallelle publieke keten.
De orakelmachine realiseert de link tussen de blockchain en de echte wereld. De orakelmachine is een vertrouwde entiteit die informatie over de toestand van de buitenwereld introduceert door middel van handtekeningen, waardoor deterministische slimme contracten het onzekere kunnen bepalen < br> De buitenwereld reageert. De orakelmachine heeft de kenmerken van niet-knoeibare, stabiele service en controleerbaar.
De vrijgavegegevens van het oracle-contract zijn verdeeld in drie stappen:
(1) Vrijgavegegevens vrijgavegebeurtenis (informeer het hele netwerk dat het resultaat van een gebeurtenis in de toekomst zal worden aangekondigd en wijs een unieke gebeurtenis-ID toe, indien de gebeurtenis heeft niet plaatsgevonden en kan ongedaan worden gemaakt).
(2) Pre-release resultaten (de gegevensprovider publiceert de tijdresultaten vooraf, als de resultaten problematisch blijken te zijn door de audit, kunnen ze worden ingetrokken).
(3) Publiceer de resultaten (nadat de resultaten van de pre-release zijn gecontroleerd, worden ze uiteindelijk vrijgegeven op het hele netwerk, waarmee niet kan worden geknoeid en die kunnen worden gecontroleerd en getraceerd).
Andere contracten (zoals raadcontracten) kunnen de gebeurtenis-ID en specifieke gebeurtenissen in de bovenstaande stap 1 gebruiken om (raad)activiteiten uit te voeren. Wanneer de resultaten van stap 3 worden aangekondigd, activeert het raadcontract het contract om te voltooien de gokafrekening volgens het resultaat dat overeenkomt met de gebeurtenis-ID, om een objectieve, geloofwaardige, controleerbare en traceerbare eerlijke gok te bereiken zonder menselijke tussenkomst.