Centro di fiducia
Metodologia di sicurezza e generazione
Dettagli tecnici, limiti delle minacce, gestione della casualità e verifiche riproducibili per il generatore di password.
Fonte di casualità
Il generatore richiede valori crittograficamente forti da crypto.getRandomValues(). Non utilizza mai Math.random(), il cui output non è specificato per uso crittografico. La specifica Web Crypto descrive un CSPRNG alimentato con entropia di alta qualità, solitamente fornita dal sistema operativo. Il browser e il sistema operativo scelgono il provider sottostante; PwdGen non afferma che ogni chiamata legga direttamente una fonte di entropia hardware della CPU.
Gli indici casuali utilizzano il campionamento per rifiuto. I valori superiori al multiplo completo più grande della dimensione dell’alfabeto vengono scartati prima dell’operazione modulo, evitando il bias che una mappatura diretta randomValue % alphabetSize introdurrebbe.
Copertura dei caratteri e mescolamento
Il generatore seleziona prima un carattere da ogni sorgente abilitata. Riempie le posizioni rimanenti dal pool combinato e poi esegue un Fisher–Yates shuffle guidato crittograficamente. I filtri per caratteri simili e ambigui vengono applicati prima della selezione.
Flusso dei dati
I valori generati esistono solo nella memoria della pagina corrente e nei nodi di risultato visibili. Non vengono scritti in URL, cookie, local storage, session storage, log del server o artefatti di build. La preferenza locale è l’unica preferenza dell’applicazione memorizzata in local storage e in un cookie funzionale.
Modello di minaccia e limiti
Questo design protegge dal sito web che raccoglie intenzionalmente le password generate. Non può garantire l’integrità del dispositivo dell’utente, delle estensioni del browser, degli appunti, del sistema operativo o del servizio di destinazione. Inoltre, non può rendere sicura una password riutilizzata o impedire a un utente di inserire una password in una pagina di phishing.
Revisione riproducibile
Il browser, l’API pubblica e pwdgen-cli@1.0.0 condividono lo stesso core di campionamento per rifiuto Web Crypto. I test automatizzati verificano la copertura dei caratteri abilitati, i caratteri esclusi, le configurazioni non valide e l’assenza di Math.random(). I test del browser verificano che la rigenerazione e la copia non emettano richieste di rete contenenti password. Il codice sorgente pubblico e i risultati CI sono collegati sopra; questa è evidenza ingegneristica riproducibile, non una rivendicazione di un audit di sicurezza indipendente.
Per una spiegazione più approfondita a livello di protocollo, leggi il whitepaper sulla generazione di password lato client.