# H2O: Secure Interactions in IoT via Behavioral Fingerprinting
## 4 Behavioral Fingerprint for Reliability
### Human-to-Object Interaction  
This section is devoted to detail the various biometric authentication techniques our approach can rely on, in order to make an object in the H2O network, capable of continuously identifying its owner. As will be clearer in the next, this step is essential to provide a mean to assess entities reliability also in human-to-human communications. Biometric identification is defined as the mechanism to automatic identify a person through  
Figure 4: A network portion of H2O. the analysis of his biological (physiological, anatomical) or behavioral traits. This may happen since most of the biological and behavioral characteristics used are peculiar of an individual and can uniquely identify him. Indeed, in the last years, the use of ID cards, keys, passwords, or other standard systems has been replaced in lots of contexts by these more dependable forms of authentication [62]. Obviously, not all the human characteristics can be chosen to be used in biometric authentication. Therefore, according to the National Institute of Standards and Technology (NIST) ([[https://www.nist.gov](https://www.nist.gov)]([https://www.nist.gov](https://www.nist.gov)), accessed on 30 April 2021), there are some features that make a human trait distinctive and hence, eligible for acceptance. These features are: universality, uniqueness, permanence, measurability, performance, acceptability and circumvention [63]. Examples falling in the aforementioned biological category of biometric mechanisms are: fingerprint, hand geometry, iris, face, and ear. Whereas, examples of behavioral biometrics mechanisms include: gait, signature, and keystroke dynamics. ```
Result: Node reliability computation \(n_{j}\) wants to communicate with \(n_{z}\); if\(n_{z}\in R(n_{j})\)and\(fr(n_{j},n_{z})\geq 1-\epsilon\)then \(n_{z}\) is reliable; else while\(n_{i}\in\Gamma(n_{j})\cap\Gamma(n_{z})\)do \(n_{i}\) computes \(fr(n_{i},n_{z})\); \(n_{i}\) sends \(fr(n_{i},n_{z})\) to \(n_{j}\);  end while \(n_{j}\) computes \(dfr(n_{j},n_{z})\); if\((dfr(n_{j},n_{z})\geq 1-\epsilon)\)and\((|\Delta(n_{j},n_{z})|\geq r)\)then \(n_{z}\) is reliable; else \(n_{z}\) is not reliable;  end if  end while
```  
**Algorithm 1**Algorithm for object-to-object reliability computation  
As already said, the diversity of devices and applications in the IoT universe leads to a variety of solutions to the problem of continuous authentication of users (through biometrics). Such a diversity is mostly due to the different capabilities of the devices themselves. According to this reasoning, we can divide IoT devices that interact with humans and which compute biometrics to authenticate their owners, into two sets. The former is composed of objects having a permanent physical contact with the person during usage, such as: activity trackers, smartwatches, and insulin pumps. The latter consists of devices that do not maintain permanent contact with humans, such as: intelligent thermostats, occupancy sensors, and smart household appliances. To the first set belong wearable devices holding an inertial measurement unit (IMU), which are, in turn, comprised of an accelerometer and a gyroscope, and that can verify and authenticate their owner by his gait. The concept underneath is that humans move their limbs in unique patterns, and these patterns can be sensed be the device. Leveraging machine learning techniques to learn these patterns, software inside smartphones, fitbands, smartwatches and specific health sensors can be able to verify a human through his gait. Similarly, photoplethysmogram (PPG) sensors generate signals according to the amount of blood that flows in a person's veins, which depends on frequency heartbeat. In particular, this last trait that can be analysed through echocardiogram signals (ECG) can be monitored by smartphones, fitbands, smartwatches and specific health sensors. It contains enough information to enable user authentication.