Referencia de estructura gatekeeper_device

Referencia de estructura gatekeeper_device

#include < gatekeeper.h >

Campos de información

hw_dispositivo_t común
En t(* inscribir ) (const struct gatekeeper_device *dev, uint32_t uid, const uint8_t *current_password_handle, uint32_t current_password_handle_length, const uint8_t *current_password, uint32_t current_password_length, const uint8_t *desired_password, uint32_t deseada_password_length, uint8_t **enrolled_pass word_handle, uint32_t *enrolled_password_handle_length)
En t(* verificar ) (const struct gatekeeper_device *dev, uint32_t uid, uint64_t desafío, const uint8_t *enrolled_password_handle, uint32_t inscrito_password_handle_length, const uint8_t *provided_password, uint32_t provide_password_length, uint8_t **auth_token, uint32_t *auth_token_length , booleano *request_reenroll)
En t(* eliminar_usuario )(const estructura gatekeeper_device *dev, uint32_t uid)
En t(* eliminar_todos_usuarios )(const estructura gatekeeper_device *dev)

Descripción detallada

Definición en la línea 41 del archivo gatekeeper.h .

Documentación de campo

Métodos comunes del dispositivo gatekeeper. Como se indicó anteriormente, este debe ser el primer miembro de keymaster_device.

Definición en la línea 46 del archivo gatekeeper.h .

int(* eliminar_todos_usuarios)(const estructura gatekeeper_device *dev)

Definición en la línea 173 del archivo gatekeeper.h .

int(* eliminar_usuario)(const estructura gatekeeper_device *dev, uint32_t uid)

Definición en la línea 159 del archivo gatekeeper.h .

int(* inscribirse)(const struct gatekeeper_device *dev, uint32_t uid, const uint8_t *current_password_handle, uint32_t current_password_handle_length, const uint8_t *current_password, uint32_t current_password_length, const uint8_t *desired_password, uint32_t deseada_password_length, uint8_t **inscribirse ed_password_handle, uint32_t *enrolled_password_handle_length)

Registra la contraseña deseada, que debe derivarse de un PIN o contraseña seleccionados por el usuario, y la clave privada del factor de autenticación se utiliza solo para registrar los datos del factor de autenticación.

Si ya había una contraseña registrada, se debe proporcionar en current_password_handle, junto con la contraseña actual en current_password que debe validarse con current_password_handle.

Parámetros:

  • dev: puntero a gatekeeper_device adquirido mediante llamadas a gatekeeper_open
  • uid: el identificador de usuario de Android
  • current_password_handle: el identificador de contraseña actualmente inscrito que el usuario desea reemplazar. Puede ser nulo si no hay ninguna contraseña registrada actualmente.
  • current_password_handle_length: la longitud en bytes del búfer al que apunta current_password_handle. Debe ser 0 si current_password_handle es NULL.
  • current_password: la contraseña actual del usuario en texto plano. Si se presenta, DEBE verificarse con current_password_handle.
  • current_password_length: el tamaño en bytes del búfer al que apunta current_password. Debe ser 0 si la contraseña_actual es NULL.
  • contraseña_deseado: la nueva contraseña que el usuario desea registrar en texto sin formato. No puede ser nulo.
  • longitud_contraseña_deseado: la longitud en bytes del búfer al que apunta la contraseña_deseado.
  • enrolled_password_handle: en caso de éxito, se asignará un búfer con el nuevo identificador de contraseña que hace referencia a la contraseña proporcionada en la contraseña deseada. Este búfer se puede utilizar en llamadas posteriores para inscribirse o verificar. La persona que llama es responsable de desasignar este búfer mediante una llamada para eliminar []
  • enrolled_password_handle_length: puntero a la longitud en bytes del búfer asignado por esta función y señalado por *enrolled_password_handle_length.

Devoluciones:

  • 0 en éxito
  • Un código de error < 0 en caso de falla, o
  • Un valor de tiempo de espera T > 0 si la llamada no debe volver a intentarse hasta que hayan transcurrido T milisegundos.

En caso de error, no se asignará el identificador_contraseña_inscrito.

Definición en la línea 91 del archivo gatekeeper.h .

int(* verificar)(const struct gatekeeper_device *dev, uint32_t uid, uint64_t desafío, const uint8_t *enrolled_password_handle, uint32_t inscrito_password_handle_length, const uint8_t *provided_password, uint32_t provide_password_length, uint8_t **auth_token, uint32_t *auth_to ken_length, bool *request_reenroll)

Verifica que la contraseña proporcionada coincida con el identificador_contraseña_inscrito.

Las implementaciones de este módulo pueden conservar el resultado de esta llamada para dar fe de la actualidad de la autenticación.

Si tiene éxito, escribe la dirección de un token de verificación en auth_token, que se puede utilizar para certificar la verificación de contraseña en otros servicios confiables. Los clientes pueden pasar NULL para este valor.

Parámetros:

  • dev: puntero a gatekeeper_device adquirido mediante llamadas a gatekeeper_open
  • uid: el identificador de usuario de Android
  • Desafío: Un desafío opcional para autenticar, o 0. Se utiliza cuando un autenticador independiente solicita verificación de contraseña o para autenticación de contraseña transaccional.
  • enrolled_password_handle: el identificador de contraseña actualmente inscrito con el que el usuario desea verificar.
  • enrolled_password_handle_length: la longitud en bytes del búfer al que apunta enrolled_password_handle
  • proporcionada_contraseña: la contraseña en texto plano que se verificará con el identificador_contraseña_inscrito
  • proporcionada_contraseña_longitud: la longitud en bytes del búfer al que apunta proporcionada_contraseña
  • auth_token: en caso de éxito, se asigna a *auth_token un búfer que contiene el token de autenticación resultante de esta verificación. La persona que llama es responsable de desasignar esta memoria mediante una llamada para eliminar []
  • auth_token_length: en caso de éxito, la longitud en bytes del token de autenticación asignado a *auth_token se asignará a *auth_token_length
  • request_reenroll: una solicitud a las capas superiores para volver a registrar la contraseña verificada debido a un cambio de versión. No se establece si falla la verificación.

Devoluciones:

  • 0 en éxito
  • Un código de error < 0 en caso de falla, o
  • Un valor de tiempo de espera T > 0 si la llamada no debe volver a intentarse hasta que hayan transcurrido T milisegundos. En caso de error, el token de autenticación no se asignará

Definición en la línea 141 del archivo gatekeeper.h .


La documentación para esta estructura se generó a partir del siguiente archivo: