Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 21-06-2006
Iuconlas Iuconlas is offline
Miembro
 
Registrado: sep 2005
Posts: 25
Poder: 0
Iuconlas Va por buen camino
Desencriptar password sha1 con DCPcrypt

Hola a todos,
Estoy desarrollando una pequeña aplicación con la que desencriptar unos passwords encriptados con el método sha1. Mirado en el foro, en la sección de trucos y el amigo google he llegado a hacer algo pero no me funciona correctamente. Utilizo los componentes de DCPcrypt y el código de la aplicación sería el siguiente:

Funciones para desencriptar (están en la sección de trucos)
Código Delphi [-]
procedure TForm1.IniciarCifrador(var C: TDCP_Cipher; algoritmo, hash: byte; password: string);
begin
  case algoritmo of
   DCP_tea:      C := TDCP_tea.Create(nil);
   DCP_des:      C := TDCP_des.Create(nil);
   DCP_ice:      C := TDCP_ice.Create(nil);
   DCP_rc2:      C := TDCP_rc2.Create(nil);
   DCP_rc4:      C := TDCP_rc4.Create(nil);
   DCP_rc5:      C := TDCP_rc5.Create(nil);
   DCP_rc6:      C := TDCP_rc6.Create(nil);
   DCP_3des:     C := TDCP_3des.Create(nil);
   DCP_ice2:     C := TDCP_ice2.Create(nil);
   DCP_idea:     C := TDCP_idea.Create(nil);
   DCP_mars:     C := TDCP_mars.Create(nil);
   DCP_misty1:   C := TDCP_misty1.Create(nil);
   DCP_cast128:  C := TDCP_cast128.Create(nil);
   DCP_cast256:  C := TDCP_cast256.Create(nil);
   DCP_thinice:  C := TDCP_thinice.Create(nil);
   DCP_serpent:  C := TDCP_serpent.Create(nil);
   DCP_twofish:  C := TDCP_twofish.Create(nil);
   DCP_blowfish: C := TDCP_blowfish.Create(nil);
   DCP_rijndael: C := TDCP_rijndael.Create(nil);
  end;
  case hash of
    DCP_md4:       C.InitStr(password, TDCP_md4);
    DCP_md5:       C.InitStr(password, TDCP_md5);
    DCP_sha1:      C.InitStr(password, TDCP_sha1);
    DCP_haval:     C.InitStr(password, TDCP_haval);
    DCP_tiger:     C.InitStr(password, TDCP_tiger);
    DCP_sha256:    C.InitStr(password, TDCP_sha256);
    DCP_sha384:    C.InitStr(password, TDCP_sha384);
    DCP_sha512:    C.InitStr(password, TDCP_sha512);
    DCP_ripemd128: C.InitStr(password, TDCP_ripemd128);
    DCP_ripemd160: C.InitStr(password, TDCP_ripemd160);
  end;
end;

function TForm1.Cifrar(cadena, password: string; algoritmo,hash: byte; descifrar: boolean) : string;
var
  C: TDCP_Cipher;
begin
  Result := '';
  C := TDCP_Cipher.Create(nil);
  try
    IniciarCifrador(C, algoritmo, hash, password);
    if desCifrar then
      Result := C.DecryptString(cadena)
    else
      Result := C.EncryptString(cadena);
    C.Burn;
  finally
    C.Free;
  end;
end;

Llamada a la función:
Código Delphi [-]
PassDesEncriptado := Cifrar(PassEncriptado,'',DCP_sha1,sizeof(PassEncriptado),true);

Lo que me está devolviendo el string "PassDesEncriptado" es un conjunto de carácteres extraños que para nada son los passwords correctos.

Supongo que el problema estará en lo relativo a la llamada de la función porque es la parte de cosecha propia (no soy ni mucho menos programador profesional). Los parámetros en los que solicita el password y el hash no se que enviarle exactamente.
Gracias de antemano y un saludo a todos.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
password tharsisj Varios 2 27-02-2005 11:03:27
Uso del CAPICOM para Encriptar / Desencriptar moesis Noticias 0 28-08-2004 02:22:57
List index out of bounds(6) al desencriptar nefy Varios 6 28-06-2004 19:07:20
Encriptar y desencriptar datos en una tabla!!! DarkByte Conexión con bases de datos 2 20-11-2003 17:04:30


La franja horaria es GMT +2. Ahora son las 09:33:19.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi