100 senhas — como é guardada muda a resposta mais que o comprimento
Bits de entropia e tempo até quebrar para cada cruzamento de 10 conjuntos de caracteres e 10 comprimentos. As velocidades não são inventadas: são medições publicadas do hashcat numa única RTX 4090.
ASCII completo com símbolos 12 · 78.7 bit
- NTLM (Windows)26136.9 anos
- MD545950.7 anos
- SHA-256343132.2 anos
- WPA2 Wi-Fi10^9.5 anos
- bcrypt10^10.6 anos
O que um caractere carrega
O que um caractere carrega é o logaritmo do tamanho do alfabeto: 3,3 bits só com dígitos, 4,7 com minúsculas, 6,6 com os 94 caracteres ASCII imprimíveis. A força total é isso vezes o comprimento, por isso alongar costuma vencer variar: mais um caractere ASCII rende 6,6 bits, enquanto ir de minúsculas ao ASCII completo rende só 1,9 bit por caractere.
Como o site a guardou
A mesma senha pode variar por um fator de um milhão conforme foi guardada. Uma RTX 4090 testa 288,5 bilhões de hashes NTLM por segundo e 164,1 bilhões de MD5, mas só 184 mil de bcrypt — lento de propósito. Oito caracteres ASCII com símbolos caem em menos de três horas com NTLM e aguentam mais de 500 anos com bcrypt. E quem digita a senha não escolhe qual.
Uma sílaba hangul vale dois caracteres ASCII
O bloco padrão de hangul tem 2.350 sílabas. Contando cada sílaba como um caractere, ela carrega 11,2 bits — 1,7 vez um caractere ASCII. Oito sílabas hangul superam treze caracteres ASCII e ficam abaixo de catorze. O porém é que muitos sistemas as rejeitam e sem teclado adequado não dá para digitar.
O que esta tabela conta e o que não
Os tempos aqui supõem uma senha **escolhida ao acaso** varrida do início ao fim. Senhas feitas por pessoas não duram tanto: palavras de dicionário, sequências de teclado, datas de nascimento e o ! ou 1 no fim são tentados primeiro. “P@ssw0rd!” conta 59 bits com nove caracteres ASCII, mas cai em segundos. No sentido oposto, várias placas dividem o tempo pelo número delas.
O acidente comum não é a quebra
Bem mais comum é uma senha vazada de um site ser testada em outro. Uma que levaria anos cai no dia em que o site mais fraco é invadido, se foi usada nos dois. Não reutilizar e ativar um segundo fator vêm antes de aumentar o comprimento.
Ache por alfabeto e comprimento
Tamanho do alfabeto · Comprimento
só dígitosTamanho do alfabeto 10
hexadecimalTamanho do alfabeto 16
só minúsculasTamanho do alfabeto 26
Base32Tamanho do alfabeto 32
minúsculas + dígitosTamanho do alfabeto 36
maiúsculas e minúsculasTamanho do alfabeto 52
letras + dígitosTamanho do alfabeto 62
Base64Tamanho do alfabeto 64
ASCII completo com símbolosTamanho do alfabeto 94
sílabas hangulTamanho do alfabeto 2350
Como ler
- Bits por caractere = log2(tamanho do alfabeto). Multiplique pelo comprimento.
- Tempo até quebrar = metade das combinações ÷ tentativas por segundo.
- As velocidades são medições publicadas do hashcat numa RTX 4090.
- Supõem senha aleatória. As feitas por pessoas caem bem antes.
- NTLM (Windows)2.89e+11 /s
- MD51.64e+11 /s
- SHA-2562.20e+10 /s
- WPA2 Wi-Fi2.53e+6 /s
- bcrypt1.84e+5 /s
Perguntas frequentes
QQuantos caracteres são seguros?
Depende de como é guardada. Doze caracteres ASCII com símbolos são 78,7 bits: 26 mil anos com NTLM, 41 bilhões com bcrypt. Com oito, o NTLM cai em menos de três horas.
QMais comprimento ou mais símbolos?
Em geral comprimento. Mais um caractere ASCII soma 6,6 bits; ir de minúsculas ao ASCII completo soma só 1,9 bit por caractere.
QEm hangul é mais forte?
Cada sílaba carrega 11,2 bits, 1,7 vez um caractere ASCII. Mas poucos sistemas aceitam e sem teclado não dá para digitar.
QEsses tempos são reais?
Supõem senha aleatória varrida por inteiro. As feitas por pessoas caem bem antes com ataques de dicionário.
QO que mais importa?
Não reutilizar. Testar em outro site uma senha vazada é um ataque bem mais comum que quebrar uma.