Armazenamento de uma senha salva no aplicativo Open Source

Estou escrevendo um aplicativo C # que será de código aberto e preciso poder armazenar informações de login salvas para cada usuário. Normalmente, eu apenas criptografava a senha e a armazenava em um arquivo de configurações do usuário, mas me preocupo que, devido ao código ser de código aberto, isso meio que derrote o ponto de criptografá-la. Como tudo o que alguém precisa fazer é olhar para o código e pegar a chave de criptografi

Concordado, isso tornaria pelo menos muito mais difícil do que a senha armazenada em texto sem formatação. Mas existe alguma maneira decente de criptografar a senha, mas ainda é extremamente difícil descriptografá-la, mesmo que você tenha a fonte? Talvez faça com que seja pelo menos quase impossível descriptografar em qualquer computador que não seja aquele em que foi criptografado?

EDITAR Esclarecimento ... Estou armazenando senhas do lado do CLIENTE, NÃO senhas para validar o logon do serviço. É um cliente de um serviço da Web preexistente, do qual não tenho controle. Eu só quero armazenar as senhas localmente para login automático ... como qualquer cliente de bate-papo faria.

EDIT 2: Sinto muito por não ter ficado claro antes. Mas as senhas precisam ser recuperadas em texto não criptografado em algum momento e o hash NÃO é uma opção :( Mesmo que o serviço me permita passar o hash da senha, isso meio que derrotaria o objetivo, porque o hash seria tão bom quanto uma senha: P

questionAnswers(5)

yourAnswerToTheQuestion