As senhas continuam sendo um dos métodos de autenticação mais utilizados na era digital, mas você sabia que muitas políticas de senhas tradicionais são, na verdade, contraproducentes?

Emitido pelo NIST (Instituto Nacional de Padrões e Tecnologia)SP 800-63B-4fornece as diretrizes mais recentes sobre segurança de senhas e inclui conteúdo que contradiz a sabedoria convencional (há muito aceita como conhecimento comum entre especialistas). Este artigo fornece uma explicação de fácil compreensão da essência deste importante documento para os responsáveis ​​por sistemas de autenticação de usuários baseados em senhas em empresas, bem como para os responsáveis ​​pela definição dessas políticas e gerentes.

Duas categorias de senhas

O NIST SP 800-63B-4 classifica as senhas em dois tipos:

1. Senhas Segredos validados no lado do servidor, enviados ao servidor após o login e validados centralmente.

2. Segredos de ativação Segredos verificados localmente no dispositivo, como um PIN de desbloqueio do smartphone, nunca são enviados a um servidor.

Novos requisitos que derrubam o "senso comum" convencional

❌ Coisas que você não deve fazer

Nenhuma alteração periódica forçada de senha

  • Não é mais recomendado aplicar alterações de senha a cada 90 dias
  • As alterações só devem ser solicitadas se houver evidências de violação
  • Motivo: Mudanças frequentes fazem com que os usuários escolham senhas previsíveis e fracas

OBSERVAÇÃO: Alguns consultores dizem que isso é frequentemente exigido por SGSI e similares, mas isso é um erro. A ISO/IEC 27002 não diz nada sobre isso; na verdade, diz: "Exigir a troca frequente de senhas pode ser problemático". (Na verdade, eu escrevi o texto sobre isso por volta de 2013. Observe que também há casos em que as senhas precisam ser alteradas.)

Nenhuma imposição de requisitos de complexidade

  • NÃO deverá impor requisitos como "deve conter letras maiúsculas e minúsculas, números e símbolos"
  • Foi declarado que é prejudicial
  • Justificativa: Tais requisitos levam os usuários a usar padrões previsíveis como "Senha1!"

Desativar dicas de senha

  • Não use dicas ou perguntas de segurança como "Qual é o nome de solteira da sua mãe?"
  • Essas são fontes valiosas de informação para invasores. Aliás, há uma alta probabilidade de que essas informações sejam conhecidas em vários lugares, então seria terrível se eles pudessem usá-las para redefinir métodos de autenticação.

✅ Requisitos recomendados

1. Comprimento da senha

  • Autenticação de fator único: mínimo de 15 caracteres
  • Parte da autenticação multifator: mínimo de 8 caracteres
  • Comprimento máximo: deve permitir 64 caracteres ou mais

O comprimento é a chave para a força.É como substituir partes de palavras-chave comuns em senhas por regras comuns de substituição de símbolos (a → @, o → 0, s → 5, etc.)."Correct horse battery staple" é muito mais poderoso do que "P@ssw0rd".Esta é uma discussão um pouco detalhada, portanto, se você estiver interessado nos detalhes, consulte o final do artigo.Anexo APor favor, consulte.

OBSERVAÇÃO: A atual ISO/IEC 27002 inclui uma declaração de que combinações de palavras de dicionário devem ser excluídas (C) 2) em 5.17 Responsabilidades do usuário). Isso é um descuido meu. Elas devem ser eliminadas na próxima edição.

2. Flexibilidade nos tipos de personagens

  • Aceita todos os caracteres ASCII imprimíveis e espaços
  • Caracteres Unicode (japonês, emoji, etc.) também devem ser suportados.
    OBSERVAÇÃO: Para ser honesto, não gosto disso, porque levanta a questão da normalização Unicode (aliás, é OBRIGATÓRIO realizar a normalização NFC).
  • Isso permite que os usuários criem senhas fortes e fáceis de lembrar.

3. Implementando uma lista de bloqueio

Os validadores devem verificar uma lista de bloqueio que inclui:

  • Senhas vazadas em violações anteriores
  • Palavras do dicionário
  • Informações específicas do contexto, como nomes de serviços e nomes de usuários
  • Senhas comuns como "123456" ou "password"

Se você estiver em uma lista de bloqueio, explicaremos o motivo da rejeição e permitiremos que você escolha uma senha diferente.

4. Suporte ativo para gerenciadores de senhas

  • Permitir uso do gerenciador de senhas (obrigatório)
  • Suporta função de preenchimento automático
    OBSERVAÇÃO: É necessário usar um gerenciador de senhas. Recentemente, houve um aumento no número de sites no Japão que não permitem isso, o que é um mistério...
  • Habilitar a função de colar
    OBSERVAÇÃO: O mesmo que acima
  • Por quê: Os gerenciadores de senhas permitem que os usuários usem senhas fortes e exclusivas para cada serviço.
    OBSERVAÇÃO: Além disso, muitos gerenciadores de senhas validam a URL que você envia a eles, o que é importante para a resistência a phishing.

5. Melhor experiência do usuário

  • Fornece uma opção de exibição de senha (para que você possa vê-la enquanto digita)
  • Isso reduz erros de digitação e frustração dos usuários.
    OBSERVAÇÃO: Isto é especialmente importante para smartphones.

Requisitos do lado do servidor: armazenamento seguro

Também há requisitos rigorosos quanto ao armazenamento de senhas:

Itens obrigatórios

  • Use um bom esquema de hash de senha
  • Use pelo menos um salt de 32 bits
  • Armazene tanto o sal quanto o haxixe
  • Armazenado em um formato resistente a ataques offline

Recomendações

  • Uma operação de criptografia adicional usando uma chave privada conhecida apenas pelo verificador
  • Esta chave privada é armazenada separadamente da senha com hash.

Requisitos do Segredo de Ativação (PIN)

Também há requisitos para segredos usados ​​no dispositivo, como um PIN de desbloqueio do smartphone:

  • Pelo menos 4 caracteres (recomenda-se 6 ou mais caracteres)
  • Pode ser inteiramente numérico
  • Limite as tentativas consecutivas com falha para 10 ou menos
  • É recomendável implementar uma lista de bloqueio de PINs comuns (por exemplo, 123456).
  • No nível AAL3, é necessária a verificação em um ambiente protegido por hardware (elemento seguro, TPM, TEE, etc.).

Impacto da implementação

Esses requisitos afetam tanto os provedores de serviços quanto os usuários:

Para prestadores de serviços

  • As políticas de senha existentes precisam ser revisadas
  • Implementando a função de lista de blocos
  • Garantindo o suporte do gerenciador de senhas
  • Reestruturando a educação do usuário

para usuários

  • Agora você pode escolher senhas mais fáceis de lembrar
  • É recomendado usar um gerenciador de senhas
  • Livre-se de mudanças periódicas desnecessárias
  • Melhor experiência do usuário

ま と め

O NIST SP 800-63B-4 fornece políticas de senhas baseadas em evidências que equilibram segurança e usabilidade. Os pontos principais incluem:

  1. O comprimento determina a força – Comprimento sobre complexidade
  2. Não há necessidade de trocá-lo regularmente – Não force mudanças sem evidências de violação
  3. Utilizando listas de bloqueio – Bloqueie proativamente senhas fracas conhecidas
  4. Gerenciador de senhas recomendado – Apoiar os utilizadores com tecnologia
  5. Foco na experiência do usuário – Segurança e usabilidade podem coexistir

As senhas continuarão a desempenhar um papel vital no gerenciamento de identidades digitais, e seguir as orientações do NIST SP 800-63B-4 ajudará você a criar um sistema mais seguro e fácil de usar.

A política de senhas da sua organização ou serviço está em conformidade com esses padrões mais recentes? Talvez seja hora de reavaliar.

(Também estou planejando fazer um vídeo no YouTube com foco mais técnico, não um curta. Fique ligado.)

No fim, não consegui entrar em muitos detalhes, mas fiz um vídeo para o YouTube. Espero que gostem. (Achei que seria melhor fazer uma transmissão ao vivo enquanto respondia às perguntas, pois levaria menos tempo, mas estou em um fuso horário diferente da Costa Oeste.)

Assista a este vídeo no YouTube.
Ao reproduzir o vídeo, você será conectado ao YouTube.

Apêndice A: Força da Senha

@yunishio me chamou a atenção para isso em um tweet (postagem de X), e achei que certamente era enganoso, então adicionei ao texto principal.SublinhadoAdicionei o seguinte e fornecerei mais detalhes abaixo.

Está bem feito, mas tem um erro fatal.

→ "grampo de bateria de cavalo correto" é muito mais poderoso do que "P@ssw0rd".

Este último só tem capacidade para conter cerca de 8 caracteres alfanuméricos.

NIST SP 800-63B-4: Decifrando o novo padrão de segurança de senhas https://t.co/ZaZ5iiMiE2 via @_nat

— yunishio (@yunishio) 6 de novembro de 2025

Primeiramente, como informação adicional, a frase "correct horse battery staple" mencionada neste artigo foi usada como exemplo de uma "senha longa e fácil de lembrar" no episódio 936, "Password Strength" (agosto de 2011), da webcomic americana "xkcd", que visa conscientizar sobre a força das senhas. Essa frase tornou-se um símbolo nas discussões sobre a força das senhas e representa uma figura histórica que, de fato, promoveu o uso de senhas. Por outro lado, essa senha deve ser naturalmente incluída na lista de bloqueio ao registrar uma senha.

Agora, como acrescentei ao texto principal, a norma SP800-63-4 afirma que, se você solicitar uma combinação de símbolos ou números, está comprovado que isso resultará em palavras comuns com as regras de substituição comuns aplicadas, portanto, você deve parar de fazer isso. Levando isso em consideração, calcularemos a entropia.

Vamos começar com a senha.

Cálculo da entropia de frases-palavras

Primeiro, vamos entender a fórmula básica.

Entropia (bits) = log⁡2(tamanho do espaço de teste).
Se o número de espaços de teste for X, a quantidade de informação será logaritmo.⁡2(​X) bit.

tamanho do dicionário N から k Ao escolher uma palavra aleatoriamente:

H = k log⁡2(N)

と な り ま す.

  • N=3,000: logaritmo por palavra⁡2(3000)≈11.55 bits
    → 4 palavras: 4 × 11.55 ≈ 46.20 bits
  • N=25,000 (contagem aproximada de palavras no Cambridge Concise English Dictionary): log⁡ por palavra2(25000)≈14.61 bits
    → 4 palavras: 4 × 14.61 ≈ 58.44 bits

Isso corresponde aproximadamente a 46.20 a 58.44 bits.

Por outro lado, se você quiser selecionar aleatoriamente 8 caracteres dentre os 62 caracteres alfanuméricos (a–z, A–Z, 0–9),

  • log⁡2(62) ≈ 5.9542 bits/caractere
  • → 8×5.9542≈47.63≈47.63 bits

O conteúdo informativo de dois caracteres alfanuméricos é 2×log⁡2(62)≈11.912 bits, então uma palavra (dividida igualmente em 3,000 palavras) tem ≈11.55 bits, o que é de fato "quase dois caracteres", como disse @yunishio.

Mas a questão aqui não é comparar 62 caracteres escolhidos aleatoriamente com sua senha.

Conforme mencionado acima, o NIST destaca que forçar o uso de maiúsculas e minúsculas tende a resultar em senhas comuns processadas usando regras de substituição comuns, e é isso que estamos comparando.

Em seguida, vamos considerar a eficácia dos métodos comuns de substituição de senhas.

Modelo do tipo "P@ssw0rd" (quando um atacante tenta um dicionário + regra de substituição)

Modele o número de tentativas que um atacante utiliza:

Número de tentativas =B×S×C

  • BNúmero de palavras-chave a serem consideradas (ex.: top 1, top 100, top 1,000, top 10,000)
  • SNúmero de padrões de substituição (ex.: conversão Leet) (ex.: 5, 10, 30, 100)
  • CNúmero de padrões de mudança entre maiúsculas e minúsculas (ex.: 1, 2, 4)

Cálculo usando combinações representativas (log)⁡2(expandido abaixo):

  1. Muito específico (direcionado: apenas essa palavra, com poucas substituições)
    • B=1, S=10, C=2 → número de tentativas = 1×10×2=20
      log⁡2(20)≈4.32 bits
  2. Os atacantes usam pequenas listas de palavras comuns.
    • B=100, S=10, C=2 → número de tentativas = 2,000
      log⁡2(2000)=log⁡2(2×1000)=1+log⁡2(1000)≈1+9.96578=10.97 bits
  3. Dicionário maior, porém mais realista, com mais opções de substituição.
    • B=1000, S=30, C=2 → número de tentativas = 60,000
      log⁡2(60,000)=log⁡2(1000+log⁡2(30)+log⁡2(2)≈9.96578+4.90689+1=15.87 bits
  4. Se o atacante tentar uma lista relativamente grande + substituição
    • B=10,000, S=30, C=4 → número de tentativas = 1,200,000
      log⁡2(1,200,000)≈20.19 bits
  5. Padrão de substituição extremamente amplo (pior caso)
    • B=10,000, S=100, C=4 → número de tentativas = 4,000,000
      log⁡2(4,000,000)≈21.93 bits

Em qualquer modelo realista, a "deformação do sistema P@ssw0rd" é Até cerca de 20 a 22 bitsEm muitos casos, a taxa de crescimento é de apenas 100% (geralmente muito menor).

つ ま り,Entropia de uma senha de 4 palavras46.20 a 58.44 bits > Entropia de padrões de substituição de caracteres como "P@ssw0rd" 4.32 a 21.93 bits,Entropia de uma senha de 4 palavrasはEntropia de padrões de substituição de caracteres よ りordem de magnitude maior, esse é o ponto crucial aqui.

Aliás, senhas são algo que você precisa memorizar e, mesmo nesse caso, precisa escolher aleatoriamente uma palavra de um vocabulário amplo o suficiente. Se usar um dicionário, terá que abri-lo aleatoriamente, fechar os olhos, apontar para uma página e selecionar a entrada, repetindo esse processo quantas vezes forem necessárias. Bem, isso é um saco, então é mais fácil ter um gerenciador de senhas com função de geração de senhas que escolha uma para você.

Aquilo que você não precisa lembrar (na maioria das vezes)Use um gerenciador de senhas para criar uma sequência aleatória de 15 caracteres ou mais.をRecomendaçãoBem, em resumo,Utilize um gerenciador de senhas, que facilita a migração de chaves de acesso.É nisso que tudo se resume.