Hai unha busca que se repite moito: ideas para un contrasinal. E enténdese, porque o formulario está aí agardando, hai que inventar algo e ninguén che explicou nunca como se fai.
O problema é que a palabra ideas xa é o fallo. Un bo contrasinal non é unha boa idea. É un contrasinal que non ten ningunha idea detrás.
E isto non é unha frase bonita para abrir un artigo: é literalmente como funciona un ataque.
A lista de ideas que se che ocorren é a que el proba primeiro
Un ataque por dicionario non empeza en aaaaaaaa e vai subindo. Empeza polos
contrasinais que xa se filtraron millóns de veces, segue polos nomes propios, os
nomes comúns, as cidades, os equipos de fútbol e os anos de catro cifras. E
enriba desa base aplica regras: maiúscula ao principio, cifra ou ! ao final, o
a por @, o e por 3, o o por 0, a palabra ao revés, a palabra repetida
dúas veces.
Esas regras non son ningún segredo nin ningunha novidade. Levan décadas escritas e veñen de serie en calquera ferramenta de ataque. Dito doutro xeito: o catálogo de ocorrencias que ti chamarías «ideas para un contrasinal» é, máis ou menos ordenado, o ficheiro de configuración de quen te ataca.
De aquí en diante, todas as cifras saen do comprobador da casa, que asume un ataque offline a 10¹² intentos por segundo contra un hash rápido. Iso está escrito debaixo do resultado, e sen ese dato ningún tempo significa nada. Podes reproducir cada número ti mesmo: escribe o exemplo e mira.
Idea unha: o teu nome e o ano en que naciches
Marta1985. Nove caracteres, unha maiúscula, catro cifras. Cumpre o que esixe
media internet.
O comprobador párteo en dous dunha ollada: «Está nos nosos dicionarios» para
Marta, «Semella un ano ou unha data» para 1985. Resultado: 892.400
intentos, que a ese ritmo son menos dun segundo.
E fíxate en por que son 892.400 e non un número astronómico. Non é que sexa curto. É que non son nove decisións, son dúas: que nome e que ano. Os nomes frecuentes cóntanse por milleiros; os anos que a xente pon realmente nun contrasinal, por ducias. Multiplicas e xa está: escribiches nove caracteres e escolliches entre menos dun millón de contrasinais posibles.
Idea dúas: cambiar o «a» por unha arroba
Este é o truco que todo o mundo cre que funciona, e o que envellece peor.
M@rt@1985 dá 1,8 millóns de intentos. Subiu, si: exactamente ao dobre. E o
dobre de nada segue sendo nada —o comprobador segue medíndoo en menos dun
segundo—, porque a substitución non creou un contrasinal novo: só engadiu unha
pregunta binaria que o atacante xa tiña prevista, se esa persoa cambiou o a ou
non.
Fíxate en que o comprobador nin sequera cambia o veredicto: segue dicindo «Está nos nosos dicionarios», agora coa coletilla con números no canto de letras. Atopou a palabra igual.
Se queres ver ata onde chega o asunto, proba o exemplo canónico. P@ssw0rd, coa
súa maiúscula, a súa arroba, o seu cero e o seu aire de estar ben pensado, cae en
17 intentos. Dezasete. Cóntase cos dedos de dúas mans e un pouco de
paciencia.
Idea tres: escribilo ao revés
atram1985 dá 892.400 intentos. O mesmo número, ata a última cifra, que
Marta1985.
Non é que investilo axude pouco. É que non cambia absolutamente nada. Investir a palabra é unha das regras que o dicionario trae de serie, así que o comprobador atópaa igual e etiquétaa igual, esta vez coa coletilla escrito ao revés.
O mesmo con repetilo: MartaMarta baixa a 17.651 intentos —escribir o dobre
de letras déixate peor ca antes, porque «repite un anaco» tamén é un patrón con
nome propio.
Idea catro: baixar polo teclado cos dedos
Cando alguén non quere pensar, mira o teclado e percorre unha forma. Sae
qwerty123, ou 1qaz2wsx, ou 1q2w3e4r, ou asdfghjkl.
Sente aleatorio porque non significa nada. Pero o teclado ten unha xeometría fixa e moi pequena, e percorrela é xustamente o que un programa fai mellor ca ti:
qwerty123→ 273 intentos.1qaz2wsx→ 29 intentos.
Vinte e nove. Estes contrasinais están tan gastados que nin sequera fan falta as regras de teclado: aparecen tal cal nas listas de contrasinais filtrados, e o comprobador despáchaos cun seco «Está nos nosos dicionarios».
Idea cinco: o can, e a data que nunca se esquece
Toby2015! é un contrasinal con biografía: o nome do can, o ano en que chegou á
casa e unha exclamación para contentar o formulario. Dá 1,2 × 10⁸ intentos, e
segue sendo menos dun segundo.
Os nomes de mascota máis comúns son uns poucos milleiros, e están nas mesmas
listas que os nomes de persoa. O ! final achega o que achega unha regra que
todo o mundo aplica: nada.
Coa data sinalada é aínda máis incómodo. 24121985 —un día, un mes, un ano— lese
como oito cifras, pero o comprobador etiquétao «Contén unha data» e resólveo en
14.966 intentos. A razón é de calendario: hai 31 días, 12 meses e un século
longo de anos plausibles. Oito díxitos que semellan dez millóns de combinacións
son, en realidade, uns quince mil.
Esa é a trampa da data: dache lonxitude sen darche incerteza, e a incerteza é o único que se paga.
Idea seis: a matrícula do coche, e o que o comprobador non pode ver
4521KDR é outro caso, e paga a pena parar.
Aquí o comprobador di «Non atopamos ningún patrón coñecido» e calcula 3,9 × 10¹⁰ intentos. Pero marca ese número como un teito, e esa palabra é a parte importante: non atopou o teu patrón, o que non demostra que non o teñas. Aínda así, e sendo xeneroso, o tempo segue sendo menos dun segundo.
E aí está o oco que hai que entender. O comprobador non sabe que coche tes. Quen te coñece, quen ten o teu Instagram diante ou quen mercou un volcado de datos onde figura a túa matrícula, non necesita 3,9 × 10¹⁰ intentos: necesita un. O número que ves cando non hai patrón mide a ignorancia dun descoñecido, non a de alguén que te buscou.
O mesmo vale para o número do portal, o DNI, o teléfono e a data da voda.
O que teñen en común as seis
Ningunha destas ideas falla por ser «pouco complexa». Todas fallan polo mesmo: son autobiografía, e a autobiografía adivíñase. O teu nome, o teu ano, o teu can, o teu coche, a túa maneira de percorrer o teclado. Cada unha desas decisións parece túa e persoal, e precisamente por iso pertence a unha lista curta que alguén xa escribiu.
Engadirlle complexidade non arranxa nada, porque a complexidade que aplicas ti
tamén é unha decisión túa e tamén está na lista. Por iso M@rt@1985 sobe un
mísero factor dous e atram1985 non sobe nin iso.
Se queres o argumento en números, está nos bits de entropía: o que conta non é cantos contrasinais poderías ter escrito, senón cantos quedan unha vez descontado todo o que se sabe dos teus gustos.
A saída non é ter unha idea mellor: é deixar de ter ideas
A única forma de saír da lista é que o contrasinal non saia da túa cabeza.
Iso é exactamente o que fai o Diceware: tiras cinco dados, buscas o número nunha lista de 7.776 palabras e anotas o que sae. Cada tirada vale 12,9 bits, e son 12,9 de verdade, porque os dados non teñen gustos nin memoria nin o teu ano de nacemento. Seis palabras son uns 77 bits.
Métea no comprobador e verás o que cambia: seis palabras correntes tiradas a dados pasan de «Moi débil» a «Moi forte», e o tempo deixa de medirse en segundos. Non porque sexan rebuscadas —non o son, son seis palabras normais— senón porque é o único do teu contrasinal que non decidiches ti. Se prefires que os tire o navegador, o xerador fai o mesmo sorteo e ensínache os bits mentres o fai.
Así que a resposta honesta a «dáme ideas para un contrasinal» é que non as necesitas, e que ademais che sobran. O que che falta é un dado.
Fontes: todas as cifras deste artigo saen do comprobador de password.es, que declara o seu modelo debaixo do resultado —10¹² intentos por segundo, ataque offline, hash rápido— e son reproducibles escribindo cada exemplo en /gl/comprobador/ · o motor de análise de patróns é zxcvbn, de Daniel Lowe Wheeler (Dropbox), presentado en USENIX Security 2016 como «zxcvbn: Low-Budget Password Strength Estimation» · as regras de substitución, inversión e repetición que se citan son as que traen de serie as ferramentas de ataque por dicionario · Arnold G. Reinhold, «The Diceware Passphrase Home Page» (1995), para as 7.776 palabras e os 12,9 bits por tirada.
Foto de RDNE Stock project · Pexels