Essas podem ser fáceis ou difíceis de serem adivinhadas.
O ideal é que nossa senha seja uma dentre várias, que não permita a um atacante adivinha-la facilmente. Quando criamos uma senha, o número de possíveis senhas é dado pela quantidade de caracteres possíveis elevado ao número de caracteres da senha. Ou seja, se fossemos fazer uma senha de quatro caracteres numéricos (de 0 a 9) nos poderíamos ter no máximo 10^4 senhas, ou seja: 10.000 senhas diferentes. Se fossemos tentar adivinhar essas senhas manualmente essa poderia ser até uma quantidade segura, mas com a tecnologia disponível hoje em dia isso é pouco.
Quando criamos uma senha que tem somente letras minúsculas nós temos um total de 26 caracteres disponíveis, veja na tabela abaixo o número de senhas possíveis, a depender do comprimento da senha:
#Caracteres
|
#Senhas
|
4
|
456.976
|
5
|
11.881.376
|
6
|
308.915.776
|
7
|
8.031.810.176
|
8
|
208.827.064.576
|
Note o aumento do número de senhas. Cada vez que colocamos mais um carácter em nossa senha, multiplicamos o número de possíveis senhas por 26. Quando vamos de 4 caracteres para 8 nós aumentamos o número de senhas em mais de 405.000 vezes!!!
Agora vamos ver o que acontece quando passamos a usar letras maiúsculas, além das minusculas, para compor nossa senha:
#Caracteres
|
#Senhas
|
4
|
7.311.616
|
5
|
380.204.032
|
6
|
19.770.609.664
|
7
|
1.028.071.702.528
|
8
|
53.459.728.531.456
|
Com oito caracteres temos mais de 53 TRILHÕES de possíveis senhas. Que diferença das cerca de 450.000 mil senhas que tínhamos no começo, não?
Quanto mais tipos de caracteres compõe nossas senhas, mais aumentamos a dificuldade de ataques, ou seja, devemos tornar nossas senhas o mais “complexas” possível. Senhas complexas são aquelas compostas por diversos “conjunto de caracteres”. Os conjuntos de caracteres são: letras minúsculas, letras maiúsculas, números e caracteres especiais (!, @, #, $, etc).
Vejam o número possível de senhas quando usamos todos esses conjunto de caracteres:
#Caracteres
|
#Senhas
|
4
|
18.974.736
|
5
|
1.252.332.576
|
6
|
82.653.950.016
|
7
|
5.455.160.701.056
|
8
|
360.040.606.269.696
|
Como vamos ver na seção que trata de ataques de força bruta, mesmo tendo 360 trilhões de senha, senhas de 8 caracteres podem ser quebradas em menos de 15 dias, usando os recursos computacionais comuns, disponíveis atualmente.
Senhas ditas seguras, hoje em dia, possuem pelo menos, 20 caracteres. Mas isso são senhas de padrão militar, que preveem ataques e que se comprometidas podem causar a perda de vidas. Para o nosso uso diário, senhas de 10 a 12 caracteres são suficientemente seguras e também não são difíceis de lembrarmos.
Uma dica para criar senhas complexas
Uma dica que eu costumo sempre usar para criar novas senhas é fazê-las baseadas nas iniciais de uma frase, que eu sei que vou lembrar.
Por exemplo, se eu precisasse hoje de uma nova senha eu podia criar uma frase simples como.
Esse blog de Segurança está dando muitas Informações uteis!
Com base nessa frase eu pegaria as iniciais de cada palavra (eu coloquei as palavras Segurança e Informações em maiúsculas de proposito, para termos letras maiúsculas na nossa senha), para compor a senha. Então teríamos a seguinte senha:
EbdSedmIu!
A senha está bem aleatória e tem 3 conjuntos de caracteres, mas ainda falta colocar números nessa senha. Para fazer isso podemos trocar algumas letras por números. Normalmente essa troca é feita trocando letras por números que se parecem com elas. Substituições comuns são trocar o E pelo 3 e o S pelo 5, e o A pelo 4, por exemplo. Se aplicarmos essa ideia na nossa senha acima acabamos com a seguinte senha:
EbdS3dmIu!
Note que essa senha atende todos os requisitos que colocamos acima: tem vários tipos de caracteres, é aleatória (para quem vê de fora), e tem 10 caracteres. Do mesmo jeito que criamos essa senha podemos criar muitas outras.
No próximo post vou falar sobre os possíveis ataques as senhas, e aí sim, vamos ver o quão fracas senhas mal pensadas realmente são.