Waarom een Nano flight log kan worden vertrouwd: ondertekend, verzegeld, verifieerbaar
Waarom een Nano flight log vertrouwd kan worden
Hoe onze Nano altimeter elke log die hij opslaat versegelt, wat dat voorkomt, en hoe een club of wedstrijd logs kan accepteren die later per e-mail worden verzonden zonder zich zorgen te maken over bewerking.
Hoe kunnen wedstrijden ervoor zorgen dat altimeter logs correct, onbewerkt en betrouwbaar zijn?
Op een wedstrijddag betekent dat twee dingen: niemand kan stilletjes een log na het landen bewerken, en niemand kan opdagen met een log die ergens anders is opgenomen. We hebben de Nano zo gebouwd dat beide uit het bestand zelf kunnen worden aangetoond, zonder vertrouwen in de persoon die het overhandigt. Het systeem stelt ook verificatie via een publieke sleutel mogelijk, rechtstreeks of via de tools op onze website.
Drie standaard cryptografische bouwstenen
De log wordt beschermd door dezelfde drie bouwstenen die online bankieren, software-updates en SSH beveiligen, op dezelfde manier als daar. Niets hier is door ons uitgevonden, en dat is precies het punt: het systeem is al tientallen jaren openbaar bestudeerd.
- Een vingerafdruk van het bestand. Terwijl de Nano een flight log schrijft, voert hij een SHA-256 hash uit over elke byte: elk monster en elk headerveld, inclusief de apogee, de tijden, de instellingen, het serienummer, het flightnummer en de apparaat- en concurrentlabels. Het resultaat is een 32-byte vingerafdruk. Wijzig één cijfer ergens in het bestand en de vingerafdruk is een volledig ander getal.
- Een handtekening over de vingerafdruk. De Nano ondertekent die vingerafdruk vervolgens met Ed25519, een public-key handtekeningschema, met behulp van een privésleutel die alleen in het apparaat bestaat. De handtekening wordt in de log geschreven naast de vingerafdruk. Iedereen die de bijbehorende openbare sleutel bezit, kan controleren dat de handtekening bij de vingerafdruk past; niemand zonder de privésleutel kan er een maken.
- Versleutelde firmware. Het programma van de Nano is opgeslagen op de chip onder AES-256 en de chip voert alleen versleutelde code uit. Daar woont de privésleutel. Deze kan niet van het apparaat worden uitgelezen, en een gewijzigd programma kan niet in plaats daarvan worden geladen.

Wat met elke log meegaat: de vingerafdruk van de inhoud en de handtekening erover. De privésleutel die de handtekening maakt, bevindt zich op de chip en nergens anders; de openbare sleutel die deze controleert, kan aan iedereen worden gegeven.
Wat dat voorkomt
Bewerk een log, handmatig of met een programma, en de vingerafdruk verandert. De handtekening in het bestand is gemaakt over de oude vingerafdruk, dus deze past niet meer, en er is geen manier om een nieuwe te maken zonder de privésleutel. De website verwerpt het bestand en zegt waarom. Het maakt niet uit hoe klein de bewerking is, of het nu in de gegevens, de header of de instellingen staat. Het is hetzelfde antwoord voor een log die nooit door een Nano is gemaakt: een bestand dat op een computer is uitgevonden, heeft geen geldige handtekening mee te voeren. Zelfs wij kunnen geen vervalste log op de website vervalsen, en de privésleutels worden op geen enkele manier op servers ergens opgeslagen.

Één meter bij een apogee opgeteld. De vingerafdruk is een ander getal, de handtekening die over het origineel is gemaakt, past er niet meer bij, en de log wordt geweigerd.
Omdat het serienummer is opgenomen in wat ondertekend is, kan een log niet van de ene altimeter naar de andere worden verplaatst. En omdat de ruwe barometrische hoogte in een eigen kolom wordt gehouden, exact zoals de sensor het heeft opgenomen, kan een official het getal waarvoor de regels zijn geschreven, rechtstreeks uit het bestand aflezen, naast het verwerkte.
Hoe sterk is het, eerlijk gezegd
Er is geen bekende manier om AES-256, SHA-256 of Ed25519 met computers die bestaan of voorzienbaar zijn te breken. Het brute forcen van een van deze is niet een kwestie van lang wachten, het gaat voorbij de beschikbare energie en tijd, en daarom zijn zij de standaardkeuzes overal waar veiligheid belangrijk is. De wiskunde is niet de weg naar binnen.
Voor elk praktisch doel is een Nano log aan te merken als manipulatiebestendig en kan deze door iedereen met de openbare sleutel worden geverifieerd, zonder ons, onze server of de persoon die het heeft verzonden te vertrouwen.
Een wedstrijddag
De handtekening bewijst dat een log niet is gewijzigd sinds de Nano deze heeft opgeslagen. Dit bewijst op zich niet wanneer de vlucht plaatsvond, en een vooraf opgenomen vlucht van vorige maand is de andere manier om vals te spelen. De Nano heeft voor precies dit doel een concurrentlabel in de instellingen.
De organisator geeft elke concurrent op de dag een unieke code; de concurrent voert deze in hun Nano in voordat deze vliegt, wat slechts enkele seconden via USB duurt; en vanaf dat moment draagt elke log die die Nano opslaat die code in de ondertekende header. Een vlucht die is opgenomen voordat de code werd afgegeven, kan deze niet bevatten, en een code kan daarna niet worden toegevoegd zonder de handtekening te verbreken.

Afgeven, invoeren, vliegen, verzenden, verifiëren. Zodra de code in de ondertekende header staat, kan de log een week later per e-mail worden verzonden en bewijst deze nog steeds dat deze authentiek is en op de dag is gevlogen.
Dit neemt ook de druk van de dag zelf af. Logs hoeven niet onder toezicht te worden gedownload of op het veld te worden verzameld. Ze kunnen die avond worden geüpload, naar de organisator per e-mail worden verzonden, of worden bijgehouden en in met een claim worden ingediend, en de controle geeft hetzelfde antwoord wanneer deze ook wordt uitgevoerd. Het apparaatlabel, het flightnummer en het serienummer gaan ermee mee, zodat een organisator een log aan een inschrijving kan koppelen zonder enig papierwerk voorbij de code die zij hebben afgegeven.
Dit verandert niets aan wat de Nano opneemt. De ruwe kolom blijft onaangeroerd, de verwerkte kolom zegt wat de filters deden, en de handtekening zegt dat niemand anders iets heeft gedaan. Dat is het hele idee.
U kunt logs verifiëren via ons website online tool of zelfs ook met ons API systeem.
Het online verificatieprogramma
Gebruik deze tool voor het verifiëren van logs en het gedetailleerd bekijken ervan op onze website.
Het API verificatieprogramma
Gebruik deze tool om massaal te verifiëren of logs van uw eigen website of software automatisch te verifiëren met gemak.
Openbare verificatiesleutel
Voor offline gebruik in wedstrijdeneigen software kunt u contact met ons opnemen om de openbare sleutel aan te vragen, hoewel het veilig is om uit te geven, bieden we het alleen geval per geval aan, en het wordt niet openbaar geplaatst.


