Nauwkeurigheid van oplagegegevens
Achtergrondinformatie over het bijhouden van leveringen
Omdat het Haven-protocol een privacyketen is, kunnen circulerende aanbodcijfers alleen worden afgeleid uit een specifiek metadataveld tegen elke conversie. Dit veld is bewust zichtbaar zodat de hoeveelheid van elk activum kan worden berekend.
Deze gegevens zijn toegankelijk via de RPC, waardoor platforms van derden, zoals Havex, toegang hebben tot conversiegegevens. Het wordt ook gebruikt om de aanbodpagina bij te werken: https://explorer.havenprotocol.org/supply
De feitelijke aanbodberekening is gebaseerd op een eenvoudig lopend totaal, waarbij de metadatawaarde wordt opgeteld of afgetrokken van een telling van elk activum wanneer ze worden geslagen of verbrand.
Deze aanpak is afhankelijk van het feit dat de metadata die voor elke transactie zijn geregistreerd, correct zijn.
Een bekende discrepantie in leveringsgegevens
De Haven 2.0-update (november 2021) heeft extra validatielagen geïmplementeerd, zodat het metadataveld van de conversie altijd aanwezig en correct is. Deze update is uitgevoerd na de exploit van juni 2021, waarbij enkele kwaadaardige conversies werden voltooid zonder metadata. De meeste activa die tijdens de hack werden geslagen, werden verwijderd in de daaropvolgende roll-back, maar een klein deel bleef, dus er zijn enkele activa in omloop die niet zichtbaar zijn in het aanbod.
Zie het post-hackrapport voor precieze details:
Nieuwe aanbodberekening
Hoewel het mogelijk was om de geschatte waarde te bepalen van de fondsen die werden geslagen in de xJPY naar xBTC-hack, was het onmogelijk om daaropvolgende conversies te volgen, dus we kunnen deze discrepantie niet verhelpen met een eenvoudige aanpassing.
Om de nauwkeurigheid van de leveringsgegevens te vergroten, is een patch toegepast op de logica die de circulatie berekent om de teller opnieuw in te stellen wanneer de waarde nul bereikt. Vóór deze update kon het aanbod een negatief cijfer laten zien, omdat munten van de exploit de teller scheeftrekken. De nieuwe logica in deze patch kalibreert effectief het aanbod opnieuw elke keer dat het aanbod voor een activum onder nul komt. De telling wordt elke keer nauwkeuriger door de berekening opnieuw in te stellen.
Deze update is hier in een patch beschikbaar: -
https://github.com/haven-protocol-org/haven-main/commit/fdad914689b4935a36dff574f6afd00bdf112ab2
Deze update is toegepast op het explorer-knooppunt (30 maart 2022) - dus de bevoorradingscijfers op explorer.havenprotocol.org zijn opgenomen in deze herkalibratie.