Entropia delle password: bit e tempo di violazione
Questo calcolatore trasforma le impostazioni di un generatore di password in una stima teorica trasparente.
Esegui gratis nel browser
Indichi la lunghezza, i set disponibili in ogni posizione e i tentativi al secondo dell’attaccante. Il risultato riporta dimensione del set, entropia in bit, tentativi medi e ordine di grandezza del tempo di violazione. È adatto a segreti generati in modo uniforme e casuale, non a parole memorizzabili, credenziali riutilizzate o schemi umani prevedibili.
Comprendere il valore di entropia
Il calcolo presume che ogni posizione sia scelta indipendentemente e uniformemente da un insieme combinato. Con 26 minuscole e dodici posizioni esistono 26 elevato a dodici stringhe. L’entropia è il logaritmo in base due di tale spazio e lo esprime come decisioni binarie equivalenti. Aggiungere categorie amplia l’insieme; aumentare la lunghezza moltiplica ancora le possibilità. Il valore descrive il processo di generazione, non l’aspetto della password. Una scelta umana può contenere maiuscola, cifra e simbolo e seguire comunque uno schema ovvio. Usi quindi questa stima solo quando i set dichiarati corrispondono a un’autentica selezione casuale in ogni posizione. Per scelte umane è preferibile un’analisi basata su dizionari. Una password divulgata o riutilizzata va cambiata indipendentemente dai bit calcolati.
Interpretare il tempo di violazione
Il tempo deriva dallo stesso spazio di ricerca e dalla velocità indicata. Una ricerca esaustiva trova in media un obiettivo uniforme a metà percorso; il calcolo divide dunque lo spazio per due e poi per la velocità. La risposta usa notazione scientifica e una frase volutamente approssimativa. È un ordine di grandezza, non una garanzia. La velocità reale dipende da memorizzazione, algoritmo hash, hardware, budget e modalità online oppure offline. I servizi online limitano normalmente i tentativi, mentre un hash rapido sottratto può consentire ritmi enormi. Confronti più scenari modificando la velocità e conservi sempre questa ipotesi insieme al risultato.
Scegliere i set senza duplicazioni
Selezioni minuscole, maiuscole, cifre o simboli quando corrispondono al generatore. Le dimensioni sono 26, 26, 10 e 32; un nome duplicato conta una volta. Per un alfabeto diverso scelga solo il set personalizzato e indichi il numero esatto di caratteri distinti. Così evita sovrapposizioni. Il calcolo presume che ogni carattere possa apparire in ogni posizione con uguale probabilità. Imporre esattamente una cifra, vietare simboli all’inizio o attribuire pesi diversi crea un altro spazio. Lo strumento non riceve la password, quindi Lei può documentare una politica senza rivelare il segreto. Ogni richiesta API riuscita costa $0.002. Conservi lunghezza, set e velocità per rendere la stima riproducibile.
Casi d'uso
Rivedere una politica casuale
Confronti lunghezze e set ammessi con una velocità esplicita prima di configurare il generatore.
Documentare segreti di servizio
Registri la robustezza teorica di credenziali automatiche senza inviarle.
Confrontare attacchi offline
Provi la stessa configurazione a velocità diverse per mostrare l’effetto dell’hash.
Domande frequenti
Quale formula viene usata?
L’entropia è lunghezza per logaritmo in base due della dimensione del set; i tentativi medi sono metà dello spazio.
Viene esaminata una password reale?
No. Servono soltanto lunghezza e set, quindi il segreto non deve essere fornito.
Posso valutare una scelta umana?
Non in modo affidabile: parole e schemi umani violano l’ipotesi uniforme. Usi un’analisi con dizionario.
Perché si usa metà dello spazio?
In una ricerca esaustiva uniforme, il punto medio è il momento atteso del ritrovamento.
Quanto costa una richiesta API?
Una richiesta riuscita costa $0.002. Il browser può svolgere localmente lo stesso calcolo deterministico.
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/security/password-entropy-estimate \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"length":16,"character_sets":["lowercase","uppercase","digits","symbols"]}'const res = await fetch("https://api.kit.forhosting.com/security/password-entropy-estimate", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"length": 16,
"character_sets": [
"lowercase",
"uppercase",
"digits",
"symbols"
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/security/password-entropy-estimate",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"length": 16,
"character_sets": [
"lowercase",
"uppercase",
"digits",
"symbols"
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/security/password-entropy-estimate", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"length":16,"character_sets":["lowercase","uppercase","digits","symbols"]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"length":16,"character_sets":["lowercase","uppercase","digits","symbols"]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/security/password-entropy-estimate", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"length": 16,
"character_sets": [
"lowercase",
"uppercase",
"digits",
"symbols"
]
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "security.password_entropy_estimate",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |