Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

 
 
Herramientas Buscar en Tema Desplegado
  #34  
Antiguo 14-11-2008
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.210
Poder: 22
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
Ahora te explico un poco el algoritmo que he usado:

La encriptación Xor es fácil de implementar y es simétrica. La misma función y la misma clave sirven para encriptar y desencriptar.

Se basa en hacer una operación binaria XOR entre un dato y una clave. Piensa en este ejemplo binario:

Dato = 10001000
Clave = 01000100
10001000 XOR 01000100 = 11001100; Dato Encriptado
11001100 XOR 01000100 = 10001000; Dato Desencriptado

si ampliamos el nº de bits tendremos una operación XOR mas amplia... Esta rutina lo amplia a 8*8 = 64 bits.
Código:
void
Crypt(void *Source, int Size, char* Clave, int Mod)
{
   BYTE *source = (BYTE*)Source;  // Convierto el puntero Source a BYTE*
   BYTE clave[8];                 // Reservo para Clave 8 BYTES
   int lClave = strlen(Clave);    // Encuentro el tamaño de la clave si es una cadena
   for(int n=0; n<8; n++)         // Fuerzo a que la clave sea de 8 bytes máximo
     clave[n] = Clave[n%lClave];

   for(int n=0; n<Size; n++, Mod++){
     source[n] ^= clave[Mod%8];   // Encripta hasta conseguir hacerlo con 8 bytes 
                                  // que es el tamaño establecido para la clave.... 
                                  // ^ Es el operador XOR en C
   }
}
Espero que así lo entiendas mejor.
Experimenta.

Saludos.
Responder Con Cita
 


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
ayuda programa.. cmm07 Varios 13 17-07-2008 21:37:40
Ayuda con un programa kanedor Varios 6 14-05-2008 17:48:53
Conectar archivos de ayuda a un programa GINAUNICA Varios 3 15-04-2008 01:43:35
Ayuda con programa jorgegetafe Varios 4 07-12-2007 12:38:33
Ayuda con programa de C megadanzig C++ Builder 7 19-03-2004 19:26:48


La franja horaria es GMT +2. Ahora son las 09:58:11.


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