Site Meter Senhas longas são mais fortes que senhas complexas - Segurança na Microsoft - Site Home - TechNet Blogs

Segurança na Microsoft

Comentários e Análises sobre Segurança da Informação, por Fernando Cima

Senhas longas são mais fortes que senhas complexas

Senhas longas são mais fortes que senhas complexas

  • Comments 4
  • Likes

No meu post anterior sobre políticas de senha, eu argumentei que os fatores mais importantes para se ter uma senha forte eram o seu tamanho e complexidade  (complexidade sendo aqui a exigência de maiúsculas, minúsculas, números e símbolos). Outros fatores normalmente exigidos em políticas de senha, como a troca períodica, não acrescentam realmente tanto valor em termos de segurança.

Outro ponto que eu mencionei foi a necessidade da senha ser fácil de ser lembrada. Uma dica é o uso de passphrases, frases completas compostas de palavras de uso normal, que são ao mesmo tempo longas e complexas. Por exemplo, Mengaocampeao2006 seria uma senha longa, complexa e fácil de lembrar. Vascocampeao2006 também - e o absurdo da frase garante que ninguém mesmo iria adivinhá-la!

Mas qual seria o mais importante, complexidade ou tamanho? Um artigo da Infoworld responde a pergunta: tamanho. No artigo Roger Grimes conta que criou três senhas, uma curta e complexa, outra longa e sem complexidade, e uma terceira tanto longa quanto complexa. Em seguida publicou os hashes NT das três, e lançou um desafio público para que fosem quebrados. 

Resultado: a senha curta e complexa (S10wDr1v3r) foi quebrada em três semanas. As outras duas continuam incógnitas - inclusive a senha simples mas longa, que segundo ele é composta de palavras simples em inglês e tem quinze letras, todas minúsculas. Na próxima reavaliação da sua política de senhas, quem sabe valha a pena retirar a impopular exigência de complexidade, e aumentar o tamanho mínimo.

 

Comments
  • Olá Cima,

    mto bom o post, gostei. Resolve, dentre outras coisas, um problema que incomoda muitos usuários, ainda mais os que não tem tanta experiência: a senha de 8 complexa caracteres. É realmente mais difícil memorizar uma senha complexa do que uma longa que seja mais simples.

    Só pra tornar o resultado do teste mais palpável, resolvi pedir ajuda pra minha namorada (que faz Mat. Aplicada/USP. Obrigado amor!) pra validar meu raciocínio:

    - Senha complexa: 94 caracteres possíveis, segundo link que você passou. Vou usar 100 pra facilitar as contas no meu exemplo, o que teoricamente deixa a senha complexa mais complexa ainda (até porque nem sei quais são esses 6 caracteres a mais...)

    - Senha simples: 26 caracteres (tô desconsiderando o cedilha).

    Usando esses dados, uma senha complexa de 8 caracteres tem, portanto, 100^8 = 10 quatrilhões. Uma simples de 11 caracteres tem 26^11 = pouco mais* que 3 quatrilhões. Só que, se você pegar 12 caracteres, esse número passa pra mais de 95 quatrilhões... e portanto a senha simples de 12 dígitos é só umas nove vezes e meia mais forte que a complexa de 8. No exemplo do artigo ele usa uma de 15, que passa de 1 sextilhão (nem sei se a palavra certa é essa). O desafio dele era, na verdade, uma complexa de 10 contra uma simples de 15, mas a de 10 daria 10 quintilhões, que continua sendo cerca de 16x mais fraca que a de 15. Ele sabia que a chance de perder os 100 dólares era pequena.

    No entanto, devemos tomar um certo cuidado. Incentivar senhas simples também pode complicar o trabalho se as senhas forem passphrases. Caso o programa usado pra quebrar a senha tenha um ótimo dicionário (nos termos da Física, um dicionário ideal =), o tempo pra se quebrar as senhas fica menor. Mesmo assim, o testador não tem como descobrir que a senha é uma passphrase, e um caractere fora do padrão dele complica tudo. Por outro lado, se tiver mais de um computador testando o hash, o tempo necessário para quebrar cai pela metade... e assim por diante quanto maior o número de computadores. Como vocês podem ver, as possibilidades de mudança no teste são grandes, e isso passa a não ter muita validade se você quiser levar em conta todas elas.

    Em resumo: senhas simples entre 15 e 17 caracteres são muito melhores do que as complexas de 8. Adicione à isso uma política de troca de senhas a cada dois meses, você estará "matematicamente seguro" contra o poder de processamento dos computadores dos dias de hoje.

    Abraços e parabéns. Essa vai pro meu blog também.

    --

    Vinicius Canto

    MVP Visual Developer - Scripting

    MCP Windows 2000 Server, Windows XP e SQL Server 2000

    Blog sobre Scripting: http://viniciuscanto.blogspot.com

    *pouco mais aqui foi uma ironia... qualquer arredondamento com números dessa ordem dá bastante diferença.

  • Oi Vinicius, obrigado pelo post e pela interessante explicação matemática.

    Realmente podemos expressar a o número de combinações possíveis na forma m^n, onde m seria a complexidade e n o tamanho da senha. O número de combinações cresce muito mais quando aumentamos n do que m. C.Q.D.

  • Fernando, a mais de um ano eu coloquei um post no meu blog sobre o assunto, dá uma olhada pode servir como referencia para interessados..

    http://int80h.blogspot.com/2005_08_01_int80h_archive.html

    Abraços

Your comment has been posted.   Close
Thank you, your comment requires moderation so it may take a while to appear.   Close
Leave a Comment