Protocolo de dispositivo de interfaz humana

El protocolo de dispositivo de interfaz humana (protocolo HID) es un protocolo USB para una amplia categoría de dispositivos de entrada de usuario.

Los dispositivos de la categoría incluyen, entre otros, teclados, ratones, pen tablets, cámaras web, auriculares, controladores de juegos y de simulación.

El protocolo HID tiene una velocidad de sondeo predeterminada de 125 Hz en comparación con los 2 Hz de PS / 100. Esta tasa le da a USB una ventaja en la capacidad de respuesta con una latencia más baja. Tanto USB como PS / 2 proporcionan velocidades más rápidas, pero donde PS / 2 alcanza un máximo de 200 hz, el USB sube a 1000 hz, lo que equivale a una pequeña latencia de 1 ms. Esta baja latencia proporciona un tiempo de respuesta excelente para teclados, ratones, cascos de realidad virtual, controladores de juegos y simulación.

Con los teclados, el protocolo HID se usa para habilitar la funcionalidad previa al sistema operativo con un modo de arranque de sustitución de 6 teclas para BIOS (sistema básico de entrada / salida) y sistemas operativos que no son compatibles con USB. Este modo tiene la salvedad de interrumpir el sistema cada vez que se interroga al dispositivo y se interroga independientemente de si hay un cambio en la entrada o no. Un modo de sistema operativo separado que habilita más funciones no tiene este problema. Muchos dispositivos pueden funcionar con los controladores básicos incluidos con los sistemas operativos hasta que se instalen los controladores personalizados, lo que facilita la instalación del hardware.

La capacidad del protocolo HID para anunciar sus capacidades facilita la conexión de dispositivos y hacer que el sistema operativo encuentre los controladores hace que USB sea una experiencia muy plug and play. Al mismo tiempo, la especificación no ofrece ningún medio para verificar que los dispositivos sean lo que dicen ser. Esta falta de verificación puede ser una vulnerabilidad que conduce a dispositivos enmascarados. BadUSB es un ejemplo de malware que aprovecha esta vulnerabilidad.