Foros del Web » Programación para mayores de 30 ;) » .NET »

RC4 Hexadecimal

Estas en el tema de RC4 Hexadecimal en el foro de .NET en Foros del Web. Hola colegas, me están pidiendo encriptar un password en RC4, alguien tendrá el algoritmo para hacer eso, me que me de la encriptación en Hexadecimal. ...
  #1 (permalink)  
Antiguo 15/06/2009, 13:10
Avatar de mvazquez  
Fecha de Ingreso: octubre-2004
Ubicación: Monterrey - México
Mensajes: 875
Antigüedad: 19 años, 6 meses
Puntos: 8
Pregunta RC4 Hexadecimal

Hola colegas, me están pidiendo encriptar un password en RC4, alguien tendrá el algoritmo para hacer eso, me que me de la encriptación en Hexadecimal.

Estoy en C# WinForm.

Gracias colegas.
__________________
http://vazquezvega.wordpress.com/
"La paciencia nos da el privilegio de compartir el refrescante fruto de Dios con los demás."

Última edición por mvazquez; 15/06/2009 a las 13:27
  #2 (permalink)  
Antiguo 15/06/2009, 14:00
Avatar de Peterpay
Colaborador
 
Fecha de Ingreso: septiembre-2007
Ubicación: San Francisco, United States
Mensajes: 3.858
Antigüedad: 16 años, 7 meses
Puntos: 87
Respuesta: RC4 Hexadecimal

pues el framework hasta donde yo se no tiene un crypto provider para ello

prueba con algo como

http://sourceforge.net/projects/rc4dotnet
__________________
Curso WF4
http://cursos.gurudotnet.com/ DF
Aprende HTML5
  #3 (permalink)  
Antiguo 15/06/2009, 14:07
Avatar de mvazquez  
Fecha de Ingreso: octubre-2004
Ubicación: Monterrey - México
Mensajes: 875
Antigüedad: 19 años, 6 meses
Puntos: 8
Respuesta: RC4 Hexadecimal

Que ona Peter, fijate que ya lo solucione con esto:
Código:
public String encryptsRC4(String plaintxt, String Password)
{
    int temp = 0;
    int a = 0;
    int i = 0;
    int j = 0;
    int k;
    int cipherby = 0;
    String cipher = "";

    try
    {
        RC4Initialize(Password);

        for (a = 0; a < plaintxt.Length; a++)
        {
            i = (i + 1) % 256;
            j = (j + sbox[i]) % 256;
            temp = sbox[i];
            sbox[i] = sbox[j];
            sbox[j] = temp;

            k = sbox[(sbox[i] + sbox[j]) % 256];

            cipherby = ((int)(plaintxt[a])) ^ k;
            cipher += (char)cipherby;
        }
        return cipher;
    }
    catch (Exception ex)
    { throw ex; }  
}

Pero ahora quiero convertir a hexadecimal el resultado, he encontrado esto:
Código:
while (Data.Length > 0)
{
sValue= Data.Substring(0, 1).ToString() 
sValue= Strings.Asc(sValue) 
sValue = Conversion.Hex(sValue) 
Data = Data.Substring(1, Data.Length - 1);
sHex = sHex + sValue;
}
Pero no logro solucionar:
Strings.Asc(sValue)
Conversion.Hex(sValue)
me da error.
__________________
http://vazquezvega.wordpress.com/
"La paciencia nos da el privilegio de compartir el refrescante fruto de Dios con los demás."
  #4 (permalink)  
Antiguo 15/06/2009, 14:13
Avatar de Peterpay
Colaborador
 
Fecha de Ingreso: septiembre-2007
Ubicación: San Francisco, United States
Mensajes: 3.858
Antigüedad: 16 años, 7 meses
Puntos: 87
Respuesta: RC4 Hexadecimal

Strings.Asc y Conversion.Hex debe ser propias del articulo q estas revisando (en c-sharpcorner) no son propias del framework en la base son de el namespace Microsoft.VisualBasic que no se si tengas importado en tu codigo. en si para eso tendiras q usar Encoding.Ascii.GetBytes y de ahi hacer la conversion a string de los bytes para expresarlo en una cadena de texto representando la forma hexadecimal de tu resultado encriptado.
__________________
Curso WF4
http://cursos.gurudotnet.com/ DF
Aprende HTML5
  #5 (permalink)  
Antiguo 15/06/2009, 14:25
Avatar de mvazquez  
Fecha de Ingreso: octubre-2004
Ubicación: Monterrey - México
Mensajes: 875
Antigüedad: 19 años, 6 meses
Puntos: 8
Respuesta: RC4 Hexadecimal

Ok Brother, lo intentare de esa manera, si seme atora la carreta lo comento
__________________
http://vazquezvega.wordpress.com/
"La paciencia nos da el privilegio de compartir el refrescante fruto de Dios con los demás."
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:09.