Java Digest digest(final byte[] data)

Here you can find the source of digest(final byte[] data)

Description

Genera la huella digital de los datos con el algoritmo indicado por DEFAULT_MESSAGE_DIGEST_ALGORITHM .

License

Open Source License

Parameter

Parameter Description
data Datos de la que generar la huella.

Return

Huella digital.

Declaration

private static byte[] digest(final byte[] data) 

Method Source Code

//package com.java2s;
/* Copyright (C) 2011 [Gobierno de Espana]
 * This file is part of "Cliente @Firma".
 * "Cliente @Firma" is free software; you can redistribute it and/or modify it under the terms of:
 *   - the GNU General Public License as published by the Free Software Foundation;
 *     either version 2 of the License, or (at your option) any later version.
 *   - or The European Software License; either version 1.1 or (at your option) any later version.
 * Date: 11/01/11//from w ww  .j  a  va 2  s  . c  om
 * You may contact the copyright holder at: soporte.afirma5@mpt.es
 */

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

import java.util.logging.Logger;

public class Main {
    private static final Logger LOGGER = Logger.getLogger("es.gob.afirma");
    /** Algoritmo de huella digital por defecto que se utilizará, por ejemplo, para
     * la generación de las firmas explícitas XAdES. */
    private static final String DEFAULT_MESSAGE_DIGEST_ALGORITHM = "SHA1";
    /** Generador de huellas digitales utilizado internamente. */
    private static MessageDigest md = null;

    /**
     * Genera la huella digital de los datos con el algoritmo indicado por
     * {@code DEFAULT_MESSAGE_DIGEST_ALGORITHM}.
     * @param data Datos de la que generar la huella.
     * @return Huella digital.
     */
    private static byte[] digest(final byte[] data) {
        if (md == null) {
            try {
                md = MessageDigest.getInstance(DEFAULT_MESSAGE_DIGEST_ALGORITHM);
            } catch (final NoSuchAlgorithmException e) {
                LOGGER.severe("Se ha utilizado internamente un algoritmo de huella digital no soportado: " + e); //$NON-NLS-1$
                throw new IllegalArgumentException("Algoritmo no soportado", e); //$NON-NLS-1$
            }
        }
        return md.digest(data);
    }
}

Related

  1. digest(byte[] input)
  2. digest(byte[] input, final String algorithm)
  3. digest(byte[] input, String algorithm, byte[] salt, int iterations)
  4. digest(byte[] message, String hash_alg)
  5. digest(final @Nullable String[] tokens, @Nullable final Date[] dates)
  6. digest(final InputStream inputStream, final MessageDigest digester)
  7. digest(final java.security.MessageDigest messageDigest, final java.nio.ByteBuffer data)
  8. digest(final String algorithm, final byte[] bytes)
  9. digest(final String password)