Guardar una contraseña guardada en la aplicación Open Source

Estoy escribiendo una aplicación C # que será de código abierto y necesito poder almacenar la información de inicio de sesión guardada para cada usuario. Normalmente, simplemente cifraría la contraseña y luego la almacenaría en un archivo de configuración del usuario, pero me preocupa que, debido a que el código sea de código abierto, de alguna manera derrote el punto de cifrarla. Como todo lo que cualquiera tendría que hacer es mirar el código y tomar la clave de cifrado.

Granted, al menos lo haría mucho más difícil que la contraseña que se almacena en texto sin formato. Pero, ¿hay alguna forma decente de cifrar la contraseña, pero hacer que al menos sea extremadamente difícil descifrarla incluso si tuviera la fuente? ¿Quizás hacer que sea al menos casi imposible descifrar en cualquier computadora que no sea la en la que se cifró?

EDITAR Aclaración ... Estoy almacenando contraseñas laterales del CLIENTE, NO contraseñas para validar su inicio de sesión para el servicio. Es un cliente de un servicio web preexistente del cual no tengo control. Solo quiero almacenar las contraseñas localmente para iniciar sesión automáticamente ... como lo haría cualquier cliente de chat.

EDIT 2: Perdón por no haber sido claro antes. Pero las contraseñas deben recuperarse en texto claro en algún momento y el hash NO es una opción :( Incluso si el servicio me permitiera pasar el hash de la contraseña, eso podría frustrar el propósito porque el hash sería tan bueno como una contraseña: P

Respuestas a la pregunta(5)

Su respuesta a la pregunta