Proč je ověřování signatářů klíčové pro charitativní a petiční platformy
Hodnota petic a lead-gen formulářů stojí na důvěře, že podpisy a kontakty reprezentují skutečné osoby, které porozuměly výzvě a souhlasí s komunikací. Bez spolehlivého ověřování signatářů hrozí nadhodnocení počtů, ohrožení reputace, plýtvání rozpočtem (remarketing, e-maily) a právní rizika. Cílem je nalézt rovnováhu mezi frikcí a integritou – zachovat konverzi, ale minimalizovat přítomnost botů, duplicitu a zneužití.
Model hrozeb: co přesně chceme zabránit
- Automatizované boty: skripty vyplňující formuláře s náhodnými e-maily či telefony.
- Organizované falešné kampaně: koordinované skupiny používající jednorázové e-maily a VPN.
- Duplicity a „ballot stuffing“: stejná osoba podepisuje opakovaně (úmyslně nebo omylem).
- Falešné identity: vymyšlená jména, kradené kontakty, dočasná čísla.
- Zneužití při importech: hromadné CSV importy bez ověření a auditní stopy.
Principy designu verifikačního systému
- Progresivní verifikace: jednoduchá základní kontrola pro všechny; přísnější kroky spouštějte pouze při riziku.
- Minimální frikce: nezatěžujte všechny uživatele SMS kódy; zvýšení ověření u signálů podezření.
- Transparentnost a soukromí: vysvětlete, proč ověřujete a jaká data zpracováváte.
- Auditovatelnost: uchovávejte důkazy o ověření (hashované, pseudonymizované), ne surové identifikátory.
- Přístupnost: verifikace musí fungovat bez bariér pro osoby se znevýhodněním a na pomalejších zařízeních.
Vrstvy ochrany proti botům (obrana do hloubky)
- Honeypot pole: skrytá pole, která lidé nevyplní, ale boti ano. Nízká frikce, efektivní první filtr.
- Behaviorální signály: rychlost psaní, myš/scroll vzory, intervaly mezi poli. Používejte jako indikační signál, ne jako automatické zablokování.
- JavaScript/výzvy: proof-of-work nebo „lehké“ CAPTCHA po rizikovém skóre; vyhýbejte se složitým obrazovým testům.
- Omezení rychlosti a reputace IP: limity na IP/subnet/ASN, detekce datových center, tvorba allowlistů pro legitimní zdroje.
- Device fingerprinting (privacy-by-design): šetrné otisky (např. kombinace verze prohlížeče a velikosti okna) s krátkou retencí a bez invazivních identifikátorů.
Ověření identity a kontaktu: metody a jejich kompromisy
| Metoda | Výhody | Rizika/Frikce | Doporučené použití |
|---|---|---|---|
| Double opt-in e-mail | Nízké náklady, účinné proti botům | Zpožděné potvrzení podpisu | Standardní pro všechny petice |
| SMS kód (OTP) | Silná unikátnost osoby | Náklady na SMS, přístupnost, burner čísla | Pouze při riziku nebo pro klíčové akce |
| BankID/eID (kde dostupné) | Nejsilnější ověření | Nejvyšší frikce, právní nároky | Oficiální podání, nízký objem, vysoká hodnota |
| Social login (Přihlášení přes…) | Rychlost, méně botů | Není důkaz identity, závislost na platformě | Doplněk, ne povinné |
| CAPTCHA (modernější) | Filtrace skriptů | UX zátěž, přístupnost | Pouze adaptivně po riziku |
Deduplikační engine: jak rozpoznat stejný podpis
- Primární klíče: e-mail (normalizovaný), telefon (formát E.164), volitelně hashovaný identifikátor zařízení.
- Fuzzy matching jmen: Levenshtein/Damerau-Levenshtein na křestní jméno/příjmení s diakritikou; transliterace (Š→S, Ľ→L).
- Pravidla kolizí: stejný e-mail → aktualizovat čas a zdroj, nevytvářet nový záznam.
- Kontrolované aliasy: plus-aliasy v e-mailu (jméno+newsletter@) normalizujte; naopak catch-all domény skórujte rizikově.
- Bloom filtr pro rychlé testy duplicity: šetří dotazy do databáze u velkých kampaní.
Skórování rizika a adaptivní kroky
Ke každému podpisu přiřaďte rizikové skóre (0–100) z různých signálů. Po překročení prahů spouštějte dodatečné ověření.
- Signály: nová/doménová reputace e-mailu, IP z datového centra, krátký čas vyplnění, nestandardní user-agent, opakované pokusy, vysoká podobnost jména v krátkém čase.
- Akce podle prahu: 0–30: pouze double opt-in; 31–70: CAPTCHA nebo SMS; 71+: manuální revize nebo odložené publikování podpisu.
GDPR a právo: jak chránit data i legitimitu
- Právní základ: podpis petice a zasílání newsletterů jsou různé účely; pro newslettery použijte souhlas (double opt-in), pro validaci podpisu oprávněný zájem (prevence podvodu) s testem proporcionality.
- Minimalizace: neuchovávejte rodná čísla nebo adresy, pokud to není zákonný nebo účelový požadavek.
- Pseudonymizace: ukládejte hash telefonů/e-mailů (se solí) pro deduplikaci; surové hodnoty ponechte jen do potvrzení.
- Retence: nastavte lhůty (např. nepotvrzené záznamy smažte po 14 dnech), logy rizikového skóre agregujte po 90 dnech.
- Transparentnost: vysvětlete v zásadách, že používáte automatizované rozhodování k prevenci zneužití a nabídněte kontaktní místo pro námitky.
Architektura: referenční proces podpisu
- Odeslání formuláře: proběhne honeypot, základní normalizace (očištění, diakritika, formát telefonu), kontrola rychlosti a IP.
- Skórování: vypočítejte skóre; nízké → uložte do stavu pending, odešlete ověřovací e-mail (link platný 30–60 min).
- Ověření: kliknutím na link → přechod do stavu confirmed; pokud je skóre střední, zobrazte lehkou výzvu (např. krátký textový challenge).
- Publikování: podpis se započítává až po potvrzení; duplicitní záznamy se sloučí do existujícího profilu (audit log).
- Monitoring: dashboard anomálií (nárůst z jednoho ASN, spike nepodporovaných prohlížečů, neadekvátní konverze v nočních hodinách).
Praktiky snižující duplicitu bez ztráty konverze
- Inline validace: okamžité upozornění „Tento e-mail již podepsal, chcete aktualizovat svůj podpis?“
- „Magic link“ návrat: při opakovaném pokusu pošlete rychlý link k přihlášení/úpravě podpisu místo blokace.
- Mírné frikční prvky při riziku: krátká otázka k obsahu petice, kterou boti obtížně překonají (kontrola lidského záměru).
- Jednoúčelové URL: podpisový link vázaný na konkrétní kampaň a e-mail snižuje přenositelnosť.
Metodika měření: přesnost, false positives, dopad na LTV
- Přesnost detekce botů: validujte na vzorku manuálně označených případů.
- Chybovost na přístupnosti: měřte, kolik uživatelů se čtečkami obrazovky selže na CAPTCHA; pokud je to více než 1–2 %, upravte strategii.
- Dopad na fundraising: sledujte post-verify darovost, open rate a churn – cílem je vyšší kvalita při minimální ztrátě objemu.
Operativa: procesy, logy a incidenty
- Audit logy: kdy, kdo a jak potvrdil, změnil nebo sloučil podpis; záznam důvodu blokace.
- Incident response: pokud spike botů projde filtrem, dočasně zpřísněte práh, znovu přepočítejte posledních N podpisů a kontaktujte ovlivněné osoby (transparentní komunikace).
- Importy: vyžadujte deklaraci zdroje, použitého právního základu a medián konverze; importy musejí projít stejnými validacemi jako online podpisy.
UX doporučení: zachovat jednoduchost, vysvětlit důvod
- Stručné formuláře: jméno + e-mail + volitelně PSČ; další pole zobrazujte kontextově.
- Jasná komunikace: „Ověřujeme podpisy, aby byla vaše výzva chráněna před boty. Potrvá to pár sekund.“
- Náhradní cesty: pokud selže ověření e-mailem, nabídněte alternativu (jiný kanál, chat podpora).
- Přístupnost: textové alternativy CAPTCHA, podpora bez JavaScriptu (alespoň e-mailové potvrzení).
Technické detaily: normalizace a hashování
- Normalizace e-mailu: převod na malá písmena, odstranění teček pro Gmail, odstranění +aliasů (nastavitelně), IDN na ASCII (punycode).
- Telefon: převedení do formátu E.164, odstranění mezer, určení země podle lokalizačního kontextu.
- Hashování pro deduplikaci: HMAC-SHA256 se solí pro e-mail/telefon; rotace soli, uložení v KMS.
- Expirace tokenů: ověřovací odkazy s krátkou životností (30–60 minut), jednorázové, vázané na kampaň a IP přibližného regionu.
Antifraud heuristiky, které fungují
- Okno rychlých pokusů: více než X pokusů z téže IP/ASN během 5 minut → „soft wall“ (dočasné zpřísnění ověřování).
- Doménové vzorce: vysoký podíl freemail aliasů s neobvyklým vzorem → zvýšení prahu.
- Časové anomálie: nepřiměřeně mnoho podpisů v 03:00 z jednoho regionu → manuální audit.
- Textové nesrovnalosti: stejná jedinečná formulace v poznámce k podpisu napříč mnoha záznamy.
Bezpečnost integrace: WAF, tajemství, zásady nasazení
- WAF a správa botů: nasadit před aplikační server; pravidla pro známé automatizační knihovny.
- Správa tajemství: API klíče pro SMS/e-mail v trezoru (KMS/Secrets Manager); rotace klíčů.
- „Least privilege“ přístupy: oddělené role pro zapisování podpisů, čtení agregátů a exporty.
- Canary release: postupné zapínání nových filtrů s měřením dopadů na konverzi.
Standardní operační postup (SOP) pro manuální ověření
- Vzorkování 1–5 % nových podpisů s vysokým rizikem.
- Kontrola vzoru: formát e-mailu, doména, geolokační rozptyl, časová okna.
- Kontakt s vysvětlením (pokud je kontakt legitimní): krátký ověřovací dotaz s možností odhlášení.
- Označení a trénink modelu: výsledky manuálního auditu použijte jako tréninková data.
Dashboard a KPI ověřování
- Verified rate: podíl potvrzených podpisů do 24 hodin.
- Block rate: podíl zamítnutých botů vůči legitimním zachycením (false positive).
- Duplicitní míra: počet sloučených záznamů na 1 000 podpisů.
- Time-to-verify: medián času od odeslání po potvrzení.
- Dopad na fundraising: konverze na dar v 7/30 dnech z verified vs. neverified kohort.
Implementační plán na 30 dní
- Dny 1–7: honeypot, normalizace, double opt-in, základní limity na IP/ASN, dashboard.
- Dny 8–14: rizikové skóre, adaptivní CAPTCHA, sluč



























