elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Ingresar Registrarse
11 Octubre 2008, 18:05  



+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++
| | |-+  Encriptacion RC4/ARC4
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Imprimir
Autor Tema: Encriptacion RC4/ARC4  (Leído 736 veces)
Kizar

Desconectado Desconectado

Mensajes: 1.320


kizar_net


Ver Perfil
Encriptacion RC4/ARC4
« en: 02 Mayo 2008, 14:51 »

Llevo un par de días buscando una función para encriptar archivos en RC4, si alguien la tiene por ahí a mano me ayudaría bastante...
En línea

Tughack

Desconectado Desconectado

Mensajes: 498


Ver Perfil
Re: Encriptacion RC4/ARC4
« Respuesta #1 en: 02 Mayo 2008, 15:20 »

Uso RC4 en el crypter asi k la tengo aki ^^

Código:
LPSTR RC4(LPSTR szBuf, LPSTR szKey, DWORD dwBufLen, DWORD dwKeyLen)
{
int i, j = 0, s[256];
DWORD dw;
BYTE tmp;
LPBYTE Buf = (LPBYTE)szBuf;
LPBYTE Key = (LPBYTE)szKey;
for(i = 0; i < 256; i++)
{
s[i] = i;
}
for(i = 0; i < 256; i++)
{
j = (j + s[i] + Key[i % dwKeyLen]) % 256;
tmp = s[i];
s[i] = s[j];
s[j] = tmp;
}
for(dw = 0; dw < dwBufLen; dw++)
{
i = (i + 1) % 256;
j = (j + s[i]) % 256;
tmp = s[i];
s[i] = s[j];
s[j] = tmp;
Buf[dw] ^= s[(s[i] + s[j]) % 256];
}
return (LPSTR)Buf;
}

Saludos
« Última modificación: 02 Mayo 2008, 16:24 por Tughack » En línea
Kizar

Desconectado Desconectado

Mensajes: 1.320


kizar_net


Ver Perfil
Re: Encriptacion RC4/ARC4
« Respuesta #2 en: 02 Mayo 2008, 16:00 »

Te quiero tio!!!  ;D
En línea

Kizar

Desconectado Desconectado

Mensajes: 1.320


kizar_net


Ver Perfil
Re: Encriptacion RC4/ARC4
« Respuesta #3 en: 02 Mayo 2008, 17:06 »

Por cierto juraria k e traducido perfectamente bien ese code a vb y da diferentes resultados  :-X

Código:
Private Function RC4(ByVal expresion As String, ByVal password As String) As String
    Dim i As Integer, j As Integer, t As Integer, tmp As Integer, s(256) As Integer, k(256) As Integer
    Dim key() As Byte, byteArray() As Byte
    Dim i2 As Long
   
    key() = StrConv(password, vbFromUnicode)
    For i = 0 To 255
        s(i) = i
        k(i) = key(i Mod Len(password))
    Next i
    For i = 0 To 255
        j = (j + s(i) + k(i)) Mod 256
        tmp = s(i)
        s(i) = s(j)
        s(j) = tmp
    Next i
    byteArray() = StrConv(expresion, vbFromUnicode)
    i = 0
    j = 0
    For i2 = 0 To Len(expresion) - 1
        i = (i + 1) Mod 256
        j = (j + s(i)) Mod 256
        tmp = s(i)
        s(i) = s(j)
        s(j) = tmp
        t = (s(i) + s(j)) Mod 256
        byteArray(i2) = byteArray(i2) Xor s(t)
    Next i2
    RC4 = StrConv(byteArray, vbUnicode)
End Function
« Última modificación: 02 Mayo 2008, 17:09 por KiZaR » En línea

Tughack

Desconectado Desconectado

Mensajes: 498


Ver Perfil
Re: Encriptacion RC4/ARC4
« Respuesta #4 en: 02 Mayo 2008, 17:29 »

En vb es aun mas facil ya k no tienes k pasarle tantos parametros pork puedes usar Len().

Código:
Private Function RC4(ByVal sBuffer As String, ByVal sKey As String) As String
    Dim i As Integer, j As Integer, s(0 To 255) As Integer
    Dim l As Long
    Dim tmp As Byte
    Dim Buffer() As Byte
    Dim Key() As Byte
    Buffer() = StrConv(sBuffer, vbFromUnicode)
    Key() = StrConv(sKey, vbFromUnicode)
    For i = 0 To 255
        DoEvents
        s(i) = i
    Next i
    For i = 0 To 255
        DoEvents
        j = (j + s(i) + Key(i Mod Len(sKey))) Mod 256
        tmp = s(i)
        s(i) = s(j)
        s(j) = tmp
    Next i
    For l = 0 To UBound(Buffer)
        DoEvents
        i = (i + 1) Mod 256
        j = (j + s(i)) Mod 256
        tmp = s(i)
        s(i) = s(j)
        s(j) = tmp
        Buffer(l) = Buffer(l) Xor (s((s(i) + s(j)) Mod 256))
    Next l
    RC4 = StrConv(Buffer, vbUnicode)
End Function

Saludos
En línea
Kizar

Desconectado Desconectado

Mensajes: 1.320


kizar_net


Ver Perfil
Re: Encriptacion RC4/ARC4
« Respuesta #5 en: 03 Mayo 2008, 14:03 »

Me estoy volviendo loco  :-(
Encriptado con el code en c++ el resultado es diferente que con el code en vb...
En línea

Chino Moreno

Desconectado Desconectado

Mensajes: 93


White Pony [ ! ]


Ver Perfil
Re: Encriptacion RC4/ARC4
« Respuesta #6 en: 03 Mayo 2008, 14:07 »

Pon los dos codigos que estas comparando (C / VB) a ver si encontramos entre todos lo que esta haciendo variar el resultado
En línea



¿Necesitas información sobre una función que comenté? Lo mas seguro es que la encuentres en MSDN
Tughack

Desconectado Desconectado

Mensajes: 498


Ver Perfil
Re: Encriptacion RC4/ARC4
« Respuesta #7 en: 03 Mayo 2008, 14:50 »

Me estoy volviendo loco  :-(
Encriptado con el code en c++ el resultado es diferente que con el code en vb...

jajaja pues entonces uno estara mal (aunk solo en relacion al rc4 original, pork los dos hacen el trabajo jeje), fui yo k hice los 2, el de vb lo hice desde lo k esta escrito sobre rc4 en la wikipedia, y el k esta en C desde el codigo de vb. Sake un nuevo algoritmo y ni me he dado cuenta xD

Aver, voy a compararlos.

Saludos
En línea
Tughack

Desconectado Desconectado

Mensajes: 498


Ver Perfil
Re: Encriptacion RC4/ARC4
« Respuesta #8 en: 03 Mayo 2008, 15:25 »

Aver, el resultado es lo mismo, solo k con el codigo en C, ademas del texto inicial encriptado, kedan mas unos caracteres. No se a k viene eso pero tampoco tengo ganas de mirarlo ahora, mas tarde si nadie descobre pork pasa eso me pongo con elo.

Saludos
En línea
Kizar

Desconectado Desconectado

Mensajes: 1.320


kizar_net


Ver Perfil
Re: Encriptacion RC4/ARC4
« Respuesta #9 en: 03 Mayo 2008, 15:41 »

Chino Moreno los dos codigos son los que ha posteado Tughack  en este hilo al principio.
En línea

Chino Moreno

Desconectado Desconectado

Mensajes: 93


White Pony [ ! ]


Ver Perfil
Re: Encriptacion RC4/ARC4
« Respuesta #10 en: 03 Mayo 2008, 16:18 »

Kizar dame el hash que te devuelve el codigo en Visual Basic al introducir los siguientes parametros:

sBuffer = "es una prueba"

sKey = "password"

Por que en este ordenador no tengo instalado el Visual Basic y no puedo comparar :P
En línea



¿Necesitas información sobre una función que comenté? Lo mas seguro es que la encuentres en MSDN
E0N
Lab &
Colaborador

Conectado Conectado

Mensajes: 2.682



Ver Perfil WWW
Re: Encriptacion RC4/ARC4
« Respuesta #11 en: 04 Mayo 2008, 01:46 »

Aver, el resultado es lo mismo, solo k con el codigo en C, ademas del texto inicial encriptado, kedan mas unos caracteres. No se a k viene eso pero tampoco tengo ganas de mirarlo ahora, mas tarde si nadie descobre pork pasa eso me pongo con elo.

Saludos

Acabo de probar y a mi me funciona perfectamente. A lo mejor se te ha olvidado ponerle el caracter de fin de cadena, por que otra cosa no le veo yo...
En línea
Tughack

Desconectado Desconectado

Mensajes: 498


Ver Perfil
Re: Encriptacion RC4/ARC4
« Respuesta #12 en: 04 Mayo 2008, 01:55 »

Aver, el resultado es lo mismo, solo k con el codigo en C, ademas del texto inicial encriptado, kedan mas unos caracteres. No se a k viene eso pero tampoco tengo ganas de mirarlo ahora, mas tarde si nadie descobre pork pasa eso me pongo con elo.

Saludos

Acabo de probar y a mi me funciona perfectamente. A lo mejor se te ha olvidado ponerle el caracter de fin de cadena, por que otra cosa no le veo yo...

Sip, el problema esk al pasarle el rc4, la string no keda null-terminated ^^
En línea
Chino Moreno

Desconectado Desconectado

Mensajes: 93


White Pony [ ! ]


Ver Perfil
Re: Encriptacion RC4/ARC4
« Respuesta #13 en: 04 Mayo 2008, 02:29 »

Mira que lo primero que pense es que eran caracteres basura, pero nunca me acuerdo de añadir el caracter fin de cadena :S y ya me costo puntos en algun examen...
En línea



¿Necesitas información sobre una función que comenté? Lo mas seguro es que la encuentres en MSDN
E0N
Lab &
Colaborador

Conectado Conectado

Mensajes: 2.682



Ver Perfil WWW
Re: Encriptacion RC4/ARC4
« Respuesta #14 en: 04 Mayo 2008, 13:20 »

Pues arreglado entonces xDD Solo hay que añadirle el caracter de fin de cadena  :P Por cierto, muy wapos los codes Tughack
En línea
Páginas: [1] 2 Ir Arriba Imprimir 
Ir a:  







Consolas     La Web de Goku     MilW0rm     MundoDivx

Hispabyte     Truzone     TodoReviews     ZonaPhotoshop

hard-h2o modding    Foros de ayuda    Yashira.org    Videojuegos    indetectables.net   

Noticias Informatica    Seguridad Informática    ADSL    Foros en español    eNYe Sec

Todas las webs afiliadas están libres de publicidad engañosa.

Powered by SMF 1.1.6 | SMF © 2006-2008, Simple Machines LLC
Free counter and web stats