Almacenar password cifrada

13/01/2004 - 10:38 por Kasiyas | Informe spam
Hola a todos,

Alguien sabe si existe alguna forma fácil de almacenar una contraseña
(cifrada por supuesto, para que nadie la pueda ver) que utilizo durante la
ejecución de un programa, en el archivo de configuración .config o en un
archivo de texto cualquiera (tambien creo que se podría en el Registro de
Windows), para que cada vez que lo ejecute no tenga que volver a teclearla?
Se que hay muchas aplicaciones de windows que tienen que hacer algo parecido
(Outlook Express, Messenger, etc...) que guardan las passwords, pero no se
como lo hacen.
He estado mirando en System.Cryptographic pero no se con que algoritmo se
cifra una contraseña de forma sencilla, además no se que información
necesito guardar para que luego pueda hacer el descifrado (Vector de
Inicialización, Salt, etc...) y/o si debería cifrar tb esa información.

Bueno espero que se me haya entendido algo de lo que expongo.

Un saludo a todos y gracias por adelantado.

Preguntas similare

Leer las respuestas

#11 christian strevel
18/01/2004 - 22:19 | Informe spam
Solo una nota:

Si necesitas recuperar la contraseña para otro fin, que no sea el de
comparar la contraseña contra la que el usuario escribio (por ejemplo,
decirle a un usuario cual es su contraseña) , tal vez si sea recomendable
hacer un uso de encripcion asimetrica.

Sin embargo, si vas a usar a "desencriptar" la contraseña para hacer la
comparación solamente, pues si es recomendable usar el hash ya que puedes
evitar algunos hoyos de seguridad.



"Kasiyas" wrote in message
news:
Gracias por tu ayuda Michael, creo que esto último que me mandas va a ser


la
solución. Porque la de la DAPI probablemente seria la mejor pero no me
funciona para win me y prefiero que la aplicación me valga para varios


SSOO.
Y en cuanto a lo de la huella digital (con SHA o MD5) que decian por ahi
queda descartado ya que eso no es reversible y a ver como recupero la
contraseña!
Muchas gracias por vuestro tiempo.

Salu2.

"Michael Giagnocavo [MVP]" escribió en el mensaje
news:
> El problema con eso es que no puedes desencriptar (para pasar la
contrasena
> a otra aplicacion, lo cual tengo entendido es lo que quiere hacer
Kasiyas).
>
> Para hacer encriptacion symmetrica, debes leer esto de Ivan Medvedev:
> http://www.dotnetthis.com/Articles/Crypto.htm
>
> -mike
> MVP
>
> "christian strevel" wrote in message
> news:OYx53H%
> > using System.Web.Security;
> >
> > // encriptamos con SHA1
> > encryptedPassword > > > FormsAuthentication.HashPasswordForStoringInConfigFile(plainPassword,
> > "SHA1");
> >
> > // encriptamos con MD5
> > encryptedPassword > > > FormsAuthentication.HashPasswordForStoringInConfigFile(plainPassword,
> > "MD5");
> >
> > Con esto te evitas todo el show de encriptar con streams etc etc
> >
> > christian strevel
> > http://www.chris-strevel.com
> >
> >
> >
> > "kasiyas" wrote in message
> > news:
> > > Muchas gracias por tu ayuda, lo que pasa es que la DPAPI sólo me
> funciona
> > en
> > > Windows 2000,XP y posteriores, y necesito que me funcione también en
Win
> > 98
> > > y ME. Si lo único que necesito es cifrar un texto (en este caso una
> > > contraseña) para poder asi guardarla en un archivo de texto (el
.config
> de
> > > la aplicación) sin que esté expuesta a todo el mundo.
> > >
> > > Un saludo y gracias.
> > >
> > >
> > > Michael Giagnocavo [MVP] wrote:
> > >
> > > > Lo que hace Windows es usar algo llamado el Data Protection API.


El
> > DPAPI
> > > > puede ser utilizado para que solo el usuario actual pueda
> > > > encriptar/desencriptar. Si alguien reseta su contrasena (no
> cambiarlo,
> > > > pero hacer un reset), los datos seran borrados (lo cual es bueno).
> > > >
> > > > Basicamente, llamas a CryptProtectData, y te devuelve un string.
> Llamas
> > a
> > > > CryptUnprotectData, y te regresa tus bytes originales. Para


obtener
> los
> > > > bytes, usa System.Text.Encoding.UTF8.GetBytes().
> > > >
> > > > En este articulo de MSDN, se describa como hacer una clase in .NET
> para
> > > > encapsular al DPAPI. Debes usar el User Store, no el machine


store.
> > > >
> > > >


http://msdn.microsoft.com/library/e...etHT07.asp
> > > >
> > > > -mike
> > > > MVP
> > > >
> > > > "Kasiyas" wrote in message
> > > > news:
> > > >> Hola a todos,
> > > >>
> > > >> Alguien sabe si existe alguna forma fácil de almacenar una
contraseña
> > > >> (cifrada por supuesto, para que nadie la pueda ver) que utilizo
> durante
> > > >> la ejecución de un programa, en el archivo de configuración


.config
o
> > en
> > > >> un archivo de texto cualquiera (tambien creo que se podría en el
> > Registro
> > > >> de Windows), para que cada vez que lo ejecute no tenga que volver


a
> > > > teclearla?
> > > >> Se que hay muchas aplicaciones de windows que tienen que hacer


algo
> > > > parecido
> > > >> (Outlook Express, Messenger, etc...) que guardan las passwords,
pero
> no
> > > >> se como lo hacen.
> > > >> He estado mirando en System.Cryptographic pero no se con que
> algoritmo
> > se
> > > >> cifra una contraseña de forma sencilla, además no se que
información
> > > >> necesito guardar para que luego pueda hacer el descifrado (Vector
de
> > > >> Inicialización, Salt, etc...) y/o si debería cifrar tb esa
> información.
> > > >>
> > > >> Bueno espero que se me haya entendido algo de lo que expongo.
> > > >>
> > > >> Un saludo a todos y gracias por adelantado.
> > > >>
> > > >>
> > >
> >
> >
>


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida