Dash heeft een lange geschiedenis van innovatie en ontwikkeling, met meerdere belangrijke producten en functies die in de loop der jaren zijn uitgebracht. Gelanceerd op 18 januari 2014, ontwikkelde Dash snel nieuwe functies gericht op snelheid, privacy en bruikbaarheid, waardoor het ideaal is voor gebruik als digitale valuta. Gebouwd om financiële vrijheid te bieden en de toekomst van betalingen voor mensen over de hele wereld vorm te geven, heeft Dash een ambitieuze routekaart en een bewezen leveringsgeschiedenis.
EVONET
EVONET
EVONET
TESTNET
TESTNET
TESTNET
TESTNET
TESTNET
TESTNET
TESTNET
TESTNET
TESTNET
TESTNET
Dash Core Activatie
TESTNET
MAINNET
MAINNET
Dash werd opgericht door Evan Duffield met het uniekeX11 hashing algoritme als belangrijkste functie. De verdere doorontwikkeling bestond uit de dynamische aanpassing van de moeilijkheidsgraad voor miners, beter bekend alsDark Gravity Wave. Dit werd al snel gevolgd doormasternodes, een krachtig netwerk van volledige nodes, die de ruggengraat van het netwerk vormen en diensten aan gebruikers leveren.Sporks werden geïntroduceerd om een soepel releaseproces van nieuwe functies mogelijk te maken, zonder de netwerk te hardforken, en tenslotte werdPrivateSend geïntroduceerd om Dash een echt verhandelbare valuta te maken.
Aanvankelijk was Dash gebaseerd op het Litecoin-project, maar in 2015 is dit veranderd naar Bitcoin. Kort daarna werdInstantSend vrijgegeven, een methode om transacties te vergrendelen die waren beveiligd met behulp van de masternode-architectuur. Het werk werd het hele jaar door voortgezet om eengedecentraliseerd governancesysteem op te bouwen en tot 10% van de blokbeloning vrij te maken voorvoorstellen die aan het netwerk werden voorgelegd. Het eerste superblok werd gedolven op 7 september 2015, waarmee Dash ’s werelds eerste gedecentraliseerde autonome organisatie (DAO) werd.
Binnen 24 uur voltooide het netwerk een historische stemming en bereikte het consensus om ontwikkelaars toestemming te geven om te werken aan blokken van 2 MB, waardoor toekomstige capaciteit werd gegarandeerd. Ondertussen vermenigvuldigde de hash-snelheid zich snel doordat krachtige mininghardware werd vrijgegeven; in de loop van het jaar in 16-voudig. Het management van het team zag verdere professionalisering en de introductie van kwaliteitsborgingsmaatregelen. Bitcore en Insight met Dash-extensies zijn vrijgegeven, gebaseerd op een door het netwerk gefinancierde poging om het X11-hashing-algoritme naar JavaScript te herschrijven.
Vanaf 2017 werd Dash ondersteund op grote hardware-portefeuilles. Ook kwamen er twee software releases om de voorbereiding van PrivateSend-bedragen te optimaliseren, en om de groeiende lijst van besturingsobjecten beter te beheren met behulp van een tool genaamdSentinel. Ondertussen werden de transactievergoedingen over de hele linie met een factor 10 verlaagd en werd het eigendom van Dash Core Group overgedragen aan een trustbedrijf, waarbij het gedecentraliseerde netwerk zelf als begunstigde werd genoemd.
Benaamde devnets maken de creatie van meerdere onafhankelijke devnets mogelijk. Elke wordt geïdentificeerd door een naam die wordt vastgelegd het “genesisblok” van dat devnet, en wordt automatisch gepositioneerd op blok nummer 1.
Watchdogs zijn niet gebruikt sinds versie 0.12.2.x. In plaats daarvan is alle vereiste informatie over Sentinel opgenomen in Masternode-pings. Voor deze update is aanvullende informatie toegevoegd om ervoor te zorgen dat masternode-pings niet werden gewijzigd door een tussenliggend knooppunt. Alle berichten gerelateerd aan watchdogs zijn verwijderd. Er zijn verbeteringen aangebracht in de indeling van het ‘voorstel’-bericht en aan de validatie en verwerking van deze voorstellen, waardoor het netwerkverkeer en het CPU-gebruik zijn afgenomen. De afhandeling van triggers is ook verbeterd.
In plaats van te vereisen dat het bedrag van een PrivateSend N keer de PrivateSend transactievergoeding is, kan elke invoer die groter is dan of gelijk is aan 1 (maar minder dan of gelijk aan 4) nu als bedrag worden gebruikt. Invoer groter dan of gelijk aan 1 maar minder dan 2 wordt gebruikt als betaling met OP_RETURN-uitgangen. Dit verlaagt het aantal ingangen dat een portemonnee moet verwerken en verbetert de privacy door het elimineren van het geval waarin een gebruiker per ongeluk kleine non-private ingangen samenvoegt. Het vermindert ook de globale UTXO grootte.
De Android en iOS versies van DashWallet zijn bijgewerkt met de nieuwe richtlijnen van de huisstijl en moderniseren hiermee het uiterlijk van beide apps.
De mogelijkheid om Dash via Uphold te kopen en verkopen is ook geïntegreerd in de Android app. Hierdoor kunnen gebruikers gemakkelijker van start gaan met Dash.
De mogelijkheid om een betaling via NFC aan te vragen is toegevoegd, zodat gebruikers de betaalterminals en andere portefeuilles alleen maar hoeven aan te raken om betalingsinformatie te ontvangen.
De mogelijkheid om DashWallet op een iPad te gebruiken is toegevoegd, zodat gebruikers betalingen op hun tablets kunnen betalen en ontvangen.
Er zijn veel nieuwe talen en valuta’s toegevoegd, zodat gebruikers over de hele wereld DashWallet in hun eigen taal kunnen gebruiken en de wisselkoersen in hun lokale valuta kunnen bekijken.
Dash Core v0.13 introduceerde de automatische InstantSend, waarbij transacties met vier of minder inputs standaard worden ingesteld op InstantSend, zonder extra kosten voor gebruikers.
DeDeterministische Masternode Lijst biedt een enkele bron van waarheid voor alle transacties waarvoor validatie door masternodes nodig is, zoals InstantSend-transacties. De lijst is volledig afgeleid van on-chain data. Dit zorgt ervoor dat alle knooppunten tot dezelfde consensus komen als het gaat om de geldige lijst van masternodes.
Speciale Transacties bieden nieuwe structuren om niet-financiële transacties op de blockchain mogelijk te maken. Deze functie legt de basis voor toekomstige toepassingen van het netwerk op de 2e laag, zoals Blockchain-gebruikers.
Voorheen hadden masternodes twee sleutels voor hun masternode, te weten de eigenaarssleutel (om het eigendom te bewijzen) en beheersleutel (om de masternode te gebruiken en en om mee te stemmen). Deze tweede sleutel is nu in tweeën verdeeld: de beheersleutel en de stemsleutel, zodat dat de masternode nu ook het stemmen kan delegeren als dit gewenst is.
Gebruikers kunnen nu hun portefeuille ontgrendelen met behulp van hun vingerafdruk om gebruik van de app mogelijk te maken.
DashWallet is nu geïntegreerd met een iOS bibliotheek die verbinding mogelijk maakt met de Dash blockchain. Mogelijk kan dit in de toekomst ook door andere iOS-clienten worden gebruikt.
DashWallet kan nu bevestigen of een ontvangen transactie via InstantSend is verzonden.
De online bronnen waar de marktprijs wordt ingewonnen zijn nu gelijk voor zowel de iOS als de Android versie van de DashWallet.
Lang Levende Masternode Quorums zorgen voor een grotere schaalbaarheid van het netwerk door consensus te verbeteren en de mogelijke use cases voor het netwerk uit te breiden. Deze quorums verminderen de hoeveelheid berichten die nodig is om transacties te valideren en voorkomen tevens dat elk afzonderlijk knooppunt op het netwerk consensusgegevens in het geheugen op moet slaan totdat een transactie wordt gedolven. Afhankelijk van het beveiligingsniveau dat vereist is voor de use case, kunnen deze quorums erg groot zijn.
ChainLocks drastisch verminderen het risico van een 51% miningaanval op het netwerk. Met deze functie kan een Lang Levende Masternode Quorum een blok ondertekenen en een bericht naar het netwerk doorgeven dat aangeeft dat netwerkknooppunten blokken moeten weigeren zodra ze niet overeenkomen met het blok dat zojuist is ondertekend door het quorum. Dit maakt niet alleen het bereiken van consensus snel en eenduidig, maar maakt ook kettingreorganisaties onder dat bloknummer onmogelijk.
Gebruikers kunnen in de app Dash overmaken van een Uphold-account naar de portemonnee, en Dash kopen en verkopen via een ingebouwde webview.
Er zijn verbeteringen aangebracht om ervoor te zorgen dat de wisselkoersen overeenkomen met andere veelgebruikte Dash toepassingen.
Ondersteuning voor LLMQ’s en ChainLocks is toegevoegd aan de portemonnee, zodat gebruikers kunnen profiteren van extra beveiliging en het direct kunnen uitgeven van ontvangen betalingen.
EVONET
Dash Platform wordt uitgebracht op een openbaar testnet waarmee ontwikkelaars verbinding kunnen maken om te experimenteren met de functionaliteit.
Gebruikers kunnen verbinding maken met Evonet met behulp van de gedecentraliseerde API (DAPI); het maken van test-identiteiten en namen en het maken, updaten en verwijder van documenten.
Gebruikers kunnen de Dash Platform Naming Service (DPNS) en DashPay-contract verkennen.
Verschillende bibliotheken zullen beschikbaar komen voor ontwikkelaars, waaronder de Dash SDK, DAPI-client, DPNS-client en DPP-bibliotheken.
Een hub voor ontwikkelaars biedt nuttige documentatie en handleidingen voor de nieuwe functionaliteit.
De gebruikersinterface van DashWallet wordt verenigd in Android en iOS voor een consistentere look en feel.
DashWallet iOS introduceert een donkere modus die consistent is met de richtlijnen van Apple.
Gebruikers krijgen meer flexibiliteit bij het beheren van hun beveiligingsinstellingen.
Gebruikers hebben snel toegang tot de belangrijkste functies vanaf het startscherm.
Deze release brengt Dash up-to-date met Bitcoin v0.15.2 en profiteert van een aantal fixes en optimalisaties die Bitcoin tot die datum heeft aangebracht.
Gebruikers zullen profiteren van een bijgewerkte gebruikersinterface op de desktopportemonnee die overeenkomt met de bijgewerkte Dash branding. Dit omvat bijgewerkte kleuren en stijlen die overeenkomen met de stijlgids, het verwijderen van onnodige elementen om de gebruikersinterface op te ruimen, en het gebruik van nieuwe pictogrammen.
Deze release bevat verschillende optimalisaties die zijn gemaakt op basis van de bevindingen van de recente stresstests.
Verbeteringen aan de BIP70-functie zorgen voor een efficiëntere betaalervaring. Gebruikers/winkeliers die dit protocol implementeren, profiteren van terugbetalingsopties, de mogelijkheid om betalingen op te splitsen naar meerdere adressen, en hebben een veiligere ervaring.
De toewijzing van blokbeloningen – exclusief financieringsvoorstellen – tussen masternodes en miners verandert van een 50-50 verdeling naar een 60-40 verdeling gedurende een meerjarige overgangsperiode.
De Dash Core ervaring is nu consistenter in alle ondersteunde besturingssystemen met betrekking tot lettertypen, afbeeldingen en schermlayouts.
Het nieuwe systeem voor het herstellen van handtekeningen verzendt in eerste instantie handtekening shares naar een enkel deterministisch geselecteerde node, in plaats van handtekening shares door te geven aan elke node totdat er genoeg is om de handtekening te herstellen. Deze optimalisatie zal naar verwachting de belasting met verschillende ordes van grootte verminderen.
Proof of Service (PoSe) voor Masternodes is verbeterd door ervoor te zorgen dat een minimale protocolversie wordt uitgevoerd tijdens DKG.
Door event polling (epoll) op Linux te implementeren is de netwerkthreading geoptimaliseerd door onnodige herhaling van lussen door alle nodes te elimineren.
Deze release introduceert meer dan 650 updates van Bitcoin v0.16, evenals enkele updates van Bitcoin v0.17.
EVONET
Zorgt voor een soepele uitrol van belangrijke wijzigingen zonder ontwikkelingsnetwerken te wissen.
Platform test suite is eenrepo met geconsolideerde tests over het hele platform, waardoor het testen en bijwerken van tests veel eenvoudiger is voor alle componenten.
Hiermee kunnen ontwikkelaars ‘native binary types’ gebruiken (bijv. Buffer, ByteArray) om hun gegevens op te slaan.
Mogelijkheid tot het aanmaken of bijwerken van documenten die zijn opgeslagen op Dash Platform.
Ondersteuning voor configuratiesjablonen en meerdere knooppunten inmn-bootstrap .
Hiermee kan een gebruiker een primaire gebruikersnaam opgeven voor zijn Dash-identiteit.
DIP11 Identities enDIP12 Dash Platform Name Service zijn vrijgegeven.
De tabbladen voor verzenden en ontvangen zijn verwijderd om meer ruimte te creëren.
Labels zijn ingekort en/of aangepast om overlapping met andere UI-componenten op kleine schermen te voorkomen.
Een terugknop is toegevoegd, ondersteuning voor niet-Engelse uitdrukkingen is geïmplementeerd, waarschuwingsberichten zijn bijgewerkt
Verschillende verbeteringen en wijzigingen in het ontwerp van de kern gegevens alsmede van de downloads van masternode en quorumlijsten.
EVONET
Het DashPay Alpha programma betrekt de gemeenschap bij het testen van de DashPay portemonnee op Evonet.
Gebruikers kunnen zich registreren op het netwerk en hun gebruikersnamen delen met andere Dash gebruikers.
Gebruikers kunnen hun gebruikersnaam beter aanpassen met een weergavenaam, afbeelding en bio.
Gebruikers kunnen personen op gebruikersnaam aanvragen en een lijst maken met gebruikers waarmee ze transacties willen uitvoeren.
Gebruikers kunnen Dash uitwisselen met vrienden, familie en handelaars via een gebruikersnaam of cryptografisch adres.
TESTNET
Verbeteringen om binaire gegevens weer te geven als byte-arrays in tegenstelling tot strings, zodat gegevens efficiënter worden opgeslagen. Het JSON schema is ook uitgebreid met het trefwoord ‘byteArray’, waardoor ontwikkelaars gemakkelijker binaire eigenschappen in hun datacontracten kunnen definiëren.
Er zijn verschillende wijzigingen aangebracht in de onderliggende structuur van een identiteit op Dash Platform
Dit was een bekende bug waardoor veel ontwikkelaars moeite hadden om nodes op Evonet te starten.
Consensus tot stand brengen tussen L1- en L2-ketens op basis van de hoogte van L1.
Hierdoor kunnen identiteiten worden gefinancierd door gebruik te maken van de snelheid van Instant Send.
Opslag van data state in Merkle Trees voor gebruik door lichtgewicht clients.
Het distributiepakket (dashman, voorheen mn-bootstrap) is aanzienlijk verbeterd en zorgt voor een verbeterde gebuikerservaring.
Mogelijkheid om identiteiten te financieren zonder double spends.
Verdere verbeteringen zijn aangebracht in het synchronisatieproces om vertragingen bij het verzenden van betalingen te voorkomen.
Verbeteringen zijn aangebracht om gebruikers te helpen die een of twee woorden van hun herstelzin zijn vergeten, om toch te proberen hun portemonnee te herstellen.
De gebruikerservaring die is gekoppeld aan het vergeten van uw pincode is geïmplementeerd, er zijn updates uitgevoerd om een nieuwere Android SDK (29) te ondersteunen, crashes bij het maken van een back-up naar een bestand en het importeren van een privésleutel zijn gerepareerd.
TESTNET
Een speciaal type node dat peer-informatie levert aan andere knooppunten om de schaalbaarheid te verbeteren.
Verbeteringen om mogelijke aanvalsvectoren aan te pakken en voor schaalbaarheid op Mainnet.
Voeg meer logs toe voor meer duidelijkheid en voor het oplossen van problemen met het gedrag van Drive.
Leesbare en informatieve berichtgeving voor een juiste foutafhandeling.
TESTNET
Nieuwe quorumgrootte ter ondersteuning van speciale transacties voor assetlocks .
Verbeterde beveiliging wanneer Core interactie heeft met platform.
Meer dan 500 backports van Bitcoin Core.
TESTNET
Implementeer het tweede deel van het ontwerp betreft identiteitsfinanciering dat ChainLock proofs bevat.
Schakel deterministisch specifieke logica op het netwerk in om zo bugfixes toe te staan en om nieuwe functionaliteit in te schakelen zonder gegevens te wissen.
De lokale mn-bootstrap node ondersteunt geen chainlocks en instant locks, dus moesten een we fallback introduceren tijdens de ontwikkeling en op CI.
Verbeteringen aan Asset Lock Proofs (identiteitsfinanciering) om dubbele logica en gegevens te vermijden.Het is beter om Core te gebruiken die deze logica al heeft geïmplementeerd en alle vereiste gegevens al heeft.
Verwijder insight als afhankelijkheid en zet de functionaliteit over naar DAPI om de stabiliteit te verbeteren en redundantie te verwijderen.
We verbeteren het Dash Platform distributiepakket voortdurend (voorheen bekend als MN-bootstrap) om het handiger en betrouwbaarder te maken. Sinds deze versie beschouwen we hem volwassen genoeg om een mooie naam te krijgen en raden we je sterk aan om hem te gaan gebruiken om testnet fullnodes en masternodes uit te voeren.
Langzame builds en een gebrek aan beschikbare functionaliteit in Travis CI vertraagden het ontwikkelingsproces aanzienlijk. We zijn gemigreerd naar Github Actions en hebben enkele caching-trucs geïmplementeerd. Nieuwe CI-builds zijn veel flexibeler en werken tot 10 keer sneller.
TESTNET
Om consensus te bereiken op de platform blockchain, verifieert en ondertekent een specifieke set masternodes, validators genaamd, blokken. Tot versie 0.19 was de validatorset statisch en werd deze gehost op nodes die werden gecontroleerd door DCG. Met versie 0.20 worden Long-living Masternode Quorums (LLMQ) gebruikt om de validatorset dynamisch te verdelen en te roteren over alle masternodes. Deze aanpak verdeelt de belasting gelijkmatig en maakt het netwerk veel veiliger en betrouwbaarder.
Voorheen moesten clients volledige nodes vertrouwen en gebruiken om de geldigheid en integriteit van gegevens die van het platformnetwerk werden opgehaald te garanderen. In deze versie levert DAPI efficiënte cryptografische bewijzen naast de platform data, waardoor ‘light’ clients (bijv. mobiele wallets) veilig kunnen communiceren met het Dash Platform.
Validators gebruikten voorheen niet-geaggregeerde EdDSA-handtekeningen van de cryptografische digest om cryptografische bewijzen te leveren en netwerkconsensus te garanderen. Het aantal en de totale grootte van deze handtekeningen maakte het gebruik van bewijzen erg duur voor lichte clients. In versie 0.20 wordt het BLS drempel-ondertekeningsmechanisme gebruikt om slechts één handtekening te produceren, die mobiele portemonnees en andere light clients gemakkelijk kunnen verifiëren.
Voorheen vertrouwden zowel volledige nodes als validators op alle soorten P2P berichten en verifieerden deze. Dit betekent dat volledige nodes ook netwerkverkeer ontvingen met berichten die alleen relevant waren voor validators voor het bereiken van consensus. In de nieuwe versie ontvangen volledige nodes niet langer tussenliggende consensusberichten die door validators worden geproduceerd. In plaats daarvan produceren validators slechts één bericht met een BLS drempel-handtekening om de resulterende consensusbeslissing door te geven aan de rest van het netwerk. Dit vermindert de netwerkbelasting aanzienlijk omdat veel berichten niet langer naar volledige nodes hoeven te worden doorgestuurd, wat resulteert in 99,5% minder bandbreedtegebruik.
Dash Platform voegt nu extra metadata toe aan DAPI responsen, zoals bijvoorbeeld de huidige platform blockchain hoogte, evenals de gesynchroniseerde core blockchain hoogte waargenomen en overeengekomen door alle nodes die deelnemen aan netwerk consensus. Aangezien de platform chains en core chains asynchroon zijn, gebruikt het platform deze core hoogte om er zeker van te zijn dat alle platform nodes een deterministisch beeld hebben van de status van het core netwerk.
De nieuwe versie van het Dash Platform Protocol update de JSON Schema specificatie die wordt gebruikt om gegevenscontracten te definiëren naar de meest recente versie 2020-12, en maakt gebruik van strikte validatieregels om mogelijke gebruikersfouten te voorkomen in gegevenscontracten die naar het netwerk worden gestuurd. Ook wordt een speciale engine voor reguliere expressies gebruikt om ReDoS-aanvallen te beperken.
Vorige versies van de JS Wallet-bibliotheek ontvingen niet altijd alle aangevraagde transacties en instantlock-berichten van DAPI tijdens de synchronisatie. Dit is opgelost in versie 0.20.
De nieuwste versie van Dashmate bevat 20 fixes en verbeteringen. De belangrijkste hiervan zijn ontworpen om het opzetten van lokale ontwikkelingsnetwerken handiger en betrouwbaarder te maken, evenals prestatieverbeteringen en biedt het Windows-ondersteuning.
Integratie van de Liquid Quick Exchange om de aankoop van Dash met Visa creditcards vanuit de Dash Portemonnee mogelijk te maken.
Verbeteringen aan de deep link user experience zodat er een naadloze gebruikerservaring is tussen de nieuw uitgebrachte DashDirect-app en andere apps die dit protocol gebruiken.
Dit komt overeen met een meer algemene standaard van input/output structuur die zorgt voor betere anonimiteit.
UI verbeteringen om gebruikers beter voor te lichten over het belang van hun wachtwoordzin en tevens om te voorkomen dat gebruikers er screenshots van kunnen maken.
UI verbeteringen aan de status- en backendwijzigingen om zo de prestaties van de synchronisatie te verbeteren.
Meerdere bugs en UI verbeteringen met betrekking tot Uphold, vingerafdrukverificatie, UI navigatie en de functie voor automatisch uitloggen, enkele code herstructureringen ter voorbereiding op de DashPay upgrade.
TESTNET
Om uw vrienden en familie gemakkelijker op het Dash netwerk te krijgen, kunt u ze een uitnodiging sturen zodat ze eenvoudig een eigen gebruikersnaam kunnen aanmaken.
Als een nieuwe gebruiker die geen Dash bezit, stelt een uitnodiging hem in staat om meteen zijn gebruikersnaam te maken zonder eerst Dash te verkrijgen.
TESTNET
Implementatie van foutcodes met beschrijvende berichten zodat clientapplicaties ze beter afhandelen en zodat bugs makkelijker te onderzoeken zijn.
Op dit moment slaan we de status op in verschillende ‘merk trees’, wat overhead voor geheugen en schijf toevoegt. Het vereist ook zeer complexe logica om atomiciteit te garanderen en om cross-database transacties af te handelen die niet geïmplementeerd zijn. Er zal een nieuw, robuuster en veiliger ontwerp voor de ‘state tree’ worden gedefinieerd.
Als onderdeel van het nieuwe ontwerp van de `state tree` zal MongoDB worden vervangen.
Testnet wordt geüpdatet om nodes in meerdere datacenters op te nemen om zo real-world problemen met betrekking tot latentie en prestaties te simuleren die mogelijk de schaalbaarheid kunnen beïnvloeden.
Een verbeterd upgradeproces vermijdt de noodzaak om L2 gegevens te wissen, waardoor een veilige overgang tussen protocolversies mogelijk is.
TESTNET
De eerste in zijn soort, een op hiërarchische geauthenticeerde datastructuur (HADS) gebaseerde database die vertrouwt op een innovatief en bewijsbare gegevensopslagsysteem. Dit zal functies mogelijk maken die met geen enkele andere database die momenteel bestaat mogelijk zijn. De eerste uitgave zal secundaire indices bieden en zal cryptografische bewijzen bevatten voor de integriteit van opgeslagen inhoud.
Hierdoor kunnen contractschema’s worden gewijzigd zonder gegevensverlies of de noodzaak om een nieuw contract aan te maken. Dit is een duidelijk verschil tussen Dash en smart contract netwerken die dit niet kunnen.
Wanneer een Masternode een Dash Identiteit heeft met een saldo er aan verbonden, kan de Masternode eigenaar beloningen ontvangen voor zijn deelname aan de consensus van het Platform. Dit geeft een extra inkomstenstroom voor de eigenaren van Masternodes.
Toekomstige Dash Platform functies zullen verschillende beveiligingsniveaus vereisen. De verkoop van een zeer waardevol digitaal activum zou een zeer hoog beveiligingsniveau vereisen, terwijl het publiceren van kattenfoto’s dat waarschijnlijk niet zou vereisen. Met deze functie kunnen gebruikers de sleutels met het hoogste beveiligingsniveau op hun hardwareportemonnee bewaren, maar toch minder kritieke acties direct vanaf hun telefoon uitvoeren.
Om het ontwikkel- en bouwproces te versnellen, werd de code van Platform componenten gemigreerd van standalone repositories naar één multi-package repository. Deze mono-repository aanpak vermindert routinematige handelingen die gedaan moeten worden tijdens de ontwikkeling aanzienlijk.
Verbetert de verdeling van quorumbelasting over masternodes terwijl ook de veiligheid van InstantSend wordt uitgebreid. Dit wordtbereikt door alleen een subset van masternodes in een quorum te wijzigen tijdens de selectie van quorumleden, terwijl ook het aantal quorums wordt beperkt waarvoor elke node tegelijk wordt geselecteerd.
De voorstelvergoeding verlaagd van5 DASH naar 1 DASH om zo het governancesysteem toegankelijker te maken. Deze verandering werd aangedreven door een door een masternode goedgekeurdeproposal.
Eentabblad Governance is toegevoegd om Dash Core QT gebruikers gemakkelijker toegang te geven tot de governance proposals.
Eennieuwe speciale transactie en aspecten vanDIP23geïmplementeerd die nodig zijn om het volledig verbeterde hardfork-mechanisme te ondersteunen dat in de volgende versie van Dash Core zal worden uitgebracht.
Introductievan deterministisch verifieerbare InstantSend vergrendelingen (DIP22) om het identiteitssysteem van het platform beter te ondersteunen. Hierdoor kunnen InstantSend transacties in de toekomst worden geverifieerd in plaats van slechts kortstondig.
De voltooiing van backports voor Bitcoin Core v0.18 steeg van 83% naar 86% en die voor v0.19 steeg van 41% naar 53%. Daarnaast werden 18% en 10% van de backports voltooid voor respectievelijk v0.21 en v0.22.
Dash Core Group is een samenwerking aangegaan met een professioneel audit bedrijf om een beveiligingsaudit uit te laten voeren op de codebase van Core.
TESTNET
Verwijdering van de functionele kloof met betrekking tot de specificaties van DIP0011. Dit omvat de implementatie van een Identity Update State Transition, de introductie van verbeteringen in de beveiliging van de openbare sleutel van Identity, toegevoegde functionaliteit die nodig is voor kredietopnames en de implementatie van een bewijs van eigenaarschap van de Identity-sleutel.
Een geincentiviseerd vergoedingsmodel dat Masternodes compenseert voor verwerkings- en opslagkosten en tevens spam voorkomt. De implementatie van het nieuwe systeem voor het berekenen van vergoedingen is gebaseerd op de bewerkingen die nodig zijn om state overgangen te verwerken en de hoeveelheid gegevens die het opslaat op het Masternode-netwerk. Hoewel de berekening van de opslagvergoeding met het nieuwe model nauwkeurig is, zijn de verwerkingsvergoedingen nog steeds voor verbetering vatbaar. Restitutie van kosten voor het verwijderen van gegevens zal ook worden geïmplementeerd in de komende versie.
Een systeem waarbij vergoedingen van Platform worden verzameld in pools die na verloop van tijd worden verdeeld onder Masternodes. Dit ontwerp stimuleert Masternodes om te blijven hosten en te vermijden dat hun node offline gaat. De opslagkosten voor de state transitie worden verdeeld over elk tijdperk (~18 dagen) tot 50 jaar in de toekomst. Wanneer een nieuw tijdperk start, krijgen Masternodes beloningen voor het leveren van diensten in het vorige tijdperk.
Platform credits zijn inwisselbaar voor Dash. Masternodes zullen een gemakkelijke manier hebben om hun Platform beloningen op te nemen.
Verbeterde beveiliging en betrouwbaarheid voor synchronisatie in Dash JS portemonnee. JS Wallet wordt een echte SPV client die volledige synchronisatie en verificatie uitvoert door willekeurig gekozen Masternodes te vragen om opgevraagde gegevens terug te sturen.
Om de prestaties van de componenten van Platform te meten, wordt in deze versie een benchmark tool geïntroduceerd. Deze tool is diep geïntegreerd met de Platform blockchain runtime en biedt handige instrumenten voor ontwikkelaars om te experimenteren en de prestaties in de loop van de tijd bij te houden.
TESTNET
Het porten van DPP naar Rust maakt het veiliger en krachtiger. Het zal ook het verwerken van blocks sneller maken. Om Rust DPP te integreren in JS-componenten bieden we WASM DPP. Dit is de eerste stap naar het porten van Platform naar Rust. JS was leuk om mee te experimenteren en prototypes te maken, maar nu hebben we iets duurzamers nodig.
Een beperking die geërfd is van het Tendermint project, waarop onze consensus engine oorspronkelijk is gebaseerd, is dat block handtekeningen alleen de toestand van het vorige blok en alle state overgangen van het huidige blok ondertekenen. Om bewezen gegevens van DAPI te krijgen, moet je dus wachten op de volgende block vastlegging. Dit was niet compatibel met ons gewenste bewijs- en opslagsysteem. Deze verbetering vermindert ook de belasting aanzienlijk van het netwerk en verkort de tijd die nodig is om gegevens in te voegen in Platform, wat resulteert in een betere UX.
Momenteel kun je Dash omzetten in Platform Credits door een Identiteit aan te maken of er een op te waarderen. Credits worden voornamelijk gebruikt om de overgangskosten van de state te betalen. Masternodes krijgen hun beloningen voor het hosten van Platform in credits (block beloningen en ST vergoedingen). Met opnames kunnen Masternodes en andere Identiteiten hun credits terug converteren naar Dash.
Dash Platform Protocol (DPP) gebruikte eerder het CBOR coderingsmechanisme dat dataserialisatie zonder schema implementeert. Aangezien alle gegevens op het Platform worden opgeslagen in voorgedefinieerde structuren, is het niet nodig om ook structuurinformatie op te slaan. Door alleen waarden op te slaan, verkleinen we de grootte van geserialiseerde objecten drastisch.
Wanneer een gebruiker gegevens toevoegt aan Platform, betaalt hij voor permanente opslag. Echter, niet alle gegevens die zijn opgeslagen in Platform hoeven permanent te zijn. Gebruikers kunnen in gegevenscontracten aangeven dat documenten worden bijgewerkt of verwijderd. Door de introductie van restitutie van kosten kunnen gebruikers tegoeden terugkrijgen wanneer ze gegevens verwijderen.
Een identiteit bestaat uit verschillende gegevens zoals het saldo en een verzameling openbare sleutels die voor verschillende doeleinden en beveiligingsniveaus worden gebruikt. De nieuwe opslagimplementatie voor Identiteiten maakt het mogelijk om alleen specifieke of meerdere delen van Identiteiten bij te werken of op te halen. Dit vermindert de kosten voor state overgangen en de belasting op het netwerk.
Met een nieuwe functie sum trees voor GroveDB konden we een beschermingsmechanisme tegen inflationaire bugs op de blockchain implementeren. Deze functie voegde sums toe aan nodes van een specifiek type Merkle AVL tree. In deze tree bevatten de nodes de som van alle gehele waarden in de tree. Telkens wanneer in de sum tree een waarde wordt toegevoegd, verwijderd of bijgewerkt, wordt elke bovenliggende knoop en dus de “somwaarde” van de root bijgewerkt. Het verificatiemechanisme van krediet vergelijkt elk block van alle kredietsaldi in de opslag met de verwachte hoeveelheid kredieten in het systeem. Dit voorkomt aanvallen die nieuwe credits of tokens zouden kunnen gegenereren buiten de vooraf bepaalde voorraad.
Dit is een component om toekomstige bestuursfuncties op het Platform mogelijk te maken.
Vanaf deze versie verlopen DAPI verzoeken via HTTPS om het bouwen van toepassingen voor browsers mogelijk te maken.
Een High Performance Masternode is een nieuw type Masternode die het ondersteunen door deel te nemen aan consensus op zowel de Dash Platform chain als de Dash Payment (Core) chain. In dit systeem zou de standaard Masternode alleen de Dash chain van het betalingsverkeer blijven bedienen. HPMN’s zullen hogere vereisen dan een standaard Masternode, zoals 4000 Dash inleg en hogere prestatiespecificaties omdat ze twee chains onderhouden in plaats van slechts één.
Update van de BLS handtekening bibliotheek voor het nieuwe handtekeningschema tbv afstemming van standaarden en verbeterde beveiliging.
Backports van Bitcoin Core van BTC v0.19/v0.20/v0.21/v0.22.
Een van de doelen van de v19 Hard Fork was om het BLS schema te activeren en deze te gaan gebruiken in verschillende on-chain en p2p berichten. De motivatie achter deze verandering is de noodzaak om in lijn te zijn met IETF standaarden. Helaas werden er een paar randgevallen gemist in onze functionele tests en werden ook niet gevonden op testnet. Een activeringspoging van v19 op mainnet raakte een van deze randgevallen en mainnet stopte met het produceren van blocks. Als tussenoplossing werd v19.1.0 uitgebracht, die de start van de signalering voor de v19 Hard Fork uitstelde tot 14 juni.
Om deze problemen op te lossen, moesten we de manier waarop publieke BLS sleutels worden afgehandeld herzien, inclusief de manier waarop ze worden geserialiseerd in de interne database. Hierdoor was het niet compatibel met oudere versies van Dash Core, dus is er een database migratiepad geïmplementeerd voor alle recente versies.
Als neveneffect boodt de oplossing die geïmplementeerd was om v19 Hard Fork problemen op te lossen een manier om v19 migratie voor mobiele wallets te vereenvoudigen.
Met de vorige implementatie moesten mobiele wallets 4000+ pubkeys converteren bij de v19 fork, en dat kon gemakkelijk 10-15 seconden duren, zo niet meer. Tevens, als er na de v19 Hard Fork een masternode-lijst wordt opgevraagd uit een block van voor de v19 Hard Fork, kwamen de operatorsleutels in het BLS-schema, maar de masternode merkleroot-hash die op dat moment in Coinbase-transacties was opgeslagen, werd berekend met oudere BLS schema. Daarom was het onmogelijk om de merkleroot hash te verifiëren.
Om deze problemen op te lossen werd een nieuw veld genaamd nVersion geïntroduceerd voor elke entry in een mnlistdiff p2p-bericht. Dit veld geeft aan welk BLS schema gebruikt moet worden bij het deserialiseren van het bericht – legacy of basic. nVersie van het mnlistdiff -bericht zelf zal niet langer het schema aangeven en moet altijd op 1 worden ingesteld.
Recente wijzigingen in dsq- en dstx-berichten stelden mobiele clients die masternode-lijsten verkregen van mnlistdiff-berichten in staat om de masternode met betrekking tot deze berichten te bepalen omdat de proTxHash werd gebruikt in plaats van het masternodeOutpoint. Zodra de v19 Hard Fork geactiveerd wordt, zal de handtekening van dsq en dstx berichten gebaseerd zijn op de proTxHash wat het voor mobiele clients mogelijk moet maken om het te verifiëren.
Voorafgaand aan deze versie waren ChainLocks ofwel ingeschakeld of uitgeschakeld. Vanaf deze versie is het mogelijk om SPORK_19_CHAINLOCKS_ENABLED op een niet-nul waarde in te stellen om het ondertekenen van nieuwe ChainLocks uit te schakelen, terwijl de bekendste nog steeds afgedwongen wordt.
TESTNET
Masternode block beloningen zullen worden verdeeld tussen normale Masternodes en High-Performance Masternodes (HPMN). Het HPMN gedeelte wordt verzameld in credits en na verloop van tijd verdeeld tussen nodes als stimulans om Platform te bedienen. Nodes krijgen elke Epoch (~18 dagen) beloningen als ze diensten leveren (nieuwe Platform blocks voorstellen).
Dit is de toevoeging van meer eindige verwerkingskosten en de aanpassing/herziening van bestaande cijfers om ervoor te zorgen dat alle kosten voldoende worden gedekt en de vergoedingen juist worden berekend.
Testen en verbeteren van protocol upgrade processen om de implementatie van belangrijke wijzigingen voor verschillende niveaus van het systeem te optimaliseren.
Dash Platform voorbereiden voor het opslaan en onderhouden van non-fungible tokens. Met gebruik van het opslagmechanisme van het platform, zorgen voor een manier om NFT-gegevens ook op de ketting te bewaren.
Het implementeren van metrics voor Platformcomponenten die nodig zijn voor netwerkbewaking, inclusief verdere stresstests.
Beveiligingsexperimenten en tests door DCG.
Stresstests worden uitgevoerd met een stresstestsuite op een speciaal netwerk.
Vóór DashCore v20.0 werd 10% van de block beloning gereserveerd voor de Dash DAO schatkist, die ontwikkeling en andere netwerkinspanningen financiert. Zodra de DashCore v20.0 hard fork van kracht wordt op het mainnet, zal de toewijzing van het treasurysysteem toenemen tot 20% van de block beloning om aan te sluiten bij devoorstel goedgekeurd in september. Miner and masternode rewards will change to 20% and 60% respectively upon activation of the change.
Sentinel functionaliteit is direct geïntegreerd in v20.0, dus het is niet langer nodig dat masternodes de standalone Sentinel applicatie uitvoeren. Verschillende RPC-opdrachten zijn bijgewerkt om conflicten tussen DashCore v20.0 en bestaande Sentinel installaties te voorkomen. Het wordt aanbevolen om Sentinel te verwijderen of uit te schakelen na het updaten van masternodes naar v20.0.
Introductie van een nieuw type speciale transactie, “Asset lock”, ter ondersteuning van financiering platformidentiteiten
De masternode reward reallocation (MN_RR) hard fork, voor het eerst opgenomen in Dash Core v20, wordt geactiveerd nadat v21 door masternodes is geaccepteerd. Deze hard fork schakelt de belangrijkste functie in die in deze release is opgenomen, namelijk de Masternode Reward Location Reallocation. De activering zal ook de lancering van de Dash Evolution Platform Chain initiëren.
Zodra de MN_RR hard fork geactiveerd is, wordt een deel van de masternode beloning in de coinbase verplaatst naar de Credit Pool (d.w.z. naar Platform) elke keer dat een blok wordt gemined. Evonodes ontvangen dan één beloning per betalingscyclus op de Core chain en geen beloningen van vier opeenvolgende blocks meer zoals in v19/v20. De rest van de evonode betalingen wordt door Platform uit de credit pool gedistribueerd. Dit is om evonodes te stimuleren om te upgraden naar Platform, omdat alleen nodes die Platform uitvoeren deze beloning kunnen ontvangen.
Dash introduceerde sporks in 2014 als een manier om soepelere upgrades te bieden dan hard forks. Hoewel deze innovatie nuttig is geweest, is het netwerk volwassen geworden tot een punt waarop ze niet langer nodig zijn op mainnet vanwege functies zoals verbeterde hard forks. Bijgevolg verbetert deze versie alle sporks op mainnet. Sporks blijven van kracht op alle devnets en op testnet. Op mainnet zijn de waarden van alle sporks echter hardcoded op 0 of 1 voor de SPORK_21_QUORUM_ALL_CONNECTED spork. Deze waarden komen overeen met de actieve waarden die historisch werden gebruikt op mainnet, dus er is geen verandering in de functionaliteit van het netwerk.
MAINNET
Diverse netwerk experimenten, herzien van codebase, mogelijke bug fixes, voorbereidingen voor mainnet release, in nauwe samenwerking met Dash Community (gebruik makend van de community projecten die Dash Platform gebruiken).
De eerste mainnet uitrol van Platform wordt gebundeld met de uitrol van Core v0.21. Het Dash Netwerk wordt aangemoedigd om hun upgrades zo snel mogelijk te voltooien.
Dit lost een probleem op bij het opnieuw ondertekenen van EHF, waarbij masternodes een EHF niet opnieuw zouden ondertekenen als dat al eerder in een EHF ondertekeningsquorum was. As a result, de drempelwaarde kon niet worden gehaald.
MAINNET
Deze versies moesten een succesvolle activering garanderen onder specifieke omstandigheden die werden waargenomen. Dit was een verplichte upgrade voor alle Evonode eigenaren. In tegenstelling tot andere activeringen zal deze versie de Platform chain activeren zodra 67 Evonodes in het Genesis-quorum zijn geüpgraded en correct zijn geconfigureerd.
Er is geen enkele persoon of organisatie die controle heeft over het moment waarop het Platformprotocol wordt geactiveerd. Het wordt geactiveerd nadat een bepaald aantal Evonode eigenaren de upgrade heeft uitgevoerd.
Het maximale aantal gecomprimeerde blockheaders dat in één keer kan worden aangevraagd, is verhoogd van 2000 naar 8000. Deze wijziging zou de synchronisatietijd van de blockchain voor clients die gecomprimeerde blockheaders gebruiken moeten verminderen.
Om het bandbreedtegebruik te verminderen, wordt het DSQ-bericht nu uitgezonden via het inventarissysteem in plaats van naar alle verbonden peers te relayen. Hoewel dit de bandbreedtebehoeften voor alle knopen zou moeten verminderen, zal het effect het meest merkbaar zijn op sterk verbonden masternodes.
De verwerking van platform opnames is bijgewerkt om opnametransacties van meer platformquorums te accepteren. Voorheen werden transacties alleen geaccepteerd als ze waren ondertekend door een van de eerste twee actieve quorums. Met deze wijziging kunnen opnames nu worden ondertekend door elk van de geldige quorums.
Om de censuurbestendigheid te verbeteren en de risico’s van netwerkpartitionering te verminderen, streven Dash Core nodes die verbonden zijn met het onion-netwerk er nu naar om minimaal twee uitgaande onion-verbindingen te onderhouden en deze verbindingen te beschermen tegen verwijdering. Door het lage percentage van doorgegeven adressen die onion-nodes zijn, was het vaak het geval dat, tenzij je `onlynet=onion` opgeeft, een node zelden, zo niet nooit, een uitgaande onion-verbinding zou tot stand brengen. Deze wijziging zorgt ervoor dat knopen die toegang hebben tot het onion-netwerk een paar onion-verbindingen behouden. Hierdoor zullen netwerkberichten blijven verspreiden over het netwerk, zelfs als niet-onion IPv4-verkeer wordt geblokkeerd, wat het risico op partitionering vermindert. Opmerking: alleen nodes die verbonden zijn met het onion-netwerk worden door deze update beïnvloed.
Met de introductie van de mobiele portemonnees van DashPay kunnen gebruikers upgraden vanuit Dash Wallet en eenvoudig gebruikersnamen aanmaken, betalingen voor gebruikersnamen doen en Maternode eigenaren laten stemmen over verzoeken voor gebruikersnamen.
Hiermee wordt het Platform PoSe systeem ondersteund om ervoor te zorgen dat Evonodes die onvoldoende service aan het netwerk leveren, worden verbannen. Zo wordt de eigenaar gestimuleerd om het onderliggende probleem aan te pakken, zodat ze effectief kunnen bijdragen en beloningen kunnen blijven verdienen.
Maakt het mogelijk om p2p verbindingen te versleutelen met vrijwel geen overhead.
Om nieuwe nodes te helpen sneller in sync te komen met de het huidige block, zal state sync de status van andere nodes repliceren in plaats van de hele blockchain te verwerken.
Hiermee wordt er voor gezorgd dat Evonodes die onvoldoende service aan het netwerk leveren, worden verbannen. Zo wordt de eigenaar gestimuleerd om het onderliggende probleem aan te pakken, zodat ze effectief kunnen bijdragen en beloningen kunnen blijven verdienen.
Het IBC-protocol biedt een toestemmingsvrije manier voor het doorsturen van gegevenspakketten tussen blockchains. In tegenstelling tot de meeste ’trusted’ overbruggingstechnologieën is de veiligheid van IBC beperkt tot de veiligheid van de deelnemende ketens. De IBC-applicatielaag kan worden gebruikt om een breed scala aan ketenoverkoepelende applicaties te bouwen, inclusief maar niet beperkt tot tokenoverdrachten, interchain accounts (delegate calls tussen twee ketens), niet-fungible tokenoverdrachten en oracle data feeds.