Systems and methods for performing behavioral authentication of Universal Serial Bus (USB) devices are described. These methods may capture one or more behavioral characteristics of a specific USB device and may generate a device fingerprint based on the captured characteristics. When the USB device is plugged in again in the host device, the behavioral characteristics of the USB device may be re-captured and may be compared to those of the device fingerprint. If it is determined that such behavioral characteristics substantially match, authorization may be granted. In one example, timing characteristics may be used as behavioral characteristics, in which the timing of a series of transactions is sensed by the host device. A timing characteristic may include, for example, the time it takes the USB device to complete a transaction. The transactions are part of an enumeration process in some embodiments.
展开▼