Passwords are widely used to protect our sensitive information or to gain access to specific resources. They should be changed frequently and be strong enough to prevent well-known attacks. Unfortunately, user-chosen passwords are usually short and lack sufficient entropy. A possible solution to these problems is to adopt a Key Derivation Function (KDF) that allows legitimate users to spend a moderate amount of time on key derivation, while imposing CPU/memory-intensive operations on the attacker side. In this paper, we focus on long-term passwords secured by the Password-Based Key Derivation Function 2 (PBKDF2) and present the case study of Linux Unified Key Setup (LUKS), a disk-encryption specification commonly implemented in Linux based operating systems. In particular, we describe how LUKS protects long-term keys by means of iteration counts defined at runtime, and analyze how external factors may affect the iteration counts computation. In doing so, we provide means of evaluating the iteration count values defined at run-time and experimentally show to what level PBKDF2 is still capable of providing sufficient security margin for a LUKS implementation.

Examining PBKDF2 security margin—Case study of LUKS / A. Visconti, O. Mosnáček, M. Brož, V. Matyáš. - In: JOURNAL OF INFORMATION SECURITY AND APPLICATIONS. - ISSN 2214-2126. - 46(2019 Jun), pp. 296-306.

Examining PBKDF2 security margin—Case study of LUKS

A. Visconti
Primo
;
2019

Abstract

Passwords are widely used to protect our sensitive information or to gain access to specific resources. They should be changed frequently and be strong enough to prevent well-known attacks. Unfortunately, user-chosen passwords are usually short and lack sufficient entropy. A possible solution to these problems is to adopt a Key Derivation Function (KDF) that allows legitimate users to spend a moderate amount of time on key derivation, while imposing CPU/memory-intensive operations on the attacker side. In this paper, we focus on long-term passwords secured by the Password-Based Key Derivation Function 2 (PBKDF2) and present the case study of Linux Unified Key Setup (LUKS), a disk-encryption specification commonly implemented in Linux based operating systems. In particular, we describe how LUKS protects long-term keys by means of iteration counts defined at runtime, and analyze how external factors may affect the iteration counts computation. In doing so, we provide means of evaluating the iteration count values defined at run-time and experimentally show to what level PBKDF2 is still capable of providing sufficient security margin for a LUKS implementation.
Password-Based Key Derivation Function 2 (PBKDF2); Iteration counts; GPU; Linux Unified Key Setup (LUKS)
Settore INF/01 - Informatica
giu-2019
5-apr-2019
Article (author)
File in questo prodotto:
File Dimensione Formato  
17AV_TEST_PBKDF2.pdf

Open Access dal 25/05/2021

Descrizione: Articolo principale
Tipologia: Post-print, accepted manuscript ecc. (versione accettata dall'editore)
Dimensione 463.07 kB
Formato Adobe PDF
463.07 kB Adobe PDF Visualizza/Apri
1-s2.0-S221421261730025X-main.pdf

accesso riservato

Tipologia: Publisher's version/PDF
Dimensione 1.88 MB
Formato Adobe PDF
1.88 MB Adobe PDF   Visualizza/Apri   Richiedi una copia
Pubblicazioni consigliate

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/2434/637040
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 10
  • ???jsp.display-item.citation.isi??? 6
social impact