# Gerenciador de senha

Um gerenciador de senha é um programa que é usado para armazenar uma grande quantidade de nomes/senhas. O banco de dados onde esta informação é armazenada é criptografado usando uma única chave (senha mestre ou master password em inglês), para que o usuário apenas tenha de memorizar uma senha para acesso a todos as outras. Isso facilita a administração de senhas e incentiva os usuários a escolherem chaves complexas sem medo de não ser capazes de lembrá-las mais tarde.

## Geração de senhas

Os gerenciadores de senha muitas vezes oferecem a opção para gerar automaticamente uma senha, que ajuda a evitar usar a mesma chave para acesso a recursos diferentes, uma prática muito pouco recomendada mas difundida, especialmente para acessar páginas da web que exigem que o usuário se registre. Também, se o usuário optar por escolher sua própria senha, esses programas tendem a indicar o nível da robustez da palavra escolhida. É obviamente essencial que a senha mestra seja complexa o suficiente para torná-la difícil de quebrar. Se alguém tem palpite sobre a senha mestra e acesso a bancos de dados do programa, por exemplo através de um ataque de dicionário, ele poderia automaticamente ganhar acesso a todas as nossas chaves.

## Implementação

A maioria dos navegadores de hoje em dia, como o Firefox ou Internet Explorer, incorporaram um gerenciador de senhas em forma de plug-in que pode, opcionalmente, ser protegido com uma senha mestre. Assim, quando nós visitamos um site que requer autenticação, o navegador automaticamente grava o nome de usuário e a senha nos campos apropriados sem a necessidade de intervenção do usuário.
Há também aplicativos autônomos para navegadores que têm o mesmo papel e muitas vezes são mais seguros, como o LastPass, Dashlane ou KeePass Password Safe (código aberto). Uma opção especialmente conveniente é instalar o programa em uma unidade flash USB para levar consigo. Isso só é possível se o gerenciador de senhas escolhido tem uma versão portátil.
Uma maneira alternativa para gerenciar senhas é armazená-las em páginas da web que oferecem este tipo de serviço. Desta forma podemos acessá-los de qualquer lugar com uma conexão com a Internet. Neste caso nossa segurança depende basicamente do nível de confiança serviço que comunicamos quem nos dá o serviço.

## Segurança

A segurança do gestor de senhas depende de vários parâmetros:
* A robustez da senha mestra escolhida.
* A segurança do algoritmo de criptografia usado.
* A qualidade do código-fonte do aplicativo.
* A maneira de armazenar a chave quando o usuário solicita.
* A existência de vírus ou outro malware no seu computador. A solidez da chave mestra e Gerenciador de senhas de pouco adiantam se houver um keylogger instalado.

## Navegadores

Alguns dos navegadores mais populares possuem seus próprios gerenciadores de senhas, tornando possível que o usuário salve senhas de diversos sites com apenas um clique, e facilitando o acesso às suas contas. Isso, porém, tem seus prós e contras.
A maior vantagem da utilização desses gerenciadores é a conveniência e facilitação do acesso sem a necessidade de ficar memorizando senhas. Além disso, não é necessária a instalação de nenhum outro programa além do próprio navegador, o que economiza espaço no dispositivo.
Já a maior desvantagem é a vulnerabilidade das informações salvas. Já que a senha já está memorizada no site e o usuário não precisa inseri-la novamente para navegar, estando sob o risco de ataques virtuais ou furto do dispositivo, existe a chance dos dados configurados serem acessados com facilidade por terceiros.
Por este motivo, não é recomendado salvar senhas diretamente no navegador, e sim usar um gerenciador confiável e que tenha um bom sistema de criptografia. Assim, mesmo se o dispositivo for acessado por outra pessoa, os dados do administrador estarão seguros.
Além disso, para otimizar a segurança de informações pessoais e bancárias, é recomendada também a troca constante de senhas e a criação de senhas fortes e únicas, com diversos caracteres diferentes.