Verificar la correspondencia de una firma CMS con su documento original

Para validar una firma CMS DETACHED contra su documento original utilizamo el método proporcionado por la API de viafirma checkSignedHasDocumentValidity().

A continuación se expone un ejemplo de cómo utilizar el método:

Java

try{
    //Obtenemos los byte[] de los documentos, tanto el original como el firmado
    byte[] original = FileUtils.readFileToByteArray(new File("documento.txt"));
    byte[] cmsFirmado = FileUtils.readFileToByteArray(new File("firma.p7s"));

    //A continuación sacamos el hash del documento original
    String hashOriginalDoc = new String(Base64.encodeBase64(DigestUtils.sha256(original)));

    //Por último ejecutamos el método checkSignedHasDocumentValidity()

    FirmaInfoViafirma firmaInfo = clienteVaifirma.checkSignedHasDocumentValidity(cmsFirmado, hasOriginal, TypeFormatSign.CMS_DETACHED);
    System.out.println("¿Válido? " + firmaInfo.isValid());

}catch(IOException e){
    e.printStackTrace();
}catch(InternalException e){
    e.printStackTrace();
}

results matching ""

    No results matching ""