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

Sobre ecriptar con DES

Estas en el tema de Sobre ecriptar con DES en el foro de Programación General en Foros del Web. EsperaHola antemano gracias por la ayuda que podáis darme a aquellos que se país de programación y nosotros los novatillos que estamos aprendiendo, Bueno pues ...
  #1 (permalink)  
Antiguo 23/10/2003, 13:12
 
Fecha de Ingreso: octubre-2003
Mensajes: 1
Antigüedad: 20 años, 7 meses
Puntos: 0
Sobre ecriptar con DES

EsperaHola antemano gracias por la ayuda que podáis darme a aquellos que se país de programación y nosotros los novatillos que estamos aprendiendo,
Bueno pues estoy intentando hacer un pequeño programa para poder Ecriptar 64 byter 128 caracteres y usando como key 8 byter 16 caracteres y usando el Algoritmo DES para el encriptado. El método que quiero hacer es el siguiente para ecriptar los 64 byter, cojo los 64 byter y lo divido en 8 blocker y de esos 8 blocker cada uno contiene 8 byter , Bien ahora cojo el primer blocker de 8 byter y lo ecripto usando DES y uso como key 8 byter ahora el resultado debe de ser 8 byter, pues bien ahora cojo el segundo blocker de 8 byter y lo encripto pero ahora uso como key el resultado anterior y a sin asta encriptar los 8 blocher y el ultimo blocker seria el resultado a esperar.

Bueno ya tengo echo el proyecto pero en plan chapucero ya que no manejo muy bien el VB por cierto aun no lo he dicho esto lo estoy haciendo en el compilador Visual Basic 6 pues pido que haber si me podéis echar una mano en como puedo hacer una para los 64 byter y hacer este proceso que e explicado mas o menos, otra cosa seria de gran ayuda que alguien que sepa programar en C que me traduzca este pequeño código que pongo aquí a bajo que es el método que yo quiero hacer en el VB seria de agradecer si os hace falta el proyecto ósea lo que tengo echo pues me lo decís y yo os lo mando uso como Algoritmo DES un OCX.


Este es el código C

#include <mem.h>
#include <stdio.h>
#include "edes.h"

byte emm[64] = {
0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11,
0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11,
0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11,
0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11,
0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11,
0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11,
0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11,
0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11
};

byte verifykey[] = {
0xD7,0x32,0xAF,0x2B,0xB2,0x30,0x72,0x2E
};

byte firma[8];

void main(void) {
int i,j;

printf("EMM/datos a firmar:\n");
for ( i=0;i<8;i++ ) {
for ( j=0;j<8;j++ ) {
printf("%02X ",emm[i*8+j]);
}
printf("\n");
}
//inicializa la firma con la verify key
memcpy(firma,verifykey,8);
//calcula el hash de emm en firma (8 bloques de 8 bytes)
hash_EDES(emm,firma,8);
printf("Firma:\n");
for ( i=0;i<8;i++ ) {
printf("%02X ",firma[i]);
}
printf("\n\n");
}


Un saludo
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 00:14.