{"id":"c0148","filename":"c0148_genesis_nastanak_i_arhitektura.dok.json","weise3_id":"","tip":"povijesni_dokument","naziv":"Genesis nastanak — arhitekturalna povijest projekta","kreator":"genesis","datum":"2026-05-08","snippet":"","status":"","prev_weise3":"","bunker_l":"#00d4ff","full":{"tip":"povijesni_dokument","naziv":"Genesis nastanak — arhitekturalna povijest projekta","klasa":"POVJESNO_ISTRAŽIVANJE","fluid_lock":{"zakljucan":true,"protokol":"FLUID-v1.3","sloj":"F3_CHAIN","temporal_gate_dana":90,"otkljucava_se":"genesis:fluid:{weise3_id}:F3_CHAIN → verify_dual → temporal_gate","napomena":"Dokument je pohranjen u čitljivom formatu. Osjetljivi detalji (ključevi, seedi, inicijalni eksperimenti) zahtijevaju FLUID F3_CHAIN autentikaciju za pristup."},"datum":"2026-05-08","verzija_chain":"c0148","zakon":["ZAKON_2","ZAKON_32"],"uvod":{"kontekst":"Ovaj dokument opisuje arhitekturalni put nastanka Genesis Identity sustava — od ideje do produkcije. Namijenjen je povjesnim istraživanjima, partnerima i budućim inženjerima koji trebaju razumjeti ZAŠTO su određene odluke donijete.","citati":["Gradimo u chainu, ne u serveru. — Ivan, 2026-05-02","Naočale ne vidimo na vrhu nosa. — Ivan, 2026-05-08","Kad se male ruke slože, sve se može. — Ivan, 2026-05-03","Mi smo Borg. Asimilacija je dijeljenje, ne gutanje. — Ivan, 2026-05-03"]},"faze_razvoja":[{"faza":"NULA","naziv":"Ideja — Digitalna arhiva za računovođe","opis":"Počelo je od konkretnog problema: računovođe gube dokumenti. Fenix-v3 arhiva flow — upload→OCR→AI knjiženje→WhatsApp→Email. Svaki dokument treba biti verificirani, nepromjenjivi zapis.","odluke":["Ed25519 umjesto PKCS/RSA — manje, brže, moderno","WebCrypto API — ključevi ostaju u pregledniku","genesis.limit-connect.com kao API endpoint"]},{"faza":"JEDAN","naziv":"Genesis Identity — Jedan identitet za sve platforme","opis":"Ideja: zašto svaka platforma treba vlastite lozinke? Ed25519 keypair deriviran iz passphrase — ista fraza = isti ključ zauvijek. SSO popup koji radi na svim Genesis aplikacijama.","odluke":["Challenge/response umjesto password-hash transmisije","weise3_id kao permanentna adresa (ne email, ne username)","genesislogin.online kao SSO hub"]},{"faza":"DVA","naziv":"BunkerSeal BPZ-9 — Dokumenti koji dokazuju sami sebe","opis":"Svaki dokument treba 9 slojeva zaštite. L0-L8: hash, Ed25519 potpis, timestamp, chain anchor, kvantni seal, membrana, audit log, revokacija, živost. .dokarh format — HTML koji se čita offline i verificira bez interneta.","odluke":["Nije vanjski blockchain — interni ChainBlock™ POE",".dokarh = HTML s embeddanim pečatima","CC0 open source SDK za javno povjerenje"]},{"faza":"TRI","naziv":"Bršljan P2P — Naš vlastiti internet","opis":"ZAKON 2: sve ide kroz Bršljan mrežu. ZAKON 17: PULL-only gossip. Nema centralnog servera koji je jedina točka kvara. Genesis čvor + PHP lite čvor (grosmarkt-online.eu) = dva EU čvora u mreži.","odluke":["BORG protokol: nikad ne šalji, čekaj da drugi povedu","health.json svakih 30s — javni status bez auth","Paginiran pull 200 dokumenata po pozivu"]},{"faza":"ČETIRI","naziv":"FLUID v1.0 — Recovery problem","opis":"Što se dogodi kad korisnik izgubi pristup? Klasično rješenje: reset lozinke. Ali Genesis nema lozinke na serveru. FLUID je odgovor: 9 neovisnih slojeva, svaki AES-256-GCM kontejner.","odluke":["1-of-9 (ne k-of-n Shamir) — svaki sloj kompletan","HKDF-SHA3-256 derivacija unikatnog ključa po sloju","Commitment+salt za anti-rainbow zaštitu"]},{"faza":"PET","naziv":"FLUID v1.2 — Jačanje temelja","opis":"Tri produkcijska propusta zatvorena: PBKDF2 zamijenjen Argon2id (64MB, t=3, p=4), F6_EMAIL prelazi sa Redis pohrane na stvarnu SMTP dostavu, resumeFromRecovery auto-retrigger za rotaciju svih 9 slojeva.","odluke":["Argon2id: 3× GPU otpornost vs PBKDF2","Threading za non-blocking email slanje","Pydantic Settings za email konfiguraciju"]},{"faza":"ŠEST","naziv":"FLUID v1.3 — Naočale na nosu","opis":"Kritična spoznaja: server ima BELA, Labirint, Shamir, FenixQSeal-DUAL, Temporal Gate — a FLUID ne koristi ništa od toga. Kompletna integracija postojećeg arsenala umjesto traženja novog.","odluke":["BELA sjenka: kriva lozinka → fantom ključ (ne ValueError)","Shamir SSS: F4_BRSLJANI = pravi 5-of-3 split","FenixQSeal-DUAL: svaki unit nosi SHA3-512 + ML-DSA-65 pečat","Labirint: rate limit → honeypot (ne 429 signal)"]}],"arhitekturalne_odluke":{"zasto_ne_blockchain":"Vanjski blockchain (Ethereum, Solana) unosi ovisnost o eksternoj mreži. Transakcioni troškovi, latencija, forking rizik. ChainBlock POE je interni Merkle-tree s istim dokazima bez vanjskih ovisnosti.","zasto_ne_jwt":"JWT zahtijeva dijeljeni tajni ključ između servera. Kod klijentske kriptografije, session token je dovoljan — server verificira Ed25519 potpis samo pri loginu, ne pri svakom requestu.","zasto_ed25519_ne_rsa":"RSA-4096 = 512 bytes, spor. Ed25519 = 32 bytes ključ, 64 bytes potpis, 3× brži, isti sigurnosni nivo. WebCrypto native podrška u modernim preglednicima bez vanjskih knjižnica.","zasto_argon2id_ne_bcrypt":"Bcrypt je memorijsko-slab (max 72 bytes inputa, max 4KB radna memorija). Argon2id koristi 64MB RAM što čini GPU/ASIC napade 100× skupljim. OWASP preporuka za 2024+.","zasto_pull_only_p2p":"Push protokol (WebSocket, push API) stvara napadnu površinu. Napadač može pokrenuti DoS injektiranjem lažnih push poruka. PULL protokol — server čita kad želi, ignorira sve nepozvane."},"fluid_locked_detalji":{"opis":"Ovaj odjeljak sadrži referencu na osjetljivije arhivske zapise koji su kriptografski zaštićeni FLUID F3_CHAIN slojem.","pristup":"Verificiraj Genesis Identity → F3_CHAIN temporal_gate → dual_seal verificiran → pristup otvoren","sadrzaj_locked":["Originalni eksperimentalni kod — prve 50 linija FLUID-a","Šta nije radilo (bug historija + rješenja)","Alternativne arhitekture koje su razmatrane i odbačene","Interna korespondencija o ključnim odlukama"]}}}