Sigurnost + vjerodostojnost

Kako se možete pouzdati u McGesund QR kodove

Na McGesund QR kodu nalaze se važne informacije: koju tvrtku promiče, radi li se o kodu za recenziju, kodu proizvoda ili kodu signala te do kada vrijedi. Kako nitko ne bi mogao rekonstruirati, zamijeniti ili krivotvoriti QR kod, svaki je kod kriptografski potpisan — poput pečata koji svaki pametni telefon može provjeriti. Više razine nadopunjuju pečat drugim, kvantno otpornim potpisom — po želji čak i s dva neovisna postupka paralelno.

Ova stranica objašnjava kako to funkcionira — korak po korak, bez stručnog jezika.

Objašnjenje oznaka

Svaka recenzija na McGesundu može nositi jednu ili više oznaka. One na prvi pogled pokazuju kako je recenzija nastala i iz čega proizlazi njezina vrijednost povjerenja.

  • Geo-provjereno

    Recenzija je predana putem QR koda izravno na licu mjesta — GPS pametnog telefona bio je unutar radijusa lokacije tvrtke.

  • Na licu mjesta: Sajam zdravlja Hannover

    Na događanju oznaka navodi naziv prigode. Provjera je tada tekla u odnosu na mjesto događanja koje je tvrtka navela unaprijed — ne u odnosu na njezinu adresu. Tako se vidi da je recenzija nastala na sajmu ili akcijskom danu, a ne u poslovnom prostoru.

  • Zaslonom provjereno

    Recenzija je stigla putem prijemnog zaslona — rotirajući jednokratni QR kod sa sekundnim TTL-om, nemoguće ga je fotografirati ni iskoristiti na daljinu. Masovne akcije tehnički su ograničene. Više o zaslonu →

  • Kvantno potpisano

    Uz klasični potpis, ova je recenzija potpisana i algoritmom otpornim na kvantna računala (Falcon ili ML-DSA). Ostaje stoga provjerljiva i kada klasični algoritmi postanu ranjivi.

  • Usidreno u blockchainu

    Ključ za potpisivanje ove recenzije usidren je putem OpenTimestamps u Bitcoin blockchain. Time se neovisno o McGesund može dokazati da je ključ u trenutku sidrenja već postojao.

  • Ključ usidren u blockchainu

    Ovdje je u knjigu upisan samo potpisni ključ, a ne sama recenzija. To dokazuje da je ključ u navedenom trenutku već postojao — krivotvorina umetnuta poslije bila bi uočljiva. Recenzije od prije promjene nose ovu oznaku.

  • Sidrenje u tijeku

    Vremenski žig je na putu: nalazi se kod javnih usluga vremenskog žigosanja i čeka uvrštavanje u Bitcoin blok. To obično traje jedan do dva sata. Nakon toga oznaka postaje jantarna i navodi broj bloka.

  • McGesund-provjereno

    Recenziju je McGesund tim ručno provjerio i odobrio — npr. nakon razjašnjenja dokaza identiteta putem tiketa podrške.

  • U provjeri

    Recenzija je kod McGesund tima na provjeri — primjerice jer je geo-provjera bila izvan radijusa ili profil još nema provjerenog vlasnika. Sadržaj ostaje skriven do odobrenja.

  • Bez kriptopotpisa

    Recenzija potječe iz razdoblja prije našeg Envelope sustava (uvezeni stari podaci). Njezina se vjerodostojnost tehnički ne može naknadno provjeriti pa se stoga ne uračunava u ukupni prosjek.

  • Provjera potpisa neuspješna

    Kriptografska provjera recenzije nije uspjela — npr. zbog manipuliranih bajtova, opozvanog ključa ili slomljenog Envelopea. Recenzija se ne uračunava u ukupni prosjek.

Više oznaka može se kombinirati — npr. „Geo-provjereno” + „Zaslonom provjereno” na istoj recenziji. Filtri u imeniku i na profilima tvrtki koriste iste pojmove.

Što se krije u QR kodu

U unutrašnjosti QR koda nalazi se mali, potpisani paket podataka. Sadrži:

  • za koju je tvrtku kod,
  • radi li se o kodu profila, kodu proizvoda ili kodu signala,
  • kada je izdan i kada ističe,
  • potpis kojim svaki pametni telefon može provjeriti da podaci nepromijenjeni dolaze od McGesunda.

QR kod je time doduše čitljiv — no svaka bi izmjena sadržaja pokvarila potpis i otkrila se pri prvom skeniranju.

Kako se recenzija provjerava u pregledniku

Na svakoj recenziji u profilu tvrtke nalazi se gumb „Provjeri vjerodostojnost”. Tko na njega klikne, vidi korak po korak četiri zelene kvačice:

  1. Potpis valjan. Recenzija je potpisana tajnim ključem koji pripada McGesundu — potpis odgovara javnom paru.
  2. Sadržaj nepromijenjen od predaje recenzije. Izvorni tekst nije potajno izmijenjen nakon slanja.
  3. Postkvantni potpis valjan. Na višim sigurnosnim razinama dodatno se provjerava jedan ili dva postupka otporna na kvantna računala (Falcon i/ili ML-DSA-87). U dvostrukoj PQ razini svaki od dvaju potpisa mora biti valjan za sebe.
  4. Ukotvljena u Bitcoin blockchainu. Ključ upotrijebljen za potpis dokazano je registriran prije određenog datuma — a sama recenzija nosi vlastitu vremensku oznaku čim bude potvrđena. Vidi sljedeći odjeljak.

Važno: Provjera se u potpunosti odvija u pregledniku posjetitelja, a ne na McGesund poslužiteljima. Ni mi ne možemo utjecati na rezultat.

Klasično i kvantno otporno — kombinirano

Svaki QR kod nosi klasični Ed25519 potpis — brz, kompaktan, svjetski uvriježen. Ugrađen je u sam QR kod i svaki ga uređaj može provjeriti izravno nakon skeniranja, čak i bez interneta.

Više razine nadopunjuju taj potpis jednim ili dvama dodatnim postkvantnim potpisima — postupcima koji su sigurni i protiv budućih kvantnih računala. Nudimo dva matematički neovisna postupka: Falcon (FN-DSA, u dvije veličine 512 i 1024) i ML-DSA-87 (primarna preporuka NIST-a iz FIPS 204). Kako bi QR kod ostao oštro skenljiv, ti se potpisi ne nalaze u samom QR kodu, već šifrirani u McGesund backendu. Klikom na „Provjeri vjerodostojnost” vaš ih preglednik dohvaća i lokalno provjerava.

U najvišoj razini („dvostruki PQ”) koriste se oba postupka paralelno. Time recenzija ostaje kvantno otporna čak i ako jedan od dvaju postupaka jednoga dana bude slomljen — nema rizika jednog algoritma.

Praktična prednost: već ste danas spremni za prekosutra — a QR kod svugdje ostaje jednako malen i jednako dobro skenljiv.

RazinaŠto se provjerava
Standard
Ed25519
Klasični potpis
Postkvantno (Falcon-512)
Ed25519 + Falcon-512
Klasično + kvantno otporno (NIST Level 1)
Postkvantno Max (Falcon-1024)
Ed25519 + Falcon-1024
Klasično + kvantna maksimalna razina (NIST Level 5)
Postkvantno (ML-DSA-87)
Ed25519 + ML-DSA-87
Klasično + primarna preporuka NIST-a (Level 5)
Dvostruki PQ
Ed25519 + Falcon-1024 + ML-DSA-87
Klasično + oba kvantna postupka paralelno

QR kod ostaje u svim razinama jednako velik i jednako dobro skenljiv — dodatna sigurnost dolazi iz McGesund backenda, a ne iz samog QR koda. Koje su razine dodijeljene vašem planu, vidite u QR karticama svojeg profila.

Zašto se oslanjamo na Falcon

Falcon (FN-DSA) je uz ML-DSA-87 drugi postkvantni postupak potpisivanja koji je odabrao NIST i nalazi se u završnoj FIPS 206 standardizaciji. Ipak ga nudimo već danas — iz tri razloga:

  1. Raznolikost algoritama — Falcon se temelji na NTRU rešetkama, ML-DSA-87 na Module-LWE. Oba su postupka matematički neovisno konstruirana. Napad koji slomi jedan postupak ne slomi automatski drugi. U dvostrukoj PQ razini koristimo oba paralelno — čak bi i potpuni slom Falcona ostavio recenziju valjanom putem ML-DSA-87.
  2. Štedljivost podataka — Falcon potpis je sa ~666 odnosno 1280 bajtova znatno kompaktniji od ML-DSA-87 potpisa (4627 bajtova), uz usporedivu razinu sigurnosti. Po QR kodu time pohranjujemo manje kriptomaterijala na svojim poslužiteljima. To se uklapa u naše načelo da prikupljamo i čuvamo samo onoliko podataka koliko je za provjeru vjerodostojnosti doista nužno.
  3. Brža provjera u pregledniku — Falcon potpisi provjeravaju se u pregledniku krajnjeg korisnika znatno brže od ML-DSA-87. Tko jednim klikom provjeri vjerodostojnost recenzije, osjetno prije vidi rezultat.

Ako Falcon ipak ne postane finalan: Postojeći QR kodovi potpisani Falconom i dalje ostaju funkcionalni — jer dodatno nose klasični Ed25519 potpis u samom QR-u, koji je provjerljiv offline i neovisno o Falconu. Za kvantno otporni sloj pogođene bismo QR kodove na strani poslužitelja prebacili na ML-DSA-87; ispisani QR pritom se ne mora mijenjati. Ed25519, Bitcoin sidrenje i identitet recenzije ostaju u svakom scenariju netaknuti.

Napomena o Falcon varijanti: Temeljni NIST standard FN-DSA (FIPS 206) nalazi se u završnom usuglašavanju. Ako FN-DSA ne bude finalno standardiziran, pogođene QR kodove prebacit ćemo na ML-DSA-87. Ed25519 potpis i Bitcoin sidrenje svake recenzije time ostaju netaknuti — autentičnost postojećih recenzija ne gubi se ni u jednom scenariju.

Matematika iza toga

Za svakoga tko radije provjeri računom nego da vjeruje: ova produbljivanja korak po korak objašnjavaju što se matematički događa pri potpisivanju recenzije.

Pregled svih shema potpisivanja

Bitcoin blockchain kao sidro povjerenja

Tko provjerava da McGesund potajno ne zamijeni ključ kako bi krivotvorena recenzija izgledala „vjerodostojno”?

Odgovor: nitko nam ne mora vjerovati. Svaki ključ kojim potpisujemo recenzije prijavljujemo javnom digitalnom dnevniku koji nitko ne može mijenjati — Bitcoin blockchainu. Čim je ključ ondje upisan (to traje 1–2 sata), zauvijek je utvrđeno otkad postoji. Naknadna zamjena nije moguća — to bi slomilo svjetski Bitcoin konsenzus.

Što vi od toga imate:

  • Svaka pojedina recenzija sprema i broj bloka blockchaina u kojem je usidren ključ potpisa.
  • Naknadno ubačena krivotvorina bila bi matematički dokaziva — ključ u trenutku upisa još ne bi postojao.
  • Vanjski provjeravatelji mogu sidrenje neovisno pratiti standardnim alatima, bez potrebe da nam vjeruju.

Odnedavno idemo korak dalje: ne samo ključ, nego svaka recenzija sama dobiva vlastiti zapis u tom dnevniku. Tako nije utvrđeno samo otkad je ključ postojao, nego otkad je ta jedna recenzija postojala točno u ovoj formulaciji. Naknadno izmišljanje recenzije i pripisivanje starijeg datuma time je isključeno — nijedan danas napisan tekst ne ulazi u jučerašnji Bitcoin blok.

U dijalogu provjere jedan jedini redak prikazuje stanje sidrenja, a njegova boja govori dokle je stiglo. Zeleno: oboje je tu — ključ i recenzija, svaki s brojem bloka. Žuto: ključ je ukotvljen, vlastita vremenska oznaka recenzije još je na putu. To traje sat do dva i nije nedostatak, nego naprosto vrijeme koje treba jedan Bitcoin blok. Crveno: još nema potvrđenog sidrenja.

Troši li to energiju? Ne, nikakvu dodatnu. McGesund ne obavlja rudarenje i ne pokreće vlastitu transakciju. OpenTimestamps objedinjuje sve vremenske oznake jednog vremenskog okvira diljem svijeta u jedan jedini otisak; samo on ulazi u transakciju koju calendar poslužitelji ionako šalju — je li u njoj deset ili deset milijuna zapisa, ne mijenja ništa. A Bitcoin blokovi nastaju svakih deset minuta, neovisno o tome upisujemo li nešto. Vremenska oznaka stoga ne stvara ni dodatni blok ni dodatno računanje.

Što ide u blockchainMcGesund backendKljuč + opisjednom po ključurecenzija + potpiskod svake recenzijeOtisak (32 bajta)kratak, jedinstven brojspojeno u jedan korijenDnevnik 1Dnevnik 2Dnevnik 3BitcoinBlok~1–2 hBroj bloka sprema se u registar ključevaVisina Bitcoin blokadokaz + br. bloka uz recenzijuvlastita vremenska oznaka po recenziji

Ovako izgleda provjera u profilu (primjer: dvostruka PQ razina)

Autentičnost ove recenzije

Klasični potpis (Ed25519)

Matematički potvrđeno vašim preglednikom

Postkvantni potpis (Falcon-1024)

Matematički potvrđeno vašim preglednikom

Postkvantni potpis (ML-DSA-87)

Primarna preporuka NIST-a — dodatno potvrđeno u pregledniku

Ukotvljeno u Bitcoin blockchainu

Recenzija od bloka #826.114, ključ od bloka #825.900 — oboje provjerljivo neovisno o McGesundu.

Sadržaj nepromijenjen od predaje recenzije

Tekst, srca i mjesto podudaraju se s potpisanim zapisom

Predano na licu mjesta (geo-provjereno)

Predano na lokaciji tvrtke

Što to znači? Vaš je preglednik lokalno preračunao kriptografske potpise — bez potrebe da vjeruje McGesundu. Ako su sve kvačice zelene, ova je recenzija dokazivo vjerodostojna i nepromijenjena.

Pregled — klikom na „Provjeri vjerodostojnost” u stvarnom profilu upravo se ova provjera izračunava u vašem pregledniku.

Dok vremenska oznaka recenzije još traje

Ukotvljeno u Bitcoin blockchainu

Ključ od bloka #825.900 · recenzija slijedi (~1–2 h)

Žuta kvačica umjesto zelene: ključ je već ukotvljen, vlastita vremenska oznaka recenzije slijedi za sat do dva. Nakon potvrde redak postaje zelen i navodi oba bloka.

Ključevi sa životnim ciklusom

Svaki ključ potpisa ima početni i završni datum. Ključeve rutinski rotiramo — novoizdani QR kodovi potpisuju se novim ključem, stariji QR kodovi zadržavaju svoju valjanost jer izvorni ključ i dalje ostaje dostupan za verifikaciju.

Za ozbiljne slučajeve držimo spremne dodatne rezervne ključeve koji su već usidreni u Bitcoin blockchainu. Tako po potrebi možemo odmah prijeći, bez nastanka praznine u povjerenju.

Ako je ključ kompromitiran, opozivamo ga — svi QR kodovi iz razdoblja tog ključa odmah gube valjanost. U tom vas slučaju obavještavamo i stavljamo na raspolaganje nove QR kodove.

Što potpis ne može

Potpis štiti od krivotvorenja, ne od kopiranja — fotografirani QR kod ostaje skenljiv. Zato radimo s dodatnim slojevima:

  • Geo-provjera kod recenzija: predaje izvan dopuštenog radijusa oko vaše lokacije odbijaju se na strani poslužitelja.
  • Jednokratna upotrebljivost kod Proizvod-QR-ova: nakon prve recenzije kod je potrošen.
  • Funkcija opoziva izravno u nadzornoj ploči: svaki QR kod možete u bilo kojem trenutku deaktivirati.

Prijemni zaslon (Classic+)

Od tarife Classic+ možete dodatno postaviti prijemni tablet koji prikazuje rotirajuće QR kodove. Svaki kod vrijedi samo kratko i može se iskoristiti samo jednom. Tako nastaje dodatan, uz lice mjesta vezan trag vjerodostojnosti koji klasičan ispisani QR plakat ne može pružiti.

  • Kod se automatski mijenja u kratkim razmacima. Tko kod fotografira i kasnije ga želi skenirati, dobiva istekli kod.
  • Skeniraj jednom, ocijeni jednom: uspješan kod odmah se zaključava — ponovna upotreba je isključena.
  • Obveza lokacije pri slanju: recenzije izvan dopuštenog radijusa ne pojavljuju se automatski, već završavaju u odobrenju tek nakon ručne provjere i strogih kriterija.
  • Sparivanje tableta opozivo u svakom trenutku: izgubljeni ili umirovljeni tablet zaključate jednim klikom u nadzornoj ploči.

Recenzije koje tako stignu nose ljubičastu oznaku „Zaslonom provjereno” — vidljivu na vašem profilu i u popisu recenzija.

Sama recenzija se pri spremanju dodatno kriptografski potpisuje — bez obzira je li stigla putem zaslona ili klasičnog QR koda. Time svaka pojedina recenzija visi o istom lancu dokaza koji je objašnjen u odjeljku Bitcoin sidrenje.

Istek i obnova

Svaki QR kod ima vlastiti rok isteka (standard: dvije godine od izdavanja). 60 dana prije isteka dobivate e-mail podsjetnik. Zatim u nadzornoj ploči jednim klikom možete kreirati i ispisati novi QR kod — stari s istekom svojeg datuma automatski gubi valjanost.

Kod sumnje na zlouporabu

Ako sumnjate da se QR kod zloupotrebljava (primjerice plakat na mjestu na koje ne pripada), jednostavno ga opozovite u nadzornoj ploči putem ikone kante za smeće — postojeći plakati nakon toga više ne funkcioniraju. Kod većih incidenata javite nam se putem područja podrške.

Ukratko: Tko skenira McGesund QR kod, može se pouzdati da podaci iza njega nisu krivotvoreni ni potajno izmijenjeni — provjerljivo u vlastitom pregledniku, bez potrebe da nam vjerujete, uz sidro u najvećem svjetskom javnom blockchainu.

Kontakt →