La biometría consiste en utilizar rasgos humanos únicos, tanto físicos como de comportamiento, en la identificación digital de individuos para acceso a sistemas, dispositivos o información.
Para realizar ese proceso de identificación, se comparan unos rasgos biométricos de la persona, como puede ser la cara o la voz, con unos previamente registrados en el sistema. Esos rasgos biométricos se capturan a través de sensores (cámara, micrófono, lector de huellas, etc) y se transforman en lo que conocemos como plantillas biométricas.
¿Qué es una plantilla biométrica?
Una plantilla biométrica, también conocida como patrón biométrico, es una representación de datos biométricos que se guarda y almacena para realizar posteriores comparaciones. Hemos de tener en cuenta que no son los datos biométricos en sí, sino una representación numérica abstracta de esos datos.
La captura de los datos biométricos se produce en un proceso que se conoce como enrolamiento de la biometría y que también se puede realizar durante un proceso de onboarding digital. En este caso se validaría también la identidad de la persona que va a registrar su biometría en el sistema, a través de su documento de identidad. No obstante, para registrar o enrolar una biometría no es necesario hacerlo de manera conjunta con soluciones de validación de identidad.
Un ejemplo de biometría que genera patrones biométricos es el reconocimiento facial, que emplea filtros generados por ordenador para convertir las imágenes faciales capturadas (datos biométricos) en expresiones numéricas que pueden compararse entre sí para determinar su parecido entre ellas. Estos filtros suelen construirse mediante técnicas de aprendizaje profundo, que procesan los datos utilizando redes neuronales artificiales, en concreto redes convolucionales.
El proceso de reconocimiento facial involucra detectar rostros, alinearlos, extraer características a través de redes convolucionales, y compararlas para identificar o verificar la identidad.
Llegados a este punto y para poder comprender mejor los algoritmos que se encuentran detrás de la creación de las plantillas biométricas, es importante abrir un paréntesis y explicar brevemente cómo funcionan las redes neuronales artificiales:
Redes neuronales artificiales
El aprendizaje profundo (deep learning) es un subconjunto del aprendizaje automático donde los algoritmos utilizados se inspiran en las redes neuronales del cerebro. El aprendizaje profundo es más potente que el aprendizaje automático ya que es capaz de adquirir conocimiento de grandes volúmenes de variables, de ahí que englobe a los actuales LLMs (Large Language Models) o chatbots de Inteligencia Artificial entre otros.
Para entender cómo funcionan las redes neuronales artificiales (RNA), hay una serie de conceptos importantes que hay que tener en cuenta de las partes que las componen:
- La neurona artificial: Es la unidad básica que forma parte de la red neuronal y que básicamente recibe una señal, la procesa y se la envía a otra neurona, tal y como ocurre con las neuronas de nuestro cerebro.
- Las capas neuronales: Conjunto de neuronas donde se realiza la misma operación y suelen tener la misma configuración de parámetros.
- Peso: Valor que pondera la importancia o relevancia de las conexiones entre las distintas neuronas.
- Función de activación: Este concepto es importante, ya que es el método que calcula la salida de la neurona en función de sus entradas y los pesos de las entradas individuales. Algunas funciones habituales son Lineal, Escalón, Sigmoide, Tangente hiperbólica, Unidad lineal rectificada y Softmax (para problemas de clasificación multiclase)
- Bias o sesgo: El sesgo permite modificar la función de activación alterando los umbrales (thresholds) de activación.
Es probable que si no trabajas en un departamento de analítica de datos o de tecnología, donde se trabaje con este tipo de algoritmos, todo lo que te vaya contando te suene a chino mandarín. Tranquilo, no te asustes, es normal, hay una base matemática y estadística importante detrás de todo esto. No obstante, con unos conceptos básicos podrás entender mejor la robustez del diseño de un patrón biométrico.
En una red neuronal artificial (RNA), cada neurona procesa una o más señales de entrada aplicando la función de activación que define la respuesta de esa neurona. El resultado generado por cada neurona se transmite a otras neuronas a través de conexiones con pesos específicos, que determinan cuánto influye esa neurona en el resultado final.
Durante el proceso de entrenamiento de una RNA, el modelo tiene la capacidad de ajustar estos pesos de las conexiones para reducir la discrepancia entre la salida prevista y la real. Este ajuste se realiza mediante algoritmos de optimización y de esta forma se va realizando el aprendizaje.
Hay que tener en cuenta, que con las redes neuronales profundas es de vital importancia llevar a cabo una correcta inicialización de los pesos y los sesgos (o bias) para que el modelo funcione.
Redes neuronales convolucionales (CNN)
Las redes neuronales convolucionales están especializadas en procesar imágenes, texto o vídeo siendo capaces de aprovechar la información espacial. Por ellos son ideales para el reconocimiento facial.
La convolución es una operación matemática que combina dos funciones para generar una tercera, permitiendo identificar la relación o similitud entre dos señales. En el contexto de imágenes, dado que los píxeles cercanos a uno dado suelen compartir características similares, una red neuronal convolucional puede analizar y comprenderlo utilizando cálculos de covarianza.
Hecha este breve introducción, podemos ver a continuación cómo funcionan las redes neuronales convolucionales en el proceso de creación de un patrón biométrico viendo las distintas etapas del proceso.
¿Cómo se crea una plantilla o patrón biométrico?
Una vez captados los datos biométricos a través de un sensor, que en el caso del reconocimiento facial serían las fotos de la cara hechas con una cámara, vendrían las siguientes etapas en el proceso de creación de la plantilla biométrica:
- Detección de rostros: El sistema primero identifica la presencia de uno o más rostros en una imagen o video. Se utilizan filtros simples que detectan características básicas, como bordes y texturas, para localizar posibles rostros.
2. Preprocesamiento. Alineación de caras: Una vez detectado el rostro, se ajusta para asegurarse de que esté en una posición estándar, por ejemplo, centrando los ojos y alineando la boca. Esto facilita que el algoritmo trate todos los rostros de manera uniforme. La imagen se normaliza en tamaño y contraste y se aplican filtros que reduzcan el ruido mejorando la calidad de la imagen.
3. Extracción de rasgos o características: Aquí es donde las redes neuronales convolucionales entran en juego. Estas redes analizan la imagen del rostro, capa por capa, extrayendo patrones y características importantes, como la forma de los ojos, la nariz, la boca, y la textura de la piel. Existen distintas capas de la red neuronal convolucional que capturan diferentes niveles de detalle (capa de convolución, capa de activación y capa de pooling).
- Etapa de Convolución: Aplica filtros para detectar características como bordes, texturas y patrones.
- Etapa de Activación (ReLU): Introduce no-linealidad, típicamente usando funciones ReLU (Rectified Linear Unit) que eliminan valores negativos en los mapas de características y ayuda a la red a aprender relaciones más complejas entre los píxeles.
- Etapa de submuestreo o Pooling: Reduce la dimensionalidad de los mapas de características, disminuyendo el número de parámetros y con ello el coste operacional.
A lo largo del entrenamiento, el modelo aprende y extrae características únicas de la cara utilizando pesos de transformación vectorial. La red se entrena con miles de imágenes biométricas etiquetadas y se van ajustando los pesos mediante retropropagación para minimizar el error.
4. Aplanamiento (Flattening): Las características extraídas se convierten en un largo vector unidimensional. Este vector contiene la información más relevante y resumida extraída de la imagen biométrica y prepara los datos para la clasificación en capas totalmente conectadas. En esta fase lo que hemos obtenido es un vector de características que contiene una representación numérica comprimida de la imagen biométrica y que incluye toda la información clave que la red ha aprendido a lo largo de las etapas de convolución y pooling, pero aún no es el patrón biométrico final ni está listo para ser utilizado directamente.
Una vez que el vector está aplanado, necesitamos interpretar estas características y asignarlas a una clase o realizar alguna operación final para definir el patrón biométrico.
Aquí es donde entran en juego las capas totalmente conectadas (fully connected layers).
5. Capas totalmente conectadas: Procesan la información para clasificación o comparación. El vector aplanado alimenta a una red completamente conectada, donde cada nodo está conectado con todos los nodos de la capa siguiente. Normalmente hay más de una capa totalmente conectada, y cada una de estas capas permite que la red encuentre combinaciones más complejas de las características. De esta forma, la red es capaz de refinar y enfocar mejor los patrones para llegar a un resultado final.
6. Clasificación y creación de la plantilla o patrón biométrico: La última capa de la red neuronal convolucional es la capa de salida, que asigna un valor de probabilidad a cada posible clase (por ejemplo, diferentes individuos o patrones biométricos).
El patrón biométrico resultante es una representación única extraída de la imagen de entrada, que puede usarse para comparaciones futuras (como en el caso de la verificación biométrica). Las características extraídas se convierten en un conjunto de números (vector) que representa matemáticamente el rostro. Este vector es único para cada rostro, como una especie de «huella digital» facial.
7. Reconocimiento facial: comparación y verificación: Finalmente, el vector de características del rostro capturado se puede comparar con los vectores de otros rostros almacenados en una base de datos. Si la similitud entre los vectores supera un umbral predefinido, se considera que los rostros coinciden.
Clasificación en una red neuronal convolucional
La fase de clasificación en una red neuronal convolucional para reconocimiento facial se utiliza generalmente en dos escenarios principales: durante el entrenamiento de la red y durante la verificación:
- Entrenamiento de la red: clasificando rostros en categorías predefinidas o ajustando pesos mediante retropropagación, lo que permite a la red aprender a distinguir entre diferentes identidades)
- Verificación: durante el uso del modelo entrenado para identificar a una persona dentro de una base de datos de rostros conocidos (1:N) o para verificar si dos imágenes faciales pertenecen a la misma persona (1:1).
La diferencia clave entre la fase de entrenamiento y la fase de verificación en una red convolucional para reconocimiento facial es que en el entrenamiento estamos enseñando a la red a generar características útiles, mientras que en la verificación, estamos utilizando esas características aprendidas para comparar rostros directamente. El entrenamiento es un proceso de aprendizaje iterativo, mientras que la verificación es un proceso de inferencia único.
Los patrones biométricos que generamos en Mobbeel, tienen 512 posiciones, pero contra la creencia popular, esas 512 posiciones no se relacionan con 512 posiciones físicas de la cara, como se hacía en los inicios de la biometría al medir distancias entre puntos, sino que realmente no sabemos exactamente qué son o qué representan, ya que son cálculos relativos de la características de la cara que infiere por sí sola la red neuronal.
Seguridad de las plantillas biométricas
La complejidad de las operaciones matemáticas realizadas en el proceso de generación de una plantilla biométrica son parte de su seguridad. Ya simplemente por la naturaleza de como funcionan las redes neuronales actuales, podemos inferir que hay bastante privacidad incluso desde el paso inicial, que es extraer los vectores biométricos de una cara.
Además, hemos de recordar que la plantilla biométrica consiste en una representación matemática de la cara del usuario que permite realizar la identificación posterior del usuario, sin necesidad de guardar las imágenes originales, con lo que en ningún momento es necesario almacenar imagenes o fotografías de las personas, lo que rompe el mito de que las empresas que ofrezcan este tipo de tecnologías necesiten almacenar las fotos de sus usuarios. Sólo en caso de que fuese necesario y la ley lo permitiese, podría hacerse, pero eso no quiere decir que sea necesario para realizar un proceso de verificación de identidad a través de reconocimiento facial.
Al mismo tiempo, se cumplen una serie de características destinadas a mejorar la seguridad y la privacidad de datos:
- El patrón biométrio es irreversible. Es decir, a partir de él no es posible volver a generar la imagen facial del usuario.
- El patrón biométrico es cancelable. Es decir, es posible revocarlo y a partir de ese momento no podrá ser utilizado en autenticaciones posteriores.
- Con el patrón biométrico por sí sólo no se puede trazar al usuario de origen (unlinkable).
Todo ello ayuda a cumplir con la GDPR y las distintas directivas y recomendaciones de la propia AEPD.
Entonces, ¿Son reversibles las plantillas biométricas?
Si has ido entendiendo el proceso para la creación del patrón biométrico, te habrás percatado en que la imagen desde su captura pasa por múltiples capas en la que se van aplicando funciones matemáticas complejas.
En general, las plantillas biométricas modernas, incluidas las utilizadas en reconocimiento facial, están diseñadas para ser irreversibles o extremadamente difíciles de revertir. Esto significa que, en teoría, no se puede reconstruir la imagen facial original a partir de la plantilla biométrica.
Los sistemas biométricos modernos implementan varias técnicas para prevenir la reversión:
- Transformaciones unidireccionales: Se aplican funciones matemáticas que son fáciles de calcular en una dirección, pero extremadamente difíciles de invertir.
- Reducción de dimensionalidad: La plantilla contiene mucha menos información que la imagen original.
- Cuantización: Los valores se redondean o aproximan, perdiendo información precisa.
Además, existen formatos y estándares establecidos para la creación de plantillas biométricas con el fin de garantizar la interoperabilidad y la seguridad en sistemas de reconocimiento biométrico. Los dos principales conjuntos de estándares reconocidos a nivel internacional son los desarrollados por la ISO/IEC y el ANSI.
TODO esto os lo cuenta de manera magistral nuestra compañera Ángela Barriga, la Directora del Departamento de Sistemas Inteligentes de Mobbeel, en la siguiente charla magistral dentro del marco del evento Identificación biométrica. Retos y oportunidades jurídico tecnológicas
Estándares o normas ISO / ANSI biométricas
Existen normas o estándares (ISO / ANSI) que describen cómo deberían ser distintos aspectos de la biometría, desde cómo ha de ser un vector biométrico, hasta cómo debería ser el flujo de captura desde la cara del usuario hasta el final de proceso.
Los estándares como ISO/IEC 19794 y ANSI aseguran que los datos biométricos, independientemente del sistema o proveedor, puedan ser intercambiados de manera fiable y segura. Estos formatos también ayudan a garantizar que las plantillas biométricas no sean propietarias de un solo sistema, lo que promueve una mayor adopción y robustez en la seguridad biométrica global.
ISO/IEC 24745:2022
Comenta cómo tiene que ser un vector biométrico cuando ya está en un sistema. Esos datos tienen que ser confidenciales y no pueden ser accesibles por cualquiera.
Otros estándares biométricos
La serie ISO/IEC 19794 es una norma internacional que define los formatos de intercambio para datos biométricos. Algunos de los estándares dentro de esta serie relacionados con las plantillas biométricas incluyen:
- ISO/IEC 19794-1:2006 – Formato de datos generales: Especifica los requisitos comunes para diferentes modalidades biométricas (huellas dactilares, rostro, iris, etc.) y los metadatos necesarios para interpretar esos datos.
- ISO/IEC 19794-5:2011 – Reconocimiento facial: Establece los formatos de imagen y la representación de plantillas de rostros para su uso en sistemas de reconocimiento facial.
- CBEFF (Common Biometric Exchange Formats Framework): Proporciona un marco para el intercambio de datos biométricos, definiendo cómo deben estructurarse los datos y los encabezados asociados a la plantilla biométrica para que diferentes sistemas puedan interoperar.
Registro de biometría facial para procesos de autenticación posteriores
Para simplificar los procesos de autenticación una vez que el usuario ya ha acreditado su identidad mediante un proceso de registro completo (escaneando el documento de identidad mediante OCR/NFC, presentando un selfie con prueba de vida, con el que se realiza una comparativa biométrica con la foto del documento, etc.), es posible registrar la biometría facial de la persona para que, en procesos posteriores de autenticación, pueda acreditar su identidad únicamente presentando su cara.
Para ello, una vez terminado el proceso de registro con éxito, se utilizarán las imágenes faciales capturadas del usuario para generar el patrón biométrico.
El almacenamiento de este patrón biométrico permitirá que, en procesos posteriores de autenticación biométrica, pueda llevarse a cabo la verificación de identidad únicamente presentando un selfie con prueba de vida, sin necesidad de realizar el proceso completo con el escaneo de documento de identidad, que puede resultar más tedioso.
Conclusión
La gente se piensa que si se roba un patrón biométrico de otra persona, lo puedes utilizar para suplantar su identidad, de la misma manera que si te hubieses encontrado un DNI tirado en la calle, ¡y nunca más lejos de la realidad!
Coger esos números y tratar de reconstruir la cara original de una persona no sólo es muy complicado, sino que nunca llegarías a obtener la cara original, con lo que resulta más sencillo realizar un ataque de suplantación de identidad utilizando otros medios como robar una foto de esa persona de sus redes sociales o capturar su rostro por la calle.
Al fin y al cabo, ¿Quién no tiene hoy en día una foto suya en internet?
Contacta con nosotros si quieres descubrir nuestras tecnologías anti-spoofing y de autenticación biométrica a través de reconocimiento facial.
Soy Ingeniero Informático y amante del Marketing, Comunicación e Internacionalización de empresas, tareas que desarrollo como CMO de Mobbeel. Soy muchas cosas, algunas buenas, muchas malas… perfectamente imperfecto.
GUÍA
Identifica a tus usuarios mediante su cara
En esta dualidad analógico-digital, uno de los procesos que sigue siendo crucial para garantizar la seguridad es la verificación de identidad a través del reconocimiento facial. La cara, siendo el espejo del alma, proporciona una defensa única contra el fraude, aportando fiabilidad al proceso de identificación.