Waar moet je een herstelzin van een wallet intypen?
Een herstelzin hoort in de eigen herstelstroom van de wallet, niet in een supportchat of een geleende virtuele machine. Volg waar het geheim wordt ingevoerd en wie kan meekijken.
Het herstellen van een wallet lijkt een tekstinvoertaak en is in werkelijkheid een taak voor sleutelbewaring. De zin die je typt is geen wachtwoord dat een server controleert; het is de invoer van een afleidingsfunctie die dezelfde privésleutels opnieuw opbouwt die de wallet had voordat hij verloren ging. Alles wat op dat moment de toetsaanslagen, het klembord of het procesgeheugen kan lezen, kan ze ook opnieuw opbouwen. Voorbereiding betekent daarom bepalen waar het geheim mag bestaan, voordat het bestaat.
Volg de zin van het medium tot de afgeleide sleutel
Een mnemotechniek in BIP-39-stijl wordt genormaliseerd, uitgerekt met PBKDF2-HMAC-SHA512 met een optionele wachtwoordzin als zout, en omgezet in een seed waaruit de wallet sleutels afleidt. Daaruit volgen direct twee gevolgen. Ten eerste is de zin een blijvende bevoegdheid en geen sessie-aanmeldgegeven, dus er is geen herstel aan de serverkant als hij uitlekt. Ten tweede doet de optionele wachtwoordzin mee aan de afleiding, en daarom betekent een herstel dat een lege wallet lijkt op te leveren meestal dat de verkeerde wachtwoordzin is ingevoerd, niet de verkeerde zin.
Elke stap na de normalisatie gebeurt binnen het proces waarin je hebt getypt. Dat is het deel dat de meeste herstelhandleidingen overslaan: het blootstellingsoppervlak is het invoerpad en het geheugen van dat proces, niet het netwerk tussen jou en een website.
Welk proces legitiem is, hangt van de wallet af. Een hardwareapparaat heeft zijn eigen herstelinterface op het apparaat; een softwarewallet heeft een gedocumenteerd herstelscherm in een geverifieerde build. Geen van beide is een supportchat, en geen van beide is een pagina die aanbiedt om een zin voor je te controleren.
Een gastsysteem erft het vertrouwen van zijn host
Een virtuele machine voelt als een aparte computer en is geen onafhankelijke vertrouwensgrens. De NIST-richtlijn over volledige virtualisatie beschrijft de afhankelijkheid direct: de beveiliging van de gast hangt af van de host en de hypervisor daaronder, en gedeelde bronnen zoals klembord- of mapintegratie verbreden het kanaal tussen hen. Een gast installeren op een machine die je al wantrouwt, maakt geen nieuwe invoerweg.
| Control | What it addresses | What it leaves exposed |
|---|---|---|
| Verified wallet build | Running the code the publisher actually signed | Everything the running process can read once it starts |
| Live-boot environment, no persistent disk | Secrets left in swap, caches or a saved session | The firmware, the keyboard and the display path |
| Full-disk encryption on the host | Recovery material at rest after shutdown | The same material while the machine is unlocked |
| Tunnel to a trusted exit | Who can observe traffic in transit | Local processes, screen capture and input hooks |
Praktische lekken volgen dezelfde lijn. Een gedeeld klembord draagt alles wat je hebt gekopieerd. Momentopnamen en bestanden met een opgeschorte status kunnen geheugen vastleggen dat de zin bevat. Gasttoevoegingen met toegang tot het bestandssysteem van de host geven de gast zicht op de paden van de host en de host zicht op de paden van de gast. Niets hiervan is een exotische aanval; het zijn functies die de virtuele machine handig maken.
De eerlijke conclusie is smaller dan «een virtuele machine is onveilig». Een virtuele machine kan de juiste container voor het werk zijn wanneer de host de machine is die je vertrouwt en je de deelfuncties hebt verwijderd. Een host die je niet vertrouwt, kan hij niet redden.
Wat een versleutelde tunnel feitelijk dekt
Een VPN beschermt pakketten tussen twee eindpunten. Hij heeft geen mening over wie aan weerszijden het scherm leest, en hij houdt een lokaal proces er niet van tegen te observeren wat je in een venster typt. Een tunnel is dus relevant wanneer de zorg het pad is, en irrelevant wanneer de zorg de host is.
Dit onderscheid is belangrijk omdat de twee samen worden verkocht. «Versleutelde verbinding» beschrijft het transport; «vertrouwd apparaat» beschrijft het eindpunt. Een herstelprocedure vereist voor beide een afzonderlijk antwoord, en slechts één daarvan kan een netwerkdienst geven.
Het verifiëren van wat je hebt gedownload, hoort bij dezelfde familie van eindpuntvragen. Een hashcontrole en een handtekeningcontrole stellen vast dat het archief overeenkomt met wat de uitgever heeft vrijgegeven; over de machine die het gaat uitvoeren, zeggen ze niets.
sha256sum -c SHA256SUMS.txt
gpg --verify SHA256SUMS.txt.sig SHA256SUMS.txtBereid de omgeving voor voordat het materiaal verschijnt
De volgorde is belangrijker dan de gereedschappen. Bepaal de host, verwijder de deelfuncties, ontkoppel wat niet verbonden hoeft te zijn, en haal pas daarna het herstelrecord uit zijn opslag. Het in de omgekeerde volgorde doen betekent dat het geheim al in het geheugen staat terwijl je nog beslist waar het heen moet.
Houd het geheim daarna in de stroom die de walletfabrikant documenteert. Voer het in de eigen herstelinterface van de wallet in, op het netwerk dat de wallet verwacht, en keur alleen handelingen goed die je kunt verifiëren op het vertrouwde scherm dat de wallet biedt. Een bekend bureaubladvenster is geen bewijs dat het apparaat autoriseert wat het venster beweert.
Als je blootstelling vermoedt, stop dan met het invoeren van materiaal op dat systeem en ga naar een omgeving die je onafhankelijk kunt vertrouwen. De virtuele machine sluiten, een VPN-wachtwoord wijzigen of de walletapp opnieuw installeren roteert de bevoegdheid van de wallet niet; alleen het verplaatsen van de bezittingen naar een nieuwe wallet met nieuw gegenereerde sleutels doet dat. Houd de ruwe zin buiten elk supportgesprek terwijl je de walletspecifieke stappen verzamelt, want geen enkel legitiem supportproces heeft hem nodig. Die ene regel voorkomt meer verlies dan welke hardeningchecklist dan ook.