Statusupdate – 18 augustus 2021
Haven 2.0 markeert een belangrijke herziening van de kerncode van Haven en een stapsgewijze verandering in het project. Het bevat ook substantiële beveiligingsupdates in de vorm van nieuwe mint- en burn-validatie.
Deze release markeert ook een belangrijke mijlpaal voor het project. Met een aanzienlijk verbeterd protocol zijn de vertragingen van de hack achter de rug en profiteren we van nieuwe processen en procedures. Op dit punt kan onze focus weer verschuiven naar de groei van het project, met samenwerkingen zoals Thorchain, exchanges en wallets van derden.
Haven 2.0 zal live gaan in de volgende fork, die zal worden gepland zodra alle noodzakelijke ontwikkeling is voltooid en gecontroleerd. Met deze release kunnen in-vault-conversies ook opnieuw worden ingeschakeld.
Houd er rekening mee dat we geen risico's nemen en geen middel onbeproefd laten. Als gevolg hiervan kunnen deze stappen worden gewijzigd terwijl we werken aan de release.
Ontwikkelingsplan
De eerste versie van de Haven 2.0-code is klaar en is al een aantal weken in omloop. Dit omvat de nieuwe mint- en burn-validatie. Deze volledig functionele proof of concept vereist nog 3 stappen voordat het kan doorgaan naar de definitieve audit en lancering. Deze zijn allemaal aan de gang.
- Robuuste penetratie-audit
- Penetratietesten zijn een continu proces, waarbij alle nieuwe en bestaande code wordt gecontroleerd op mogelijke aanvalsvectoren. Het team heeft actief samengewerkt met een Monero-specialist om kwetsbaarheden en kansen te identificeren om de code te verbeteren. Deze intensieve samenwerking heeft het project de nodige vijandige denkwijze en bijkomende technische kennis gebracht. Dit heeft ons al in staat gesteld om een aantal tastbare verbeteringen aan de codebasis aan te brengen, met meer gepland.
- Penetratietesten zijn een continu proces, waarbij alle nieuwe en bestaande code wordt gecontroleerd op mogelijke aanvalsvectoren. Het team heeft actief samengewerkt met een Monero-specialist om kwetsbaarheden en kansen te identificeren om de code te verbeteren. Deze intensieve samenwerking heeft het project de nodige vijandige denkwijze en bijkomende technische kennis gebracht. Dit heeft ons al in staat gesteld om een aantal tastbare verbeteringen aan de codebasis aan te brengen, met meer gepland.
- Audit mint en burn validatie logica
- Naast het originele bewijs van waarde hebben we een nieuwe mint- en burn-validatielogica ontworpen. Dit werkt door extra gegevens op te nemen in conversietransacties om te garanderen dat de door de afzender opgegeven mint- en burn-waarden correct zijn. Dit elimineert elke mogelijkheid van een herhaling van June's exploits. Gezien de complexiteit van de aanvullende verificatie willen we zeker weten dat de logica klopt. Wij hebben een volledige schriftelijke beschrijving van het ontwerp aan de accountants voorgelegd; Monero-wiskundespecialisten met diepgaande kennis van de Monero-codebase. We zullen blijven samenwerken met dit team en anderen totdat we 100% zeker weten dat de aanpak veilig is.
- Naast het originele bewijs van waarde hebben we een nieuwe mint- en burn-validatielogica ontworpen. Dit werkt door extra gegevens op te nemen in conversietransacties om te garanderen dat de door de afzender opgegeven mint- en burn-waarden correct zijn. Dit elimineert elke mogelijkheid van een herhaling van June's exploits. Gezien de complexiteit van de aanvullende verificatie willen we zeker weten dat de logica klopt. Wij hebben een volledige schriftelijke beschrijving van het ontwerp aan de accountants voorgelegd; Monero-wiskundespecialisten met diepgaande kennis van de Monero-codebase. We zullen blijven samenwerken met dit team en anderen totdat we 100% zeker weten dat de aanpak veilig is.
- Optimaliseer de codebasis
- Parallel aan de eerste twee punten wordt er gewerkt aan een herziening van de gehele codebase. Om de code gemakkelijker leesbaar en beheersbaar te maken, zijn we de daemon en portefeuilles aan het opruimen. Dit is belangrijk omdat het de code robuuster en efficiënter maakt, wat voordelen op het gebied van beveiliging en stabiliteit oplevert. Het zal het project ook toegankelijker maken voor nieuwe ontwikkelaars en auditors.
Eindcontrole
Zodra alle bovenstaande stappen zijn voltooid, samen met alle bijbehorende codewijzigingen en testen (op testnet en nieuw stagenet), kan de definitieve en officiële audit worden uitgevoerd. Het slagen voor deze audit is de laatste stap voordat u de vork plant.
We danken de community voor hun geduld terwijl deze updates worden uitgevoerd. We willen net als ieder ander deze code zo snel mogelijk lanceren.