tipispravak
sto_trebaISTINA NAD TVRDNJOM: prethodna verzija c1328 lazno je tvrdila DONE za offline modul. Forgery test ga je oborio. Modul vracen na .bak. Ovaj zapis ispravlja lanac.
sto_se_stvarno_dogodilo[
"Offline modul (GenesisAuth.offline) appendan na genesis-auth.js IZVAN IIFE-a (linija 626, IIFE se zatvara na 615).",
"TEST A (zivi fajl, node v20.20.2): createToken() baca ReferenceError: deriveKeypair is not defined. verify() baca hexToBytes is not defined. MRTAV KOD — helperi su privatni u IIFE scope-u, modul ih ne vidi.",
"TEST B (helperi u scope, pravi Ed25519 kripto): LEGIT verify=true. FORGE-CTX (promijenjen context bajt) verify=true. FORGE-SIG (promijenjen potpis) verify=true. ve
rezultat_testa{
"test_A_zivi": "FAIL — ReferenceError, mrtav kod, ne moze kreirati ni verificirati",
"test_B_dizajn": "FAIL — verify ignorira potpis, krivotvorina prolazi valid:true",
"presuda": "ZAKON 40 offline NIJE gotov. Vracen na cisto stanje."
}
redizajn_potrebanISO 18013-5 mDL model: ISSUER (Genesis) potpisuje ispravu {context, issued_at, expiry, subject_pubkey} Ed25519 kljucem. VERIFIKATOR drzi PINNED issuer javni kljuc lokalno. verify() = Ed25519.verify(potpis, poruka, pinned_issuer_pubkey) + provjera expiry. Pravi offline dokaz, bez interneta, bez share
mar_recovery_gap_OSTAJEKopiranje PWA frontenda na MAR NIJE zatvorilo recovery-guardian rupu. N=2 K=2 threshold share i dalje jedna tocka loma. Krivo dijagnosticirano u prethodnom potezu. OTVORENO.
zakon[
"ZAKON NAD ZAKONIMA — Gotovo = test prosao, pokazan. Ovaj zapis ispravlja krsenje.",
"ZAKON 2 — Lanac je istina. Lazni DONE zamijenjen istinom.",
"ZAKON 40 — Offline verifikacija — NIJE gotova, redizajn ceka"
]
serverEU + MAR (oba vracena na cisto)
krunica_hashKH1::ISPRAVAK::zakon40_teatar_oboren_forgery_test::FENIX2026
statusVRACENO — redizajn ceka Ivanovu potvrdu