Skip to main content

Lightweight Authentication Using Noisy Key Derived from Physically Unclonable Function

  • Conference paper
  • First Online:
Innovative Security Solutions for Information Technology and Communications (SecITC 2022)

Abstract

Internet of things (IoT) systems consist of many devices that send their sensor data to cloud servers. Cryptographic authentication is essential for maintaining the consistency of these systems, and lightweight authentication in particular is required because most IoT devices are resource-constrained. Physically unclonable functions (PUF) are promising tools for protecting such devices from cyber-attacks. It can naturally generate a unique but noisy (i.e., erroneous) key for a device without implementing costly secure key storage in the device. However, a costly error correction technique is required to remove the noise. In this paper, we propose a lightweight authentication scheme with a noisy key (i.e., an uncorrected key) naturally derived from a PUF. The security of our scheme is based on a combinatorial problem with small noise. We also discuss its security and feasibility.

Y. Komano—Presently, the author is with Chiba Institute of Technology, Japan.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 64.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 84.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    Storing a key in NVM increases both the material cost and the manufacturing cost of storing the key using secure equipment.

  2. 2.

    H (random oracle) is instantiated by a hash function. Because a hash function can be used for checking message integrity and so on, it is implemented in lots of security devices to which our protocol can be applied. Hence, we believe that implementing the hash function is not an additional cost, rather than implementing an error correction designed with PUF characteristics to remove output noises.

  3. 3.

    For example, if SRAM-PUF is used, the string is the initial states of L SRAM cells from the top (with no input) or from the address indicated by the input. Or, if an (n-XOR) arbiter-PUF is used, the string is a concatenation of L outputs for L inputs.

  4. 4.

    http://www.st.com/en/evaluation-tools/nucleo-f401re.html (accessible on October 18, 2022).

  5. 5.

    Against some PUF instantiations, attacks that learn the model of the PUF from the known input–output pairs have been reported.

References

  1. Bellare, M., Rogaway, P.: Random oracles are practical: a paradigm for designing efficient protocols. In: Denning, D.E., Pyle, R., Ganesan, R., Sandhu, R.S., Ashby, V. (eds.) CCS 1993, Proceedings of the 1st ACM Conference on Computer and Communications Security, pp. 62–73. ACM (1993)

    Google Scholar 

  2. Blum, A., Furst, M., Kearns, M., Lipton, R.J.: Cryptographic primitives based on hard learning problems. In: Stinson, D.R. (ed.) CRYPTO 1993. LNCS, vol. 773, pp. 278–291. Springer, Heidelberg (1994). https://doi.org/10.1007/3-540-48329-2_24

    Chapter  Google Scholar 

  3. Delvaux, J., Verbauwhede, I.: Attacking PUF-based pattern matching key generators via helper data manipulation. In: Benaloh, J. (ed.) CT-RSA 2014. LNCS, vol. 8366, pp. 106–131. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-04852-9_6

    Chapter  Google Scholar 

  4. Dodis, Y., Ostrovsky, R., Reyzin, L., Smith, A.: Fuzzy extractors: how to generate strong keys from biometrics and other noisy data. SIAM J. Comput. 38, 97–139 (2008)

    Article  MathSciNet  MATH  Google Scholar 

  5. Gassend, B., Clarke, D., Van Dijk, M., Devadas, S.: Silicon physical random functions. In: Proceedings of the 9th ACM Conference on Computer and Communications Security, CCS 2002, pp. 148–160. ACM (2002)

    Google Scholar 

  6. Gassend, B., Lim, D., Clarke, D.E., van Dijk, M., Devadas, S.: Identification and authentication of integrated circuits. Concurr. Practi. Exp. 16(11), 1077–1098 (2004)

    Article  Google Scholar 

  7. Guajardo, J., Kumar, S.S., Schrijen, G.-J., Tuyls, P.: FPGA intrinsic PUFs and their use for IP protection. In: Paillier, P., Verbauwhede, I. (eds.) CHES 2007. LNCS, vol. 4727, pp. 63–80. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-74735-2_5

    Chapter  Google Scholar 

  8. Holcomb, D.E., Burleson, W.P., Fu, K.: Initial SRAM state as a fingerprint and source of true random numbers for RFID tags. In: Conference on RFID Security 2007. IEEE (2007)

    Google Scholar 

  9. Karakoyunlu, D., Sunar, B.: Differential template attacks on PUF enabled cryptographic devices. In: 2010 IEEE International Workshop on Information Forensics and Security, WIFS 2010, pp. 1–6. IEEE (2010)

    Google Scholar 

  10. Kiltz, E., Pietrzak, K., Cash, D., Jain, A., Venturi, D.: Efficient authentication from hard learning problems. In: Paterson, K.G. (ed.) EUROCRYPT 2011. LNCS, vol. 6632, pp. 7–26. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-20465-4_3

    Chapter  Google Scholar 

  11. Komano, Y., Ohta, K., Sakiyama, K., Iwamoto, M., Verbauwhede, I.: Single-round pattern matching key generation using physically unclonable function. Secur. Commun. Netw. 2019, 1719585:1–1719585:13 (2019)

    Google Scholar 

  12. Lim, D.: Extracting secret keys from integrated circuits. Master’s thesis, Massachusetts Institute of Technology (MIT) (2004)

    Google Scholar 

  13. Lyubashevsky, V., Masny, D.: Man-in-the-middle secure authentication schemes from LPN and weak PRFs. In: Canetti, R., Garay, J.A. (eds.) CRYPTO 2013. LNCS, vol. 8043, pp. 308–325. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-40084-1_18

    Chapter  MATH  Google Scholar 

  14. Maes, R.: Physically Unclonable Functions: Constructions. Properties and Applications. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-642-41395-7

    Book  MATH  Google Scholar 

  15. Maes, R., Tuyls, P., Verbauwhede, I.: Low-overhead implementation of a soft decision helper data algorithm for SRAM PUFs. In: Clavier, C., Gaj, K. (eds.) CHES 2009. LNCS, vol. 5747, pp. 332–347. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-04138-9_24

    Chapter  Google Scholar 

  16. Majzoobi, M., Rostami, M., Koushanfar, F., Wallach, D.S., Devadas, S.: Slender PUF protocol: a lightweight, robust, and secure authentication by substring matching. In: 2012 IEEE Symposium on Security and Privacy Workshops, pp. 33–44. IEEE Computer Society (2012)

    Google Scholar 

  17. Merli, D., Schuster, D., Stumpf, F., Sigl, G.: Side-channel analysis of pufs and fuzzy extractors. In: McCune, J.M., Balacheff, B., Perrig, A., Sadeghi, A.-R., Sasse, A., Beres, Y. (eds.) Trust 2011. LNCS, vol. 6740, pp. 33–47. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-21599-5_3

    Chapter  Google Scholar 

  18. National Institute of Standards and Technology (NIST). Federal information processing standards publication (FIPS) 180-4, secure hash standard (SHS) (2015)

    Google Scholar 

  19. National Institute of Standards and Technology (NIST). Recommendation for block cipher modes of operation: the CMAC mode for authentication (2016)

    Google Scholar 

  20. Paral, Z.S., Devadas, S.: Reliable and efficient PUF-based key generation using pattern matching. In: 2011 IEEE International Symposium on Hardware-Oriented Security and Trust (HOST2011), pp. 128–133. IEEE (2011)

    Google Scholar 

  21. Ranasinghe, D.C., Engels, D.W., Cole, P.H.: Security and privacy: modest proposals for low- cost RFID systems. In: Auto-ID Labs Research Workshop, pp. 58–64. IEEE (2004)

    Google Scholar 

  22. Regev, O.: On lattices, learning with errors, random linear codes, and cryptography. J. ACM 56(6), 34:1–34:40 (2009)

    Google Scholar 

  23. Rostami, M., Majzoobi, M., Koushanfar, F., Wallach, D.S., Devadas, S.: Robust and reverse-engineering resilient PUF authentication and key-exchange by substring matching. IEEE Trans. Emerging Topics Comput. 2(1), 37–49 (2014)

    Article  Google Scholar 

  24. Sadeghi, A.-R., Naccache, D. (eds.): Towards Hardware-Intrinsic Security. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-14452-3

    Book  MATH  Google Scholar 

  25. Pieter, J., Schalkwijk, M.: An algorithm for source coding. IEEE Trans. Inf. Theory 18(3), 395–399 (1972)

    Article  MathSciNet  MATH  Google Scholar 

  26. Schaller, A., Arul, T., van der Leest, V., Katzenbeisser, S.: Lightweight anti-counterfeiting solution for low-end commodity hardware using inherent PUFs. In: Holz, T., Ioannidis, S. (eds.) Trust 2014. LNCS, vol. 8564, pp. 83–100. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-08593-7_6

    Chapter  Google Scholar 

  27. Shoup, V.: Sequences of games: a tool for taming complexity in security proofs. IACR Cryptology ePrint Archive 2004, 332 (2004)

    Google Scholar 

  28. Tebelmann, L., Pehl, M., Sigl, G.: EM side-channel analysis of BCH-based error correction for PUF-based key generation. In: Chang, C.-H., Rührmair, U., Zhang, W. (eds.) Proceedings of the 2017 Workshop on Attacks and Solutions in Hardware Security, ASHES@CCS 2017, Dallas, TX, USA, 3 November 2017, pp. 43–52. ACM (2017)

    Google Scholar 

  29. Uyematsu, T., Iwata, K., Okamoto, E.: An efficient algorithm for enumerative coding. IEICE Trans. J80-A(3), 573–575 (1997)

    Google Scholar 

  30. (Mandel) Yu, M.-D., M’Raïhi, D.., Verbauwhede, I., Devadas, S.: A noise bifurcation architecture for linear additive physical functions. In: 2014 IEEE International Symposium on Hardware-Oriented Security and Trust, HOST 2014, pp. 124–129. IEEE Computer Society (2014)

    Google Scholar 

Download references

Acknowledgements

We thank the anonymous referees, whose comments have helped us improve the presentation of the paper. This work was supported by Grant-in-Aid for Scientific Research (JP18H05289, JP18K11293, JP21H03395, JP22H03590).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Yuichi Komano .

Editor information

Editors and Affiliations

Appendices

A Related Works

We give a review of the helper-data-free PUF-based authentication protocol Slender PUF as a previous work on an authentication protocol using a noisy key. We then review a non-PUF-based authentication that relates to our protocol.

Fig. 2.
figure 2

Improved Slender PUF [23].

1.1 A.1 Helper-Data-Free PUF-Based Authentication: Slender PUF

We first review Slender PUF, which was proposed by Majzoobi et al. [16]. Rostami et al. [23] then improved it to enhance the security against learning attacksFootnote 5, by adding circularity operations such as \(\textsf{SubCirc}\) and \(\textsf{CircPad}\). In Slender PUF and its improvement, the device is assumed to include a PUF. The server is also assumed to learn the model of the PUF and securely store the model during enrollment of the device. Yu et al. [30] also proposed a variant of Slender PUF, which treated selected bits from the PUF output, instead of the circulative data, as the response.

Figure 2 shows the protocol of Rostami et al. [23]. In this figure, \(\textsf{TRNG}\), \(\textsf{CGEN}\), and \(\textsf{SPUF}\) are a true number generator, a challenge generator, and a strong PUF with an L-bit output, respectively. \(\textsf{SubCirc}(\textbf{y}, i_1)\) is a function that extracts an m-bit substring \(\textbf{w}\) from the \(i_1\)-th bit of the L-bit PUF output \(\textbf{y}\), for an integer \(i_1 < L\) and the predetermined m. In \(\textsf{SubCirc}\), the L-bit PUF output is used in a circular manner. That is, if \(i_1+m > L\), the remainder of the substring is taken from the beginning of \(\textbf{y}\). \(\textsf{CircPad}(\textbf{w},i_2)\) is a function that pads the m-bit substring \(\textbf{w}\) with random bits to create an \(L'\)-bit string where \(L' > m\). Specifically, \(\textsf{CircPad}\) generates an \(L'\)-bit string \(\textbf{a}'\) at random, replaces a substring of \(\textbf{a}'\) from its \(i_2\)-th bit with \(\textbf{w}\), and returns the resulting substring as \(\textbf{a}\). In this process, the \(L'\)-bit string \(\textbf{a}'\) is used in a circular manner. That is, if \(i_2 + m > L'\), the remainder of the substring is taken from the beginning of \(\textbf{a}'\). \(\textsf{Predict}(\textbf{x})\) is a function that, for an input \(\textbf{x}\), returns \(\textsf{SPUF}(\textbf{x})\) from the trained PUF model. \(\epsilon \) is a prefixed threshold.

Because this protocol transmits the circulative raw bits of the PUF output, the PUF output cannot be reused in order to prevent forgery attacks using previous responses. Hence, it requires a strong PUF as a building block. Although we omit the details, the original Slender PUF [16] and another variant [30] also require a strong PUF for similar reasons.

1.2 A.2 Non-PUF-Based Authentication

Kiltz et al. [10] proposed a lightweight authentication protocol with man-in-the-middle security implied by their secure MAC. Figure 3 shows the protocol that we refer to while constructing our protocol later. In this figure, \(\textbf{s}_{\downarrow \textbf{v}} \in \{0,1\}^l\) denotes, for \(\textbf{s}, \textbf{v} \in \{0,1\}^{2l}\) such that \(\textsf{hw}(\textbf{v})=l\), an l-bit string, which is a concatenation of (i-th) bits extracted from \(\textbf{s}\), where the corresponding (i-th) bit of \(\textbf{v}\) is 1. \(\textsf{Ber}_{\tau }\) denotes the Bernoulli distribution parameterized by \(\tau \in (0,1/2)\). \(\textbf{R}^{\textrm{T}}\) and \(\textsf{rank}(\textbf{R})\) denote a transpose and a rank of matrix \(\textbf{R}\), respectively.

In this protocol, the device and the server digitally share secret keys: a 2l-bit secret key \(\textbf{s}\) and a pair of secret functions \((\textsf{C}, h, \pi )\), where \(\textsf{C}\) is a public function from \(\mathbb {Z}_2^{\nu }\) to \(\mathbb {Z}_2^{2l}\) whose output satisfies both \(\textsf{hw}(\textsf{C}(\textbf{x})) = l\) and \(\textsf{hw}(\textsf{C}(\textbf{x}) \oplus \textsf{C}(\textbf{x}')) \ge 0.9 l\), for arbitrary inputs \(\textbf{x} \ne \textbf{x}'\), h is a pairwise independent permutation, and \(\pi \) is a permutation.

Fig. 3.
figure 3

2-round lightweight device authentication based on \(\hbox {MAC}_1\) [10].

As in the figure, the device computes a response by adding a small amount of logical noise \(\textbf{e}\), chosen from the Bernoulli distribution, to the product of the matrix and secret vector. The server reproduces the response in a similar manner to the device, and accepts the device if the distance of these responses is small enough. Note that the noise makes it difficult for an adversary to recover the secret vector from the response. The scheme can be proven to be secure if the learning parity with noise (LPN, [2]) problem is hard.

B Proof Sketch of Theorem 1

In this subsection, we give a sketch of security proof for our protocol.

Sketch of Proof: We give a proof by contradiction. Namely, we show that if an adversary \(\mathcal {A}\) against our protocol exists, then we can construct a reduction \(\mathcal {B}\) that, by using \(\mathcal {A}\) as a subroutine, breaks the linear unpredictability of the underlying PUF.

\(\mathcal {A}\) is an adversary who forges a response of the authentication protocol. \(\mathcal {A}\) makes queries to a random oracle \(O_H\) and an authentication oracle \(O_A\), and then, \(\mathcal {A}\) asks \(\mathcal {B}\) to send a challenge \(\textbf{a}^{*}\) to \(\mathcal {A}\). After that, \(\mathcal {A}\) continues to make queries to the above two oracles, and then \(\mathcal {A}\) outputs a forged response \((\textbf{b}^{*}, \textbf{z}^{*})\) for \(\textbf{a}^{*}\). Note that \(\mathcal {A}\) is disallowed to output \(( \textbf{b}^{*}, \textbf{z}{*})\) where \(O_A\) returns \(( \textbf{b}^{*}, \textbf{z}^{*})\) for query \(\textbf{a}^*\).

\(\mathcal {B}\) interacts with \(\mathcal {A}\) to break the linear unpredictability of the PUF. \(\mathcal {B}\) is allowed to access the PUF oracle \(O_P\) to obtain the XOR of PUF outputs with positions indicating the output bits to be XORed. With the replies of \(O_P\), \(\mathcal {B}\) simulates \(O_H\) and \(O_A\) in order for \(\mathcal {A}\) to work correctly. If \(\mathcal {B}\) succeeds, \(\mathcal {B}\) can obtain a forgery from \(\mathcal {A}\), and, with this forgery, \(\mathcal {B}\) tries to break the underlying assumption of the PUF.

The proof uses the game hopping technique [27] with four steps from \(\textsf{Game}_0\) (original game for \(\mathcal {A}\) to break the authentication protocol) to \(\textsf{Game}_{4}\) (where \(\mathcal {B}\) breaks the assumption) below. In each game, \(\mathcal {B}\) interacts with \(\mathcal {A}\) to receive a forged response. Here, \(\textsf{S}_i\) denotes an event where \(\mathcal {B}\) receives a forgery that passes the verification from \(\mathcal {A}\) in \(\textsf{Game}_i\) (\(i \in [0,4]\)).

Overview of Games:

In the proof, we consider five games.

\(\textsf{Game}_0\) is an original/real game where \(\mathcal {A}\) tries to break the security of our authentication protocol. Note that in the random oracle model, we assume that H is a random oracle. That is, \(\mathcal {A}\) obtains the output of H not from a computation, but from a query to oracle \(O_H\) outside of \(\mathcal {A}\).

In \(\textsf{Game}_1\), we modify the entity who invokes the PUF. In \(\textsf{Game}_0\), \(\mathcal {B}\) (which interacts with \(\mathcal {A}\)) invokes PUF by itself. However, because our proof goal is to construct \(\mathcal {B}\), which breaks the security assumption of the PUF that is located outside of \(\mathcal {B}\), we let \(\mathcal {B}\) ask the PUF output to \(O_P\), not to invoke PUF by itself.

In \(\textsf{Game}_2\), we modify \(\mathcal {A}\) to ask \(O_H\) about \(H(\textbf{a}^{*}, \textbf{b}^{*},i)\) as for the forgery \((\textbf{a}^{*}, \textbf{b}^{*}, \textbf{z}^{*} )\), in advance.

\(\textsf{Game}_3\) and \(\textsf{Game}_4\) are the main parts of this proof. In this proof, \(\mathcal {B}\) tries to distinguish the real world from the random one, by using \(\mathcal {A}\) as a subroutine.

The basic strategy for constructing \(\mathcal {B}\) is as follows. From the challenger \(\mathcal {C}\), \(\mathcal {B}\) receives \(\{(\widetilde{p}_{i,1}, \cdots \), \(\widetilde{p}_{i,l}, \widetilde{z}_i)\}\) as an instance. Let us consider the case where \(\mathcal {B}\) receives a forged response \((\textbf{b}^{*}, \textbf{z}^{*})\) corresponding to \(\{(\widetilde{p}_{i,1}, \cdots , \widetilde{p}_{i,l})\}\) from \(\mathcal {A}\). If \(c=1\), then, for more than or equal to k i’s, \(z_i^{*}\) is expected to be equal to \(\widetilde{z}_i\). However, if \(c=0\), because \(\widetilde{z}_i\)’s are random and independent from PUF outputs, \(z_i^{*}\) can be equal to \(\widetilde{z}_i\) for about n/2 i’s. Hence, \(\mathcal {B}\) can distinguish between whether the number of equations \(\{z_i^{*} = \widetilde{z}_i\}\) exceeds the threshold k or not.

To make \(\mathcal {A}\) output forged response corresponding to \(\{(\widetilde{p}_{i,1}, \cdots , \widetilde{p}_{i,l})\}_i\), \(\mathcal {B}\) needs to embed it in the simulation of the answer of \(O_H\). In \(\textsf{Game}_3\), \(\mathcal {B}\) decides when \(\mathcal {B}\) embed them on queries to \(O_H\). To do so, \(\mathcal {B}\) looks for the query from \(\mathcal {A}\) to \(O_H\) on \((\textbf{a}^{*}, \textbf{b}^{*}, *)\). Note that \(\mathcal {A}\) is a black-box adversary and \(\mathcal {A}\) may not query \((\textbf{a}^{*}, \textbf{b}^{*}, 1), (\textbf{a}^{*}, \textbf{b}^{*}, 2), \cdots \) in sequential, but in random order. Therefore, at step 10(b) in \(\textsf{Game}_3\), \(\mathcal {B}\) also checks whether it is the first query on \((\textbf{a}^{*}, \textbf{b}^{*})\).

Finally, in \(\textsf{Game}_4\), we let \(\mathcal {B}\) distinguish the worlds by a threshold k.

Probability Estimation: From above discussions,

$$\begin{aligned} \epsilon '= & {} |\Pr [c'=1|c=1] - \Pr [c'=1 | c=0]|\\\ge & {} \Pr [\textsf{S}_4|c=1] - \Pr [\textsf{Bad}_2] \\= & {} \Pr [\textsf{S}_3] - \Pr [\textsf{Bad}_2] \\\ge & {} \frac{1}{q_h + n q_a}\Pr [\textsf{S}_2] - \Pr [\textsf{Bad}_2] \\\ge & {} \frac{1}{q_h + n q_a} \left( \Pr [\textsf{S}_0] - \Pr [\textsf{Bad}_1] \right) - \Pr [\textsf{Bad}_2] \\= & {} \frac{1}{q_h + n q_a} \left( \epsilon - \Pr [\textsf{Bad}_1]\right) - \Pr [\textsf{Bad}_2] \\\ge & {} \frac{1}{q_h + n q_a}\epsilon - \frac{1}{2^{k_b}} - \sum _{i= k}^{n} \frac{\left( {\begin{array}{c}n\\ i\end{array}}\right) }{2^{i}} \end{aligned}$$

holds, where \(\textsf{Bad}_i\) denotes an event where \(\mathcal {A}\)’s views are different between \(\textsf{Game}_{i-1}\) and \(\textsf{Game}_i\). \(\square \)

Rights and permissions

Reprints and permissions

Copyright information

© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Komano, Y., Iwamoto, M., Ohta, K., Sakiyama, K. (2023). Lightweight Authentication Using Noisy Key Derived from Physically Unclonable Function. In: Bella, G., Doinea, M., Janicke, H. (eds) Innovative Security Solutions for Information Technology and Communications. SecITC 2022. Lecture Notes in Computer Science, vol 13809. Springer, Cham. https://doi.org/10.1007/978-3-031-32636-3_12

Download citation

  • DOI: https://doi.org/10.1007/978-3-031-32636-3_12

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-031-32635-6

  • Online ISBN: 978-3-031-32636-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics