Sikkerhed + ægthed

Sådan kan du stole på McGesund-QR-koder

På en McGesund-QR-kode står vigtige oplysninger: hvilket firma den promoverer, om det er en anmeldelses-kode, en produkt-kode eller en signal-kode, og hvor længe den er gyldig. For at ingen kan efterligne, ombytte eller forfalske en QR-kode, er hver kode kryptografisk underskrevet — som et segl, som enhver smartphone kan kontrollere. Højere niveauer supplerer seglet med en anden, kvanteresistent underskrift — valgfrit endda med to uafhængige metoder parallelt.

Denne side forklarer, hvordan det fungerer — trin for trin, uden fagsprog.

Badges forklaret

Hver anmeldelse på McGesund kan bære et eller flere badges. De viser med det samme, hvordan anmeldelsen er kommet i stand, og hvad dens troværdighed bygger på.

  • Geo-verificeret

    Anmeldelsen blev afgivet direkte på stedet via QR-kode — smartphonens GPS lå inden for firmaets stedradius.

  • Display-verificeret

    Anmeldelsen kom ind via modtagelsesdisplayet — roterende engangs-QR-kode med sekunders TTL, kan ikke fotograferes, kan ikke indløses på afstand. Masseindsamlinger er teknisk begrænset. Mere om displayet →

  • Kvantesigneret

    Ud over den klassiske signatur er denne anmeldelse signeret med en kvanteresistent algoritme (Falcon eller ML-DSA). Den kan derfor stadig verificeres, når klassiske algoritmer bliver sårbare over for kvantecomputere.

  • Blockchain-forankret

    Signaturnøglen til denne anmeldelse er forankret i Bitcoin-blockchainen via OpenTimestamps. Derved kan det uafhængigt af McGesund dokumenteres, at nøglen allerede fandtes på forankringstidspunktet.

  • McGesund-verificeret

    Anmeldelsen blev manuelt kontrolleret og frigivet af McGesund-teamet — f.eks. efter afklaring af et identitetsbevis via en supportsag.

  • Under kontrol

    Anmeldelsen ligger til kontrol hos McGesund-teamet — f.eks. fordi geo-kontrollen var uden for radius, eller profilen endnu ikke har en verificeret indehaver. Indholdet forbliver skjult, indtil det frigives.

  • Uden krypto-signatur

    Anmeldelsen stammer fra tiden før vores Envelope-system (importeret ældre bestand). Dens ægthed kan teknisk ikke kontrolleres efterfølgende, og den tæller derfor ikke med i det samlede gennemsnit.

  • Signaturkontrol mislykkedes

    Den kryptografiske kontrol af anmeldelsen mislykkedes — f.eks. på grund af manipulerede byte, en tilbagekaldt nøgle eller en brudt Envelope. Anmeldelsen tæller ikke med i det samlede gennemsnit.

Flere badges kan kombineres — f.eks. „Geo-verificeret“ + „Display-verificeret“ på samme anmeldelse. Filtrene i kataloget og på firmaprofiler bruger de samme begreber.

Hvad ligger der i QR-koden

Inde i QR-koden ligger en lille, signeret datapakke. Den indeholder:

  • hvilket firma koden er til,
  • om det er en profil-kode, en produkt-kode eller en signal-kode,
  • hvornår den blev udstedt, og hvornår den udløber,
  • en underskrift, som enhver smartphone kan bruge til at kontrollere, at dataene kommer uændret fra McGesund.

QR-koden er dermed godt nok læsbar — men enhver ændring af indholdet ville ødelægge underskriften og blive afsløret ved første scanning.

Sådan kontrolleres en anmeldelse i browseren

På hver anmeldelse i en firmaprofil er der en knap „Kontrollér ægthed“. Den, der klikker på den, ser trin for trin fire grønne flueben:

  1. Underskrift gyldig. Anmeldelsen blev underskrevet med en hemmelig nøgle, der tilhører McGesund — underskriften passer til den offentlige modpart.
  2. Indhold uændret siden anmeldelsen blev afgivet. Den oprindelige tekst blev ikke ændret i hemmelighed efter afsendelsen.
  3. Post-kvante-underskrift gyldig. Ved højere sikkerhedsniveauer kontrolleres desuden en eller to kvantecomputer-resistente metoder (Falcon og/eller ML-DSA-87). På dobbelt-PQ-niveauet skal hver af de to underskrifter være gyldig for sig.
  4. Nøgle forankret i Bitcoin-blockchain. Den nøgle, der blev brugt til underskriften, blev påviseligt registreret før en bestemt dato — se næste afsnit.

Vigtigt: Kontrollen kører fuldstændigt i den besøgendes browser, ikke på McGesund-servere. Heller ikke vi kan påvirke resultatet.

Klassisk og kvanteresistent — kombineret

Hver QR-kode bærer en klassisk Ed25519-underskrift — hurtig, kompakt, etableret verden over. Den er indlejret i selve QR-koden og kan kontrolleres af enhver enhed direkte efter scanningen, også uden internet.

Højere niveauer supplerer denne underskrift med en eller to yderligere post-kvante-underskrifter — metoder, der også er sikre mod fremtidige kvantecomputere. Vi tilbyder to matematisk uafhængige metoder: Falcon (FN-DSA, i to størrelser, 512 og 1024) og ML-DSA-87 (NIST-primæranbefaling fra FIPS 204). For at QR-koden fortsat kan scannes skarpt, ligger disse underskrifter ikke i selve QR-koden, men krypteret i McGesund-backenden. Når du klikker på „Kontrollér ægthed“, indlæser din browser dem og verificerer dem lokalt.

På det højeste niveau („dobbelt-PQ“) bruges begge metoder parallelt. Dermed er anmeldelsen fortsat kvanteresistent, selv hvis en af de to metoder på et tidspunkt skulle blive brudt — ingen enkelt-algoritme-risiko.

Praktisk fordel: Du er allerede i dag rustet til i overmorgen — og QR-koden forbliver overalt lige så lille og lige så nem at scanne.

NiveauDet, der kontrolleres
Standard
Ed25519
Klassisk underskrift
Post-kvante (Falcon-512)
Ed25519 + Falcon-512
Klassisk + kvanteresistent (NIST Level 1)
Post-kvante Max (Falcon-1024)
Ed25519 + Falcon-1024
Klassisk + kvante-maksimalniveau (NIST Level 5)
Post-kvante (ML-DSA-87)
Ed25519 + ML-DSA-87
Klassisk + NIST-primæranbefaling (Level 5)
Dobbelt-PQ
Ed25519 + Falcon-1024 + ML-DSA-87
Klassisk + begge kvante-metoder parallelt

QR-koden forbliver på alle niveauer lige så stor og lige så nem at scanne — den ekstra sikkerhed kommer til fra McGesund-backenden, ikke fra selve QR-koden. Hvilke niveauer der er tilknyttet din plan, kan du se i QR-fanerne i din profil.

Hvorfor vi satser på Falcon

Falcon (FN-DSA) er ved siden af ML-DSA-87 den anden post-kvante-signaturmetode udvalgt af NIST og er i den afsluttende FIPS-206-standardisering. Vi tilbyder den alligevel allerede i dag — af tre grunde:

  1. Algoritme-diversitet — Falcon bygger på NTRU-gitre, ML-DSA-87 på Module-LWE. Begge metoder er matematisk uafhængigt konstrueret. Et angreb, der bryder den ene metode, bryder ikke automatisk den anden. På dobbelt-PQ-niveauet bruger vi begge parallelt — selv et fuldstændigt Falcon-brud ville lade anmeldelsen forblive gyldig via ML-DSA-87.
  2. Dataminimering — En Falcon-signatur er med ~666 hhv. 1280 byte betydeligt mere kompakt end en ML-DSA-87-signatur (4627 byte), ved et sammenligneligt sikkerhedsniveau. Pr. QR-kode gemmer vi dermed mindre krypto-materiale på vores servere. Det passer til vores princip om kun at indsamle og opbevare så mange data, som virkelig er nødvendige for ægthedskontrollen.
  3. Hurtigere browser-verifikation — Falcon-signaturer verificeres betydeligt hurtigere i slutkundens browser end ML-DSA-87. Den, der med ét klik kontrollerer en anmeldelses ægthed, ser resultatet mærkbart tidligere.

Hvis Falcon alligevel ikke bliver endelig: Eksisterende QR-koder, der er signeret med Falcon, forbliver funktionelle — de bærer jo desuden den klassiske Ed25519-underskrift i selve QR-koden, som kan verificeres offline og uafhængigt af Falcon. For det kvanteresistente lag ville vi omstille de berørte QR-koder til ML-DSA-87 på serversiden; den trykte QR-kode behøver ikke at blive udskiftet. Ed25519, Bitcoin-forankringen og anmeldelsens identitet forbliver uberørt i ethvert scenarie.

Bemærkning om Falcon-varianten: Den underliggende NIST-standard FN-DSA (FIPS 206) er i den afsluttende afstemning. Skulle FN-DSA ikke blive endeligt standardiseret, omstiller vi de berørte QR-koder til ML-DSA-87. Ed25519-signaturen og Bitcoin-forankringen af hver anmeldelse forbliver uberørt heraf — ægtheden af eksisterende anmeldelser går ikke tabt i noget scenarie.

Bitcoin-blockchainen som tillidsanker

Hvem kontrollerer, at McGesund ikke i hemmelighed udskifter en nøgle for at få en forfalsket anmeldelse til at se „ægte“ ud?

Svar: Ingen behøver at stole på os. Hver nøgle, som vi underskriver anmeldelser med, melder vi til en offentlig digital logbog, som ingen kan ændre — Bitcoin-blockchainen. Så snart en nøgle er registreret dér (det tager 1–2 timer), står det for altid fast, fra hvornår den fandtes. Efterfølgende udskiftning er ikke mulig — det ville bryde den globale Bitcoin-konsensus.

Hvad du får ud af det:

  • Hver enkelt anmeldelse gemmer den blockchain-bloknummer, som underskriftsnøglen blev forankret i.
  • En senere indsat forfalskning ville være matematisk påviselig — nøglen ville endnu ikke have eksisteret på registreringstidspunktet.
  • Eksterne kontrollanter kan uafhængigt efterprøve forankringen med standardværktøjer, uden at skulle stole på os.
Når vi opretter en ny nøgleMcGesund-backendNøgle + beskrivelseFingeraftryk (32 byte)kort, entydigt talLogbog 1Logbog 2Logbog 3BitcoinBlok~1–2 tBloknr. gemmes i nøgleregistretBitcoin-blokhøjde

Sådan ser kontrollen ud i profilen (eksempel: dobbelt-PQ-niveau)

Denne anmeldelses ægthed

Klassisk signatur (Ed25519)

Matematisk bekræftet af din browser

Post-kvante-signatur (Falcon-1024)

Matematisk bekræftet af din browser

Post-kvante-signatur (ML-DSA-87)

NIST-primæranbefaling — desuden bekræftet i browseren

Nøgle forankret i Bitcoin-blockchain

Blok #826.114 — nøglen eksisterede senest den 19.05.2026. En efterfølgende forfalskning ville være afhængig af manipulation af Bitcoin-konsensus.

Indhold uændret siden anmeldelsen blev afgivet

SHA-256 stemmer overens med den signerede værdi

Afgivet på stedet (geo-verificeret)

Afgivet på firmaets adresse

Hvad betyder det? Din browser har genberegnet de kryptografiske signaturer lokalt — uden at skulle stole på McGesund. Når alle flueben er grønne, er denne anmeldelse beviseligt ægte og uændret.

Forhåndsvisning — når du klikker på „Kontrollér ægthed“ i en rigtig profil, beregnes præcis denne kontrol i din browser.

Nøgler med livscyklus

Hver signaturnøgle har en start- og en slutdato. Vi roterer nøglerne rutinemæssigt — nyudstedte QR-koder underskrives med den nye nøgle, ældre QR-koder bevarer deres gyldighed, fordi den oprindelige nøgle fortsat er tilgængelig til verifikation.

Til nødstilfælde holder vi yderligere reservenøgler klar, som allerede er forankret i Bitcoin-blockchainen. Dermed kan vi ved behov skifte med det samme, uden at der opstår et tillidshul.

Skulle en nøgle blive kompromitteret, tilbagekalder vi den — alle QR-koder fra denne nøgleperiode mister straks deres gyldighed. I så fald informerer vi dig og stiller nye QR-koder til rådighed.

Hvad signaturen ikke kan

En underskrift beskytter mod forfalskning, ikke mod kopiering — en fotograferet QR-kode kan stadig scannes. Derfor arbejder vi med yderligere lag:

  • Geo-verifikation ved anmeldelser: indsendelser uden for den tilladte omkreds omkring din adresse afvises på serversiden.
  • Engangs-brug ved produkt-QR-koder: efter den første anmeldelse er koden opbrugt.
  • Tilbagekaldsfunktion direkte i dashboardet: du kan når som helst deaktivere enhver QR-kode.

Modtagelsesdisplay (Klassik+)

Fra tariffen Klassik+ kan du desuden opstille en modtagelses-tablet, der viser roterende QR-koder. Hver kode er kun gyldig i kort tid og kan kun indløses én gang. Dermed opstår et yderligere, stedbundet ægthedsspor, som et klassisk trykt QR-opslag ikke kan levere.

  • Koden skifter automatisk med korte mellemrum. Den, der fotograferer en kode og vil scanne den senere, ender ved en udløbet kode.
  • Scan én gang, anmeld én gang: en vellykket kode spærres med det samme — genbrug er udelukket.
  • Stedpligt ved afsendelse: anmeldelser uden for den tilladte omkreds vises ikke automatisk, men havner i frigivelsen kun efter manuel kontrol og strenge kriterier.
  • Tablet-tilkobling kan når som helst tilbagekaldes: en mistet eller udrangeret tablet spærrer du med ét klik i dashboardet.

Anmeldelser, der kommer ind på denne måde, bærer det violette badge „Display-verificeret“ — synligt på din profil og i anmeldelsesoversigten.

Selve anmeldelsen signeres desuden kryptografisk ved lagringen — uanset om den er kommet ind via et display eller en klassisk QR-kode. Dermed hænger hver enkelt anmeldelse ved den samme beviskæde, som forklares i afsnittet Bitcoin-forankring.

Udløb og fornyelse

Hver QR-kode har sin egen udløbsdato (standard: to år fra udstedelsen). 60 dage før udløb får du en e-mail-påmindelse. Derefter kan du i dashboardet med ét klik oprette og udskrive en ny QR-kode — den gamle mister automatisk sin gyldighed med sin udløbsdato.

Ved mistanke om misbrug

Hvis du har mistanke om, at en QR-kode misbruges (for eksempel et opslag et sted, hvor det ikke hører hjemme), tilbagekalder du det blot i dashboardet via papirkurv-ikonet — eksisterende opslag fungerer derefter ikke længere. Ved større hændelser bedes du henvende dig via supportområdet.

Kort sagt: Den, der scanner en McGesund-QR-kode, kan stole på, at dataene bag den ikke er forfalskede og ikke i hemmelighed ændrede — kontrollerbart i din egen browser, uden at skulle stole på os, med et anker i verdens største offentlige blockchain.

Kontakt