Abstract
Ensuring protection of sensitive data in embedded devices widespread and operanting in adversary environment is a major issue. Among lot of instance of this problem, IoT is the well-know case study. In addition, very often for cost reason, the devices used in Internet of Things (IoT) do not integrate secure components (cryptoprocessor, encrypted memory, etc) like smart card. To solve this issue, this paper presents two contributions to fuzzy vault-biometric cryptosystems which can enable IoT devices supporting biometry to secure sensitive data they embed in their memory when they operate in an adverse environment. If an adversary captures a device and read content of this regular memory, it will be very difficult for him to recover the protected data using brute-force. The first advantage of the proposals is thus to enable IoT devices to still embed regular memory, to protect sensitive data, instead of an expensive native encrypted memory or to add a cryptoprocessor. The second advantage of the proposals is to enable to not require storing of helper data and thus improve security and also save memory. Obviously our proposals can also be used in already secure devices to enhance the security level. Experimental results performed using fingerprint modality show that the proposals have the potential to efficiently protect sensitive data despite the strong constrained of IoT devices.
Introduction
Nowadays, network connectivity is available everywhere through different technology (cellular like 2G to 4G, LoRA, Wi-Fi, BLE, etc.) and physical objects are supplemented with integrated chip circuit making them smart objects (so called things) which can provide new features for users. Altogether these communicating objects are known under the term ‘Internet of Things’ (IoT).
The IoT is the next wave of innovation that promises to improve and optimize our daily life based on intelligent sensors and smart objects working together. Through Internet Protocol (IP) connectivity, devices can now be connected to the Internet, thus allowing them to be read, controlled, and managed at any time and at any place [6].
The IPV6 new protocol, provides the spaces needed to accommodate a large influx of things onto the Internet and thus humans could easily assign an IP address to every “thing” on the planet. According to Steve Leibson, who identifies himself as “occasional docent at the Computer History Museum”, the address space expansion means that we could “assign an IPV6 address to every atom on the surface of the earth, and still have enough addresses left to do another 100
If the growing of IoT is very interesting for human-centric applications because of the new services these smart devices can provide, a major issue is related to security and trust on the information that users access and store on them. Thus, security is an important aspect for IoT deployments [2, 9, 19, 23, 18].
Indeed the smart devices often operate in an adverse environment, meaning that the adversary might have a physical access to them and if he succeeds to dump the content of the memory, he can access sensitive data. In this paper, only this simple attack is considered since if data are plaintext there is no need to pursuit more powerful attacks like the non invasive (side channel, fault-injection, etc.) or invasive (microprobing of buses, reverse-engineering of integrated chip circuit, …) ones.
A solution might be to use only IoT devices equipped with cryptoprocessor and encrypted memory but due to the additional costs incurred (it required lot of changes in the manufacturing and supply chains as well as the increase of the price), this is not realistic at short term.
Thus in this paper, contributions to biometric cryptosystem, where cryptography and biometrics are merged, are done to enable somehow low-cost IoT devices supporting biometry operating in an adverse environment to secure sensitive data they embed in their memory and it is worth noting that the improved biometric cryptosystem can also be added to already secure devices like smart cards.
The salient contributions of this paper are as follows:
Proposing a new fuzzy vault-based biometric cryptosystemto protect a secret key used to secure sensitive data in memory of IoT devices by using both error correcting and detecting codes to improve the efficiency of decoding process. Proposing new auto-alignment-based matching method, in fuzzy vault domain, that does not require any helper data to auto-align biometric data of the user and those in the vault.
The core idea is to hide a generated key in biometric data of the owner of the considered IoT device in fuzzy vault. The key, before being hidden, is used by IoT device to encrypt our sensitive data. An attacker accessing to the memory of IoT device would not have access to biometric data or generated key since they are mixed together and stored in a fuzzy vault form. He cant also access to sensitive data since it is encrypted. However a genuine user presenting the biometric data would be able to access the generated key and thus can use it to provide her the protected data. To improve efficiency of the process of key recovery from fuzzy vault, auto-alignment-based matching and an correcting code process are used jointly.
The first advantage of the proposals is thus to enable IoT devices to still embed regular memory, to protect sensitive data, instead of an expensive native encrypted memory or to add a cryptoprocessor. The second advantage is to enable to not require storing of helper data for biometric matching and thus not leak any sensitive information that allows to know secrecy and save memory at once.
The remaining sections are organized as follows. Section 2 presents literature review on biometric cryptosystems. Section 3 details the proposals we introduced in the biometric cryptosystem to protect sensitive data in IoT. Some experimental results using FVC2002 DB2 [11] and a critical analysis are provided in Section 4. Section 5 concludes the paper.
In the Internet of Things (IoT), multiple sensors, tiny computer chips and communications devices will be integrated with physical objects such as appliances to enable communication between them and other computing devices such as cloud servers, computers, laptops and smartphones. These devices will exchange huge amount of data with each other’s and confidentiality must be preserved while communication. Whatever data IoT devices will share should be encrypted. To provide confidentiality, data encryption mechanism (cryptosystem) is commonly used where data is converted into ciphertext form which makes it difficult to access for an adversary. To perform this task, such mechanism uses cryptographic key stored in regular memory. However, if this kind of sensitive data is plaintext, the adversary might have a physical access to IoT device and if he succeeds to dump the content of the memory, he can access to the cryptographic key. Note that, generally, sensitives data is any information whose revelation put the network at risk whatever its nature and size.
Addressing critical IoT security threats is now more important than ever. A solution for this issue might be to make a secure IoT devices (equipped with cryptoprocessor and encrypted memory) like secure smart card. However, very often for cost reason, this solution is not realistic at short term.
Over the past several years, many researches have been conducted in the field of biometric cryptosystems aiming to addressing the issues related to integration of biometrics into cryptosystems; among which we quote [4, 17, 22, 8, 7, 3, 21, 15, 16, 24]. Such concept have been studied and exploited to secure data in generic cryptosystems. So, why not to reuse it within somehow low-cost IoT devices to protect their data?
In this context, there are two main approaches for using biometrics into cryptosystems which are: biometric-based key release and biometric-based key binding. In biometric-based key release approach, a cryptographic key is stored together with biometric template of the user on a device, and is only released upon a successful biometric authentication. In biometric-based key binding approach, Instead of storing the cryptographic key and biometric template together on a device, we can hide a cryptographic key within the biometric template itself in such a way that only a fuzzy template will be stored on a device. Further, cryptographic key marries (binds) with the user biometric template in such a way that both the cryptographic key and biometric data are inaccessible to an attacker. Such key can only be recovered if a valid biometric is provided for authentication.
From a fundamental security standpoint, the key distinction between the two techniques is whether an adversary, with physical access, could have any useful information. In biometric-based key release approach, the cryptographic key and biometric template are decoupled and both stored unencrypted on memory which makes them easily accessible. Such approach provides illusion of security rather than guaranteed security.
We focus in the state of the art on key binding-based schemes since they provide a promising solution of security for IoT. In literature, there is two main key binding-based schemes which are: (i) fuzzy commitment scheme [8] proposed by Juels and Wattenberg and (ii) fuzzy vault scheme [7] proposed by Juels and Sudan.
In fuzzy commitment scheme, using fingerprint modality, data are represented as an ordered set of minutiae (i.e. feature extracted from fingerprint). At the enrollment stage,the secret is then merged in such set by a XOR operation and using error correcting code such as Hamming or Reed-Solomon. The result is an encrypted set called fuzzy commitment. To retrieve the secret, a set of minutiae extracted from a query fingerprint can again be XOR-ed with the fuzzy commitment construct at the authentication stage to obtain some code. After correcting some small number of bit errors, introduced by noice, the secret will be then obtained. Noice is resulted in the different measures when extracting the minutiae. However, this scheme was not practicable because minutiae data of fingerprint are often subject to reordering and erasures and the security proof of this scheme holds only if minutiae are uniformly distributed, which is not the case in reality.
Fuzzy vault scheme is more compatible with partial and reordered data of variable length such as a set of minutiae. It is a promising approach of biometric cryptosystem. The security of this scheme is based on the infeasibility of the polynomial reconstruction (i.e., if Bob does not know many points that lie on
The major shortcomings of the work in [3, 21] is that their system inherently assumes that fingerprints, the one that locks the vault and the one that tries to unlock it, were pre-aligned. This is not a realistic assumption for fingerprint-based authentication systems and thus can not be applicable.
Nagar et al. [15] and Nandakumar et al. [16] also proposed a fingerprint vault with an auto-alignment based on helper data generated from ridges information and considered as reference points. [15] reported a GAR of 95% at 0.01% of false accept rate (FAR), and [16] reported a GAR of 94.3% at 0.09% FAR. Their systems have performed the decoding time (the mean decoding time was 3 sec and 8 sec, respectively) but they have a limitation in the possibility of failure to find the reference points in some images. Furthermore, their method may leak information of the fingerprint ridges which enables to find a secret data and thus their method can not be implemented in IoT devices because of risk of compromising sensitive data.
Finally, Yang and Verbauwhede [24] aligned automatically two fingerprint templates in the fuzzy vault domain using a concept of reference minutia which could be generated with the distance and the orientation of two nearest-neighbor minutiae. However, their system is based on the impractical assumption that two reference minutia can always be extracted accurately from both the input and the enrolled fingerprints. They reported a GAR of 83% and FAR of 0% as performance of decoding.
Proposed biometric cryptosystem for IoT
Overall principle
IoT devices often operate in an adverse environment and having no dedicated secure hardware to secure sensitive data they embed in their regular memory, meaning that the adversary might have a physical access to dump the content of the memory and thus can access sensitive data. Such devices need a solution that should provide them a guaranteed security. A solution that appears somehow low-cost is biometric cryptosystem. On the other hand, biometric cryptosystems based on a realistic and practicable assumption that can ensure security of sensitive data, is an issue that should be addressed. These are the rationales that pushed us to contribute by giving two proposals to biometric cryptosystems in order to make them quite realistic, practicable and secure before being integrated on IoT devices supporting biometry to secure sensitive data they embed in such a way that an adversary who captures IoT device and read content of its regular memory, it will be very difficult for him to recover the protected data using brute-force. Further, it is worth noting that the improved biometric cryptosystem can also be added to already secure devices like smart cards in order to enhance security level.
Foremost, fingerprint is chosen as a biometric modality, among other, for our proposed approach because it dominates the biometrics market both privately and publicly or in government. The report 2009–2014 provided by the International Biometric Group confirms it [1].
Our approach for building biometric cryptosystem, as usual in fingerprint-based authentication systems, splits in two steps: the encoding (enrollment) step and the decoding (authentication) step. Each of these steps introduce a pre-processing step in order to improve the fingerprint image. However, our approach should take into consideration constraints related to IoT devices (limited processor speed and memory space) as well as several issues such as automatic fingerprint alignment, authentication accuracy, template size, execution time, error correcting code, etc.
During encoding, the owner of the considered IoT device presents his fingerprint. After the pre-processing step, biometric data are extracted from the enhanced fingerprint image and represented by a set
At decoding, a user wants to authenticate presents her fingerprint and the pre-processing step is involved. A set
The aim of using error-correcting code, in communication, is to prevent loss of information during transmission of a message over a noisy channel by adding redundancy to the original message
Fingerprint image enhancement.
The aim of using error detecting code is to check if decoding procedure had led to the right key.
In this implementation Reed Solomon code [14] is the error correcting code used to encoding and decoding the secret key
Fingerprint enhancement (Fig. 1) is very important for any automatic fingerprint matching system [12]. The performance of a feature extraction algorithm heavily depends on the quality of the input fingerprint images. In this context, the preprocessing step proceeds as follows:
Reduce the size of the processed fingerprint images at 256 Different ridge filters are used to increase the contrast between ridges and valleys of the reduced fingerprint.
This procedure has for task to encrypt sensitive data IoT device and then hide the encryption key. Foremost, a random secret key
In the set
where
Encoding procedure.
Decoding procedure.
This procedure reconstructs the polynomial
The previous matching in Algorithm 3 starts by aligning the unlocking set
Illustration of the error margins associated with the signature.
Calculate translation vector
Thus,
In practice the type is rarely used because it often happens that it changes during the extraction phase. It is, therefore, not considered reliable. Concerning the direction, an angular tolerance zone is defined and the matching condition is then expressed by:
A value of
It should be noted that a severe condition on the reference criterion will be imposed in order to limit the calculations, by reducing a value of
Only the transformation that determines the best alignment and leads to the greatest number
The FVC2002-DB2 Database [11] is used to compare results of this work with those in [3, 21, 15]. The characteristics of this database are summarized in Table 1.
All experiments were performed on a system with a 2.93 GHz processor. Only the first four impressions/finger of the 100 different fingers were used in the experiments, one as template and the other as query. As like in fingerprint recognition, each sample was matched against the remaining samples of the same finger to compute the GAR. Similarly, the first sample of each finger was matched against the first sample of the remaining fingers to compute the FAR.
Summary of the fingerprint database used in the experiments (FVC2002-DB2)
The tolerance zone associated with each position of the minutia is defined by the rectangle of size
The number of symbols of Reed-Solom q is taken as 7, 11, 19 which correspond to
Authentication accuracy comparison
Size of the fingerprint vault
Experimental result of decoding procedure
Authentication accuracy: As shown in Table 2, the proposed fingerprint vault-based biometric cryptosystem can improve the performance of GAR without using an other information such as helper data ([15, 16]) for auto-alignment. However, a short secret key
Fingerprint vault size: The vault
As shown in Table 3,
Execution time analysis: Table 4 shows the execution time of decoding procedure. The time required to decode the vault is about 3.672, 4.552 and 5.583 s for 200, 300, and 400 chaff minutiae,respectively. However, the decoding time could have been improved with a more reliable processor.
Complexity analysis: Eq. (9) and Table 5 show the complexity of this system in case of a brute-force attack to select
Complexity calculation
Comparison between previous researches and proposed method
Nandakumar et al. [16] showed that the min-entropy [5] of the template set of real minutiae
This paper presents contributions to biometric cryptosystems which can enable IoT devices supporting biometry to secure sensitive data they embedded in their regular memory when they operate in an adverse environment. The improved biometric cryptosystem could be used to extend security for any sensitive information, regardless of its size and nature, in IoT device. It also ensures the recovery of such sensitive data during decoding (authentication) step. Hence, an attacker has only the brute force way to break the system since there is no additional data allowing a revelation of sensitive information. Thus, with physical access, he may retrieve the vault or cipher message from IoT device, but it will be of no use. This method does not require any design cost. Experimental results performed using fingerprint modality have been encouraging and prove that the proposed method is efficient to protect sensitive data despite the strong constrained of IoT devices. Compared with results reported in [3, 21], the proposed method is realistic since it uses auto-alignment rather pre-alignment-based matching and thus it is practicable. Moreover, it has approximately the same authentication accuracy as [15] but it is more better because it does not require storing of helper data, for auto-alignment, that allows to know some sensitive information saves memory at once. On the other hand, the proposed method increases attack complexity since it is possible to adding more chaff points and thus it can also be used in already secure devices, like smart cards, to enhance the security level. However, the computational complexity during decoding process increases each time the number of chaff points increases. This constraint is inevitable until finding heuristic-based reliable optimization method for matching in fuzzy vault domain. Moreover, to implementing this method on IoT devices, it requires that matching module will be optimized further to be performed by an in-IoT processor.
Footnotes
Authors’ Bios
