Foro de elhacker.net

Programación => Bases de Datos => Mensaje iniciado por: Libra_18 en 7 Diciembre 2011, 01:44 am



Título: Desemcriptar contraseña en sql
Publicado por: Libra_18 en 7 Diciembre 2011, 01:44 am
Tengo la siguiente función en sql, que me permite en cripta  una contraseña... pero ahora quisiera saber cuál es el algoritmo, que me permita desemcriptar la  contraseña


 
ALTER FUNCTION [dbo].[F_ENCRIPTA] ( @pvCadena   Varchar(20),
                                 @pnEncripta Integer )
Returns Varchar(20)
As
Begin
   Declare @vReturn     Varchar(20)
   Declare @vCadena    Varchar(20)
   Declare @vCad       Varchar(30)
   Declare @vCrip       Varchar(30)
   Declare @nLen       Numeric(5,0)
   Declare @nContador Integer

   Set @vCadena   = LTrim(RTrim(@pvCadena))
   Set @vCrip     = ''
   Set @nLen      = Len(@vCadena) + 1
   Set @nContador = 1

   While @nContador <= @nLen - 1
   Begin   
      Set @vCad = Substring(@vCadena,@nContador,1)
      If @pnEncripta > 0
         Set @vCad = Char(Ascii(@vCad) + (@nLen) - @nContador)
      Else
         Set @vCad = Char(Ascii(@vCad) - (@nLen) + @nContador)

      Set @vCrip     = @vCrip + @vCad
      Set @nContador = @nContador + 1
   End

   Set @vReturn = @vCrip
 
   Set @vReturn = IsNull(@vReturn,'')
   
   Return(@vReturn)
End

 mi contraseña es 123
pero en mi base de datos   me sale 444 como la desemcripto teniendo el siguiente algoritmo de cifrado


Título: Re: Desemcriptar contraseña en sql
Publicado por: Novlucker en 9 Diciembre 2011, 13:09 pm
¿Has intentado comprender el algoritmo? Es una pequeña variación del cifrado César.

No se para que se utilizará esa función, espero que no sea para las contraseñas, pero en ese caso, es del tipo de funciones que es conveniente tenerlas cifradas :P

Saludos


Título: Re: Desemcriptar contraseña en sql
Publicado por: Shell Root en 10 Diciembre 2011, 01:38 am
Pero pusiste 123 como cadena, pero falta el otro parámetro. Cual es? (Es para realizar una prueba)


Título: Re: Desemcriptar contraseña en sql
Publicado por: Novlucker en 10 Diciembre 2011, 05:41 am
1 :P


Título: Re: Desemcriptar contraseña en sql
Publicado por: <<<-Basura->>> en 10 Diciembre 2011, 06:23 am
Bueno, es una opción, pero no la mas eficaz, Fuerza bruta, ejemplo:
Tu contraseña: 123
Se almacena como 444

Digamos que todas las contraseñas son de 3 dígitos y todos son números para no complicarnos.

000 -> primera contaseña, la pasamos por el algoritmo y dos da un VALOR,

VALOR lo comparamos con la contraseña almacenada, SI son IGUALES es la contraseña, obvio que sino NO! jeje

muchos dirán pero es una tontera ya que si hay miles de contraseñas en la base de datos y hacerle eso a todas, es perder el tiempo....

Podríamos programar un sistema maso menos inteligente jeje..
digamos que Si llego a la contaseña 123 y comparo y dio igual valor "444", almacenamos el valor "444" y lo unimos  a 123, es decir que si nuestro programa encuentra en la base de datos otro "444", primero ira a revisar si fue encontrado anterior mente y sino aplicara el método de FBruta..

muchos usuarios utilizan las contraseñas muy parecidas o muy simples, que casi asta se vuelve repetitivo...


Título: Re: Desemcriptar contraseña en sql
Publicado por: Shell Root en 10 Diciembre 2011, 08:40 am
Nah, pero si tenemos el source del encrypt siempre se puede realizar un decrypt, no crees?


Título: Re: Desemcriptar contraseña en sql
Publicado por: <<<-Basura->>> en 10 Diciembre 2011, 20:53 pm
Lo que te dije era una opción nada mas... jeje