Turvallisuus on palvelimen päätös, ei widgetin tila.
2IZI Guard suojaa lomakkeet ja julkiset toiminnot paikallisella riskinarvioinnilla, adaptiivisella kitkalla ja kertakäyttöisillä palvelintokeneilla. Ei pakollista ulkoista CAPTCHA-runtimea.
Pieni integraatiopinta. Lopullinen lupa pysyy palvelimella.
Nykyinen core tähtää PHP 8.1+:aan ja on framework-independent security boundaryllä. Suojaa jokainen action eksplisiittisesti ja kuluta token ennen business operationia.
1. Frontend
<script src="/guard/public/assets/guard.js?v=0.4.10" defer></script> <form data-guard-action="contact"> … </form>
2. Protected action
$result = Guard::verifyAndConsume(
$_POST['guard_token'] ?? '',
'contact'
);
if (!$result->allowed()) {
http_response_code(403);
exit;
}Tyypilliset actions
loginregisterpassword_resetcontactcheckoutfile_uploadYksi suojattu action. Viisi riippumatonta checkpointia.
Browser voi osallistua challengeen, mutta business permission myönnetään ja kulutetaan aina palvelimella.
Validoi context
Tarkista Origin, action, session ja peruslimits ennen raskasta työtä.
Arvioi paikallisesti
Server ja application signals tuottavat selitettävän risk decisionin.
Lisää friction
Policy valitsee PASS, PoW, interaction, throttle tai deny.
Myönnä kerran
Satunnainen 256-bit opaque token sidotaan session/action/origin ja lyhyeen TTL:ään.
Kuluta atomisesti
Business endpoint kuluttaa kerran; replay, mismatch ja expiry hylätään.
Policy modes
Luotettu traffic voi kulkea hiljaa; suurempi risk voi käynnistää PoW:n, holdin, throttlen tai denyn.
Integration contract
Nykyinen core tähtää PHP 8.1+:aan ja on framework-independent security boundaryllä. Suojaa jokainen action eksplisiittisesti ja kuluta token ennen business operationia.
Action registry
The server defines allowed action names. Never use a client-provided action as authorization context.
'contact' => [ 'mode' => 'adaptive', 'fail_mode' => 'open_with_limit' ]
Origin / session binding
256-bit opaque tokens · hash-only storage · lyhyt TTL · binding action/session/origin · HMAC integrity · one-time atomic consume · server-only business signals · fail-closed critical actions.
UI isolation
Shadow DOM isolates Guard visuals from host CSS. It is a UI reliability layer, not a security boundary.
Localization
UI locale is BCP-47-style, UTF-8, RTL-ready, touch/keyboard compatible, and extendable with locale packs.
Oletamme, että hyökkääjä tuntee koko koodin.
Koodi, JavaScript, API, DB-schema, PoW ja thresholds voivat olla tunnettuja; salaisuudet ja autorisointi pysyvät palvelimella.
Oletamme, että hyökkääjällä on
- täysi source code
- modernit AI-mallit
- Playwright / Selenium / headless Chromium
- residential proxies
- oman trafficin captures
Security ei perustu näiden piilottamiseen
- JavaScript
- challenge algorithms
- field names
- endpoints
- risk thresholds
Julkisen koodin tulee lisätä auditoitavuutta, ei heikentää mallia.
Implementation lukeminen ei saa luoda authorization bypassia. Public review vaatii kurinalaiset releases, keys, repository permissions ja vulnerability handling.
Julkaise
- source ja change history
- SECURITY.md ja responsible disclosure
- threat model ja architecture
- automated security / red-team tests
- release checksums ja notes
Pidä yksityisenä
- production config/guard.php
- APP_KEY ja HMAC/privacy/rate-limit keys
- DB dumps ja oikeat security events
- oikeat cookies/tokens/sessions
- deployment secrets ja private infrastructure
Diagnostics, tests and updates
Diagnostics
php bin/diagnose.php
Check database state, key material, Origin configuration and registered actions before enabling enforcement.
Regression / red-team
bash tests/run-all.sh
Release acceptance includes replay, proxy, risk, tampering, UI and integration checks. Run disposable MariaDB/MySQL concurrency tests where available.
Updates
Read release notes and migrations first. Do not overwrite production config/guard.php with a distribution template. Rotate keys only when a release explicitly requires it.
Rollout
Start with Shadow Mode, review predicted decisions and false positives, tune action policies, then enable calibrated enforcement.
0.4.10 · pre-1.0 · aktiivinen kehitys
Nykyinen branch sisältää security-first architecture ja automaattisen regression/red-team coverage. Aloita Shadow Modella ja kalibroi enforcement oikealla trafficilla.