Componente DLL freeware que nos permite usar el algoritmo de reducción criptográfica MD5 desde Visual FoxPro.
MD5 Component, es un componente Freeware del tipo ActiveX DLL que utiliza el estándar industrial del algoritmo de reducción criptográfica MD5 para obtener una "huella digital" de un archivo o una cadena de texto. Esta "huella digital" es una suma de comprobación (checksum) de 32 dígitos hexadecimales.
Para utilizar MD5 Component desde VFP, debemos registrar el archivo XMD5.dll con RegSvr32.
Este componente contiene dos métodos:
- GetCheckSumFromFile(nombre_archivo): Retorna la suma de comprobación de un archivo
- GetCheckSumFromString(cadena_de_texto): Retorna la suma de comprobación de una cadena de texto
Ejemplos:
1. Si almacenamos archivos binarios en una base de datos, este componente nos permite almacenar la suma de comprobación MD5 en un campo aparte, para evitar el almacenamiento de archivos duplicados en la base de datos. Comparando solo la suma de comprobación MD5 del nuevo archivo, con la lista de MD5s almacenados en la base de datos, podemos saber si este archivo ya está almacenado.
** GetCheckSumFromFile()
loMD5 = CREATEOBJECT("XStandard.MD5")
lcChecksum1 = loMD5.GetCheckSumFromFile("C:\Archivo1.exe")
lcChecksum2 = loMD5.GetCheckSumFromFile("C:\Archivo2.exe")
IF lcChecksum1 == lcChecksum2
MESSAGEBOX("Los archivos son iguales", 64)
ELSE
MESSAGEBOX("Los archivos son distintos", 16)
ENDIF
2. También podemos utilizar este algoritmo MD5 para guardar contraseñas encriptadas, y luego compararlas con la suma de comprobación de la contraseña ingresada.
** GetCheckSumFromString()
loMD5 = CREATEOBJECT("XStandard.MD5")
*lcClaveGuardada = MiTabla.Clave
lcClaveGuardada = "60c43c0ba40256211b4ca7ce65bd49ec"
lcClaveIngresada = INPUTBOX("Ingrese contraseña (PortalFox)", "Inicio", "")
IF lcClaveGuardada == loMD5.GetCheckSumFromString(lcClaveIngresada)
MESSAGEBOX("Ok. La contraseña es correcta", 64)
ELSE
MESSAGEBOX("Lo siento, la contraseña es incorrecta", 16)
ENDIF
Para mas información y descargar MD5 Component visite la página http://xstandard.com/en/documentation/xmd5
|