Sei sulla pagina 1di 2

www.impuestos.gob.

bo
SISTEMA DE FACTURACIÓN
ELECTRÓNICA
1

GENERACION DE SHA-256, MD5 y CRC32

Instalar la versión de Java JDK1.8.0_172 (recomendada).

Ejemplo para la generación del SHA-256 y MD5:

import java.security.MessageDigest;
import javax.xml.bind.DatatypeConverter;

public String algoritmoHash(byte[] pArchivo, String algorithm) {


String hashValue = “”;
try {
MessageDigest messageDigest = MessageDigest.
getInstance(algorithm);

messageDigest.update(pArchivo);
byte[] digestedBytes = messageDigest.digest();

hashValue = DatatypeConverter.
printHexBinary(digestedBytes).toLowerCase();
}
catch (Exception e) {
System.out.println(“Error generando Hash”);
}
return hashValue;
}

Ejemplo para la generación del CRC32:

import java.util.zip.Checksum;
import java.util.zip.CRC32;

public String calCrc32(byte[] data) {


Checksum checksum = new CRC32();
checksum.update(data, 0, data.length);
long checksumValue = checksum.getValue();
String hex = Long.toHexString(checksumValue).
toUpperCase();
while (hex.length() < 8) {
hex = “0” + hex;
}
return hex;
}

LÍNEA GRATUITA DE CONSULTAS TRIBUTARIAS 800 10 34 44


www.impuestos.gob

SISTEMA DE FACTURACIÓN
ELECTRÓNICA
2

Ejemplo de consumo de los métodos

public String obtenerMD5(byte[] archivo) {


String vHash = algoritmoHash(archivo,”MD5”);
return vHash;
}
public String obtenerSHA2(byte[] archivo) {
String vSha2 = algoritmoHash(archivo,”SHA-256”);
return vSha2;
}
public String obtenerCRC32(byte[] archivo) {
String vCrc = calCrc32(archivo);
return vCrc;
}

www.impuestos.gob.bo La Paz 21 de noviembre del 2018

Potrebbero piacerti anche