#include <openssl/md5.h>
void
MD5String( char *string, unsigned char digest[16] )
{
MD5_CTX context;
unsigned int len = strlen( string );
MD5_Init( &context );
MD5_Update( &context, ( unsigned char * ) string, len );
MD5_Final( digest, &context );
}
void
genera_hexa( unsigned char entrada[16], char salida[33] )
{
char c[3];
int i;
strcpy( salida, "" );
for ( i = 0; i < 16; i++ )
{
sprintf( c, "%02X", entrada[i] );
strcat( salida, c );
}
}
int main()
{
char *cadena = "Este va a ser la cadena a encriptar";
unsigned char salida[16], final[33];
MD5String(cadena,salida);
/*debe si se quiere convertir a hexadecimal para poder ver la cadena encriptada*/
genera_hexa(salida,final);
printf("%s\n",final);
}