Class MrzInfo

java.lang.Object
es.gob.jmulticard.card.icao.MrzInfo

public final class MrzInfo extends Object
Estructura de datos para almacenar la información de la MRZ, tal y como se encuentra en el DG1. Basado en el documento 9303 de ICAO, partes 1 y 3.
Version:
$Revision: 1712.
Author:
The JMRTD team (info@jmrtd.org)
  • Constructor Details

    • MrzInfo

      public MrzInfo(String mrzStr)
      Crea la MRZ. Si este texto contiene retornos de carro o tabuladores, estos se ignoran.
      Parameters:
      mrzStr - texto de la MRZ.
  • Method Details

    • getBytes

      public byte[] getBytes()
      Devuelve el 'MRZ Information' como array de octetos.
      Returns:
      'MRZ Information' (binario).
    • getMrzPswd

      public byte[] getMrzPswd(CryptoHelper cryptoHelper) throws IOException
      Calcula el valor de inicialización (BAC, EAC, PACE) de la MRZ. Siguiendo la especificación ICAO 9303:
      KDFπ(π) = KDF(f(π),3)
      K= f(π) = SHA-1(Serial Number || Date of Birth || Date of Expiry)
      En este método se genera el valor de K que deberá posteriormente ser pasado como parámetro de la función KDF(K,3) para generar la contraseña.
      Parameters:
      cryptoHelper - Clase para la realización de operaciones criptográficas.
      Returns:
      K Valor de inicialización.
      Throws:
      IOException - Si no se puede obtener el valor.
    • getDateOfBirth

      public String getDateOfBirth()
      Obtiene la fecha de nacimiento del titular.
      Returns:
      Fecha de nacimiento del titular.
    • getDateOfExpiry

      public String getDateOfExpiry()
      Obtiene la fecha de caducidad del documento.
      Returns:
      Fecha de caducidad del documento.
    • getDocumentNumber

      public String getDocumentNumber()
      Obtiene el número del documento.
      Returns:
      Número del documento.