I18n e senhas que são não US-ASCII, Latin1, ou Win1252

votos
3

Como você lida com senhas para os serviços quando o usuário digita algo que é melhor representada em Unicode ou alguma outra codificação de caracteres não-latinos?

Especificamente, você pode usar uma senha cirílico como uma senha para o Oracle? O que você faz para verificar a senha de um usuário contra um mecanismo de autenticação do Windows se a senha é fornecida como UTF-8?

Eu tenho algumas idéias sobre como isso deve ser tratado em nosso código, mas eu estou procurando conselhos de outras pessoas para garantir que a direção é som.

Publicado 09/12/2008 em 22:39
fonte usuário
Em outras línguas...                            


2 respostas

votos
1

A codificação em si não deve representar um problema sobre a criptografia, a maioria dos algoritmos operar em bytes, não em caracteres. A única coisa que poderia ser um problema é: A codificação da mesma palavra-passe com diferentes codificações poderia dar lugar a valores diferentes se exóticos (não ASCII) caracteres são usados ​​na palavra-passe. Convertendo a senha para uma codificação fixa (como UTF8) deve resolver esse problema, no entanto.

Respondeu 10/12/2008 em 11:08
fonte usuário

votos
1

Você pode ter problemas com as restrições de comprimento mecanismos de autenticação.

por exemplo, se o sistema especifica um comprimento máximo de 12 bytes, esta poderia ser facilmente ultrapassado por cinco caracteres chineses em utf-8, este não é um problema como tal, porque quatro caracteres chineses devem ter entropia suficiente, mas, é preciso ter cuidado com messsages erro.

Outros problemas podem surgir se o mechnism autenticação impõe regras como "pelo menos um cada um de maiúsculas, minúsculas, pontuação e caracteres numéricos" - várias línguas não têm mais baixos caracteres maiúsculas /, e há dezenas caracteres definidos em unicode que um nativo falante pensaria em como números, mas pode não ser reconhecido como tal por uma regra mal implementado.

Respondeu 10/12/2008 em 16:02
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more