← DokArh Portal
implementacija

GenesisAuth WASM — Rust crypto core začahuren u WebAssembly

Kreator: genesis Datum: 2026-05-18 Status: DONE — binarni u /var/www/genesis/static/
WeisE3™ ID: (nema)
tipimplementacija
chain_entryc0957
statusDONE — binarni u /var/www/genesis/static/
zastoJavaScript algoritmi su čitljivi svakome. WASM binary nije — Ed25519, PBKDF2 i WeisE3 algoritmi su zapakirani u 150KB binarni koji browser ne može trivijalno reverseati.
arhitektura{ "rust_crate": "sdk/wasm/genesis_auth_core/src/lib.rs", "cargo_toml": "sdk/wasm/genesis_auth_core/Cargo.toml", "output_wasm": "static/genesis_auth_core.wasm (150KB)", "output_js_bindings": "static/genesis_auth_core.js (wasm-pack generated)", "wrapper": "static/genesis-auth-wasm.js (tanki JS wrapper)", "js_api_kompatibilnost": "Identičan API kao genesis-auth.js — drop-in zamjena" }
rust_dependencies{ "ed25519_dalek": "2.x — batch verify, const-time, FIPS 186-5", "pbkdf2": "0.12 + hmac — 100.000 iteracija SHA-256", "sha3": "0.10 — SHA3-256 za WeisE3 hasheve", "sha2": "0.10 — SHA-256 za salt derivaciju", "hex": "0.4 — hex encoding/decoding", "base64": "0.22 — QR token encoding", "zeroize": "1.x — briše seed iz memorije odmah nakon korištenja", "getrandom": "0.2 + js feature — CSPRNG u WASM kontekstu", "wasm_bindgen": "0.2 — Rust↔JS bindings" }
wasm_eksporti[ "derive_keypair(passphrase) → { pub_hex, seed_hex }", "sign_challenge(seed_hex, challenge_hex) → signature_hex", "verify_signature(pub_hex, msg_hex, sig_hex) → bool", "weise3_id(pub_hex) → weise3_id_hex", "genesis_hash(content, creator, ctx) → sha3_256_hex", "create_offline_token(seed_hex, pub_hex, ttl, context) → base64_payload", "verify_offline_token(base64_payload) → { valid, expired, weise3_id, ... }" ]
sigurnosna_poboljsanja{ "obfuskacija": "WASM binary — algoritmi nisu vidljivi u JS debuggeru", "zeroize": "Seed se briše iz WASM memorije odmah nakon korištenja (Rust Zeroize trait)", "const_time": "ed25519-dalek koristi constant-time operacije (ne vulnerability na timing napad)", "wasm_memory_isolation": "WASM memory je izolirana od JS heapa — keypair nikad ne izlazi u JS", "build_reproducibility": "cargo build --release je deterministički — isti kod = isti WASM" }
wasm_binary{ "putanja": "/var/www/genesis/static/genesis_auth_core.wasm", "url": "https://genesis.limit-connect.com/static/genesis_auth_core.wasm", "velicina": "150374 bajta (147 KB)", "sha3_256": "99590c2493d6599dec18bf4e6e966e60dfcf87ddc8bfef6f391c376d1c677758", "weise3_hash": "a92e36a9edde6fb71010aaf0db5f30eb7fbf738b930f2a158040979bf7d4b55c", "build_tool": "wasm-pack 0.13.1 + Rust 1.95.0", "profile": "release, opt-level=z, lto=true, panic=abort, strip=true" }
integracija{ "klasicni_html": "<script type='module'>\n import GenesisAuthWasm from '/static/genesis-auth-wasm.js';\n const auth = await GenesisAuthWasm.init();\n const session = await auth.login('passphrase');\n</script>", "npm": "import GenesisAuthWasm from '@genesis/auth/wasm';", "drop_in": "Isti API kao genesis-auth.js — zamijeni URL, ne mijenjaj kod integracije" }
rebuild_komanda. $HOME/.cargo/env && cd /var/www/genesis/sdk/wasm/genesis_auth_core && wasm-pack build --target web --release && cp pkg/genesis_auth_core_bg.wasm /var/www/genesis/static/genesis_auth_core.wasm && cp pkg/genesis_auth_core.js /var/www/genesis/static/genesis_auth_core.js
zakon_veze{ "zakon_37": "FenixVault™ — WASM je novi L6 sloj BPZ-9 (algoritmi u binarnom, ne u kodu)", "zakon_40": "GenesisLogin jedini provider — WASM edition je upgrade postojećeg", "zakon_3": "Trojna pohrana — chain entry + static file + brsljani replika" }