Retroceder   Foros del Web > Programación para sitios web > .NET

Respuesta
 
Herramientas Desplegado
Antiguo 20-nov-2006, 08:46   #1 (permalink)
moNTeZIon ha deshabilitado el karma
 
Avatar de moNTeZIon
 
Fecha de Ingreso: enero-2005
Ubicación: CanFenosa Martorelles BCN
Mensajes: 1.286
Enviar un mensaje por Skype™ a moNTeZIon
Una de encriptacion

Buenas,
Tengo este código para encriptar unos datos:
Código:
Public Shared Function Encriptar(ByVal Texto As String) As String
    Dim BytesLimpios As [Byte]()
    BytesLimpios = New UnicodeEncoding().GetBytes(Texto)
    Dim BytesEncriptados As [Byte]() = CType(CryptoConfig.CreateFromName("MD5"), HashAlgorithm).ComputeHash(BytesLimpios)
    Dim TextoEncriptado As String = BitConverter.ToString(BytesEncriptados)
    Return TextoEncriptado
End Function
La pregunta es, tengo la posibilidad de crearme mi funcion "Desencriptar" o se trata de un tipo de encriptación que no se puede volver a deshacer?
Me han comentado que cabe la posibilidad que la encriptación solo exista en un sentido, y lo unico que se puede hacer es comparar el resultado encriptado, pero no desencriptar un texto ya encriptado...
Pueden aclararme esto?
Gracias!
__________________
..:: moNTeZIon ::..
moNTeZIon está desconectado   Responder Citando
Antiguo 20-nov-2006, 10:26   #2 (permalink)
jhonwilliams tiene algunos puntos positivos de karma
 
Avatar de jhonwilliams
 
Fecha de Ingreso: marzo-2004
Ubicación: Medellin - Colombia
Mensajes: 1.103
Cita:
Iniciado por moNTeZIon Ver Mensaje
Dim BytesEncriptados As [Byte]() = CType(CryptoConfig.CreateFromName("MD5"), HashAlgorithm).ComputeHash(BytesLimpios)
El cifrado con MD5 o SHA no se pueden deshacer, si quiere cifrar e invertir el cifrado puedes usar el metodo Rijndael.

Nota:
-Por seguridad las claves de los usuarios se cifran con MD5 o SHA para evitar que la clave o password del mismo sea leida por terceros.
-Las configuraciones de las aplicaciones se cifran con un metodo que se pueda invertir con el objetivo que se pueda leer cuando es necesario, ejemplo el string de conexion, a nosotros no nos interesa que el usuario se de cuenta cual es el user y pass del server de sql, pero si nos interesa descifrar y leerlo para poder realizar la conexion a la base de datos.

Saludos
__________________
"Una mujer sería encantadora si uno pudiera caer en sus brazos sin caer en sus manos." (Ambrose Bierce)
jhonwilliams está desconectado   Responder Citando
Antiguo 20-nov-2006, 12:02   #3 (permalink)
moNTeZIon ha deshabilitado el karma
 
Avatar de moNTeZIon
 
Fecha de Ingreso: enero-2005
Ubicación: CanFenosa Martorelles BCN
Mensajes: 1.286
Enviar un mensaje por Skype™ a moNTeZIon
Gracias por la aclaración jhonwilliams!
O sea, que si me quedo con el sistema actual, que por lo que dices es lo correcto, cuando el usuario olvide la contraseña que?
Debo currarme ahora un sistema de generación de contraseñas para enviarles a los usuarios que las olviden?
Qué otra cosa podría hacer?
Es que me encuentro desarrollando la página que les enviava la contraseña a su correo electrónico, pero me encontré con que no puedo desencriptarla.
Gracias por las sugerencias.
Saludos!
__________________
..:: moNTeZIon ::..
moNTeZIon está desconectado   Responder Citando
Antiguo 20-nov-2006, 12:16   #4 (permalink)
jhonwilliams tiene algunos puntos positivos de karma
 
Avatar de jhonwilliams
 
Fecha de Ingreso: marzo-2004
Ubicación: Medellin - Colombia
Mensajes: 1.103
Creo que debes pensar en un sistema que le permita al usuario asignarse una nueva contraseña en caso de que la olvide, pero si son pocos usuarios tambien podrias hacerlo tu., pero bueno no nos salgamos del tema, como pensaria yo en un sistema de ese tipo.

1. Soy usuario y pierdo mi clave.
2. Voy a la pagina de recuperar clave.
3. Proceso para recuperacion de clave
3.1 Verificar que el usuario si exite en la bd.
3.2 Asignar un codigo de validacion, recomendado hacer un GUID
3.3 En un capo de la base de datos (COD_VERIFICACION), almacenar ese GUID.
3.4 Enviar un correo al usuario con el codigo de verificacion
3.5 En la pagina de nueva clave, deben haber tres campos.
-Codigo de Validacion (GUID)
-Nueva Clave
-Repetir Clave
3.6 Se realiza un select a los usuario "SELECT * FROM tblUsuario Where COD_VERIFICACION=GUID and USUARIO=USUARIO"
3.7 Si lo encuentra asiganar la clave que se digito.

Nota.
Debes pensar en como enviar el usuario, ya que en la pagina de verificacion te dije que eran tres campos, pero tampoco me parece optimo tener un campo usuario y que lo puenda digitar. Se me ocurre que tal vez pasandolo por URL.

¿Como identificas tus usuarios?

Saludos
__________________
"Una mujer sería encantadora si uno pudiera caer en sus brazos sin caer en sus manos." (Ambrose Bierce)
jhonwilliams está desconectado   Responder Citando
Antiguo 20-nov-2006, 12:41   #5 (permalink)
Moderador
u_goldman llegará a ser famoso muy prontou_goldman llegará a ser famoso muy prontou_goldman llegará a ser famoso muy prontou_goldman llegará a ser famoso muy pronto
 
Avatar de u_goldman
 
Fecha de Ingreso: noviembre-2002
Ubicación: LA
Mensajes: 7.366
Enviar un mensaje por MSN a u_goldman
Cita:
Iniciado por jhonwilliams Ver Mensaje
Nota.
Debes pensar en como enviar el usuario, ya que en la pagina de verificacion te dije que eran tres campos, pero tampoco me parece optimo tener un campo usuario y que lo puenda digitar. Se me ocurre que tal vez pasandolo por URL.

¿Como identificas tus usuarios?

Saludos
Regularmente deberías tener como usuario una cuenta de email válida, así solo tienes que generar una nueva contraseña, y envíandola a esa cuenta de email.
Después puedes ponerte elegante, y no "activar" esa nueva contraseña sino hasta que haya sido confirmada. Con esto quizás necesitarías enviar en el email un link para este propósito.

Saludos
__________________
¿Qué darías por vivir un sueño?
u_goldman esta en línea ahora   Responder Citando
Antiguo 20-nov-2006, 16:50   #6 (permalink)
moNTeZIon ha deshabilitado el karma
 
Avatar de moNTeZIon
 
Fecha de Ingreso: enero-2005
Ubicación: CanFenosa Martorelles BCN
Mensajes: 1.286
Enviar un mensaje por Skype™ a moNTeZIon
Gracias por las ideas!
Identifico mis usuarios con email y contraseña.
Me parece genial la opción de jhonwilliams.
Les enviaré el link con el GUID al correo, y haré una nueva página para que el usuario establezca su nueva contraseña.
Un saludo!
__________________
..:: moNTeZIon ::..
moNTeZIon está desconectado   Responder Citando
Respuesta
No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 15:50.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93