A Future-Adaptable Password Scheme

Total Page:16

File Type:pdf, Size:1020Kb

A Future-Adaptable Password Scheme THE ADVANCED COMPUTING SYSTEMS ASSOCIATION The following paper was originally published in the Proceedings of the FREENIX Track: 1999 USENIX Annual Technical Conference Monterey, California, USA, June 6–11, 1999 A Future-Adaptable Password Scheme Niels Provos and David Mazières The OpenBSD Project © 1999 by The USENIX Association All Rights Reserved Rights to individual papers remain with the author or the author's employer. Permission is granted for noncommercial reproduction of the work for educational or research purposes. This copyright notice must be included in the reproduced paper. USENIX acknowledges all trademarks herein. For more information about the USENIX Association: Phone: 1 510 528 8649 FAX: 1 510 548 5738 Email: [email protected] WWW: http://www.usenix.org A Future-Adaptable Password Scheme Niels Provos and David Mazi eres fprovos,dmg@op enbsd.org The OpenBSD Project the face of increasingly p owerful attackers. Abstract One widespread use of passwords, and a good ex- Many authentication schemes dep end on secret ample of failure to adapt, is the UNIX password passwords. Unfortunately, the length and ran- system. UNIX, a multi-user op erating system, re- domness of user-chosen passwords remain xed quires users to prove their identity b efore accessing over time. In contrast, hardware improvements system resources. A user typically b egins a session constantly give attackers increasing computational by providing her username and secret password to a power. As a result, password schemes such as the login program. This program then veri es the pass- traditional UNIX user-authentication system are word using a system-wide password le. Given the failing with time. imp ortance of keeping passwords secret, UNIX do es not store plaintext passwords in this le. Instead, This pap er discusses ways of building systems in it keeps hashes of passwords, using a one-way func- which password security keeps up with hardware tion, crypt [9], that can only b e inverted by guessing sp eeds. We formalize the prop erties desirable in a preimages. Toverify a password, the login program good password system, and show that the compu- hashes the password and compares the result to the tational cost of any secure password scheme must appropriate hash in the password le. increase as hardware improves. We presenttwo al- gorithms with adaptable cost|eksblow sh, a blo ck At the time of deployment in 1976, crypt could hash cipher with a purp osefully exp ensivekey schedule, fewer than 4 passwords p er second. Since the only and bcrypt, a related hash function. Failing a ma- known way of inverting crypt is to guess preim- jor breakthrough in complexity theory, these al- ages, the algorithm made passwords very dicult gorithms should allow password-based systems to to recover from their hashes|so much so, in fact, adapt to hardware improvements and remain secure that the designers of UNIX felt comfortable leaving well into the future. the password le readable by all users. Today,over 20 years later, a fast workstation with heavily opti- mized software can p erform over 200,000 crypt op- 1 Intro duction erations p er second. Attackers can now exp ediently discover plaintext passwords by hashing entire dic- tionaries of common passwords and comparing the As micropro cessors grow faster, so do es the sp eed results to entries in a password le. crypt nonethe- of cryptographic software. Fast cryptography op ens less still enjoys widespread use, and legacy software many opp ortunities for making systems more se- even forces many sites to keep their password les cure. It renders encryption usable for a wide range readable by all users. of applications. It also p ermits larger values of tun- able security parameters such as key length. In- Todaywehave authentication schemes considerably creasing security parameters makes cryptography more sophisticated than the UNIX password le. In exp onentially or at least sup erp olynomially more practice, however, implementations of these schemes dicult to break, dwar ng any b ene t faster hard- still often dep end on users rememb ering secret pass- ware may o er attackers. Unfortunately, one se- words. There are alternatives, such as issuing sp e- curity parameter|the length and entropyof user- cial authentication hardware to users or giving them chosen passwords|do es not scale at all with com- printed lists of randomly generated access co des, but puting p ower. While many systems require users to these approaches generally inconvenience users or cho ose secret passwords for authentication, few ac- incur additional cost. Thus, passwords continue to tually adapt their algorithms to preserve securityin attacks has centered around communication over play an imp ortant role in the vast ma jority of user- insecure networks. If cryptographic proto cols rely authentication systems. on user-chosen passwords as keys, they may op en themselves up to o -line guessing attacks. Gong This pap er discusses ways of building systems in et. al. [7] suggest several proto col design tricks to which password security keeps up with hardware thwart password guessing by network attackers. Un- sp eeds. We presenttwo algorithms with adaptable fortunately, their most interesting prop osals require cost|eksblow sh, a blo ck cipher with a purp osefully encryption algorithms with unusual and dicult to exp ensivekey schedule, and bcrypt, a related hash achieve prop erties. function. Failing a ma jor breakthrough in complex- ity theory, these algorithms should allow password- Several p eople have designed secure password pro- based systems to adapt to hardware improvements to cols that let users authenticate themselves over and remain secure 20 years into the future. insecure networks without the need to remember or certify public keys. Bellovin and Merritt [2, 3] rst The rest of the pap er is organized as follows. In prop osed the idea, giving several concrete proto- Section 2, we discuss related work on password secu- cols putatively resistant to o -line guessing attacks. rity. In Section 3, we explain the requirements for a Patel [11] later cryptanalyzed those proto cols, but go o d password scheme. Section 4 presents eksblow- p eople have since continued developing and re ning sh, a 64-bit blo ck cipher that lets users tune the others in the same vein. More recent prop osals such cost of the key schedule. Section 5 intro duces the as SRP [16] show promise of b eing secure. variable-cost bcrypt password hashing function and describ es our implementation in the Op enBSD op- Of course, even a secure password proto col requires erating system. Finally, Section 6 compares bcrypt some server capable of validating users with correct to two widely-used password hashing functions. passwords. An attacker who obtains that server's secret state can mount an o -line guessing attack. Because secure password proto cols require public 2 Related Work key cryptography [8], they do have a tunable key length parameter. However, this parameter pri- Password guessing attacks can be categorized by marily controls the diculty of mounting o -line the amountofinteraction they require with an au- attacks without a server's secret state; it only in- thentication system. In on-line attacks, the p erp e- directly a ects the cost of an o -line attack given trator must make use of an authentication system that state. Tuning key length to preserve password to check each guess of a password. In o -line at- guessing costs would have other unintended conse- tacks, an attacker obtains information|such as a quences, for instance increasing message sizes and password hash|that allows him to check password costing servers unnecessary computation. By com- guesses on his own, with no further access to the bining a scheme like SRP with the bcrypt algorithm system. On-line attacks are generally considerably presented in this pap er, however, one can vary the slower than o -line ones. Systems can detect on- cost of guessing passwords indep endently from most line attacks fairly easily and defend against them by other prop erties of the proto col. slowing the rate of password checking. In contrast, once an attacker has obtained password veri cation Whatever progress o ccurs in preventing o -line at- information, the only protection a system has from tacks, one can never rule them out entirely. In fact, o -line attacks is the computational cost of checking the decision to have an op enly readable password p otential passwords. le was not an oversighton the part of the UNIX system designers [9]. Rather, it was a reaction to Techniques for mitigating the threat of o -line pass- the dicultyofkeeping the password le secret in word guessing generally aspire to one of two goals| previous systems, and to the realization that a sup- limiting a system's susceptibility to o -line attacks p osedly secret password le would need to resist or increasing their computational cost. As a simple o -line guessing anyway. This realization remains example of the former, many mo dern UNIX systems equally true to day. Aside from the obvious issues now keep password hashes secret from users, stor- of backup tap e security, attackers who compromise ing them in a read-protected shadow password le UNIX machines routinely make o with the list of rather than in the standard op enly readable one. hashed passwords, whether shadowed or not. Much of the work on preventing o -line password than schemes more closely tied to passwords. For A p o or hashing algorithm not only complicates re- example, without mo difying the core proto cols, ssh covery from break-ins, it also endangers other ma- could easily employ the eksblow sh algorithm pro- chines.
Recommended publications
  • GPU-Based Password Cracking on the Security of Password Hashing Schemes Regarding Advances in Graphics Processing Units
    Radboud University Nijmegen Faculty of Science Kerckhoffs Institute Master of Science Thesis GPU-based Password Cracking On the Security of Password Hashing Schemes regarding Advances in Graphics Processing Units by Martijn Sprengers [email protected] Supervisors: Dr. L. Batina (Radboud University Nijmegen) Ir. S. Hegt (KPMG IT Advisory) Ir. P. Ceelen (KPMG IT Advisory) Thesis number: 646 Final Version Abstract Since users rely on passwords to authenticate themselves to computer systems, ad- versaries attempt to recover those passwords. To prevent such a recovery, various password hashing schemes can be used to store passwords securely. However, recent advances in the graphics processing unit (GPU) hardware challenge the way we have to look at secure password storage. GPU's have proven to be suitable for crypto- graphic operations and provide a significant speedup in performance compared to traditional central processing units (CPU's). This research focuses on the security requirements and properties of prevalent pass- word hashing schemes. Moreover, we present a proof of concept that launches an exhaustive search attack on the MD5-crypt password hashing scheme using modern GPU's. We show that it is possible to achieve a performance of 880 000 hashes per second, using different optimization techniques. Therefore our implementation, executed on a typical GPU, is more than 30 times faster than equally priced CPU hardware. With this performance increase, `complex' passwords with a length of 8 characters are now becoming feasible to crack. In addition, we show that between 50% and 80% of the passwords in a leaked database could be recovered within 2 months of computation time on one Nvidia GeForce 295 GTX.
    [Show full text]
  • PHC: Status Quo
    PHC: status quo JP Aumasson @veorq / http://aumasson.jp academic background principal cryptographer at Kudelski Security, .ch applied crypto research and outreach BLAKE, BLAKE2, SipHash, NORX Crypto Coding Standard Password Hashing Competition Open Crypto Audit Project board member do you use passwords? this talk might interest you! Oct 2013 "hash" = 3DES-ECB( static key, password ) users' hint made the guess game easy... (credit Jeremi Gosney / Stricture Group) May 2014; "encrypted passwords" (?) last week that's only the reported/published cases Lesson if Adobe, eBay, and Avast fail to protect their users' passwords, what about others? users using "weak passwords"? ITsec people using "weak defenses"? developers using "weak hashes"? cryptographers, who never bothered? agenda 1. how (not) to protect passwords 2. the Password Hashing Competition (PHC) 3. the 24-2 PHC candidates 4. next steps, and how to contribute WARNING this is NOT about bikeshed topics as: password policies password managers password-strength meters will-technology-X-replace-passwords? 1. how (not) to protect passwords solution of the 60's store "password" or the modern alternative: obviously a bad idea (assuming the server and its DB are compromised) solution of the early 70's store hash("password") "one-way": can't be efficiently inverted vulnerable to: ● efficient dictionary attacks and bruteforce ● time-memory tradeoffs (rainbow tables, etc.) solution of the late 70's store hash("password", salt) "one-way": can't be efficiently inverted immune to time-memory tradeoffs vulnerable to: ● dictionary attacks and bruteforce (but has to be repeated for different hashes) solution of the 2000's store hash("password", salt, cost) "one-way": can't be efficiently inverted immune to time-memory tradeoffs inefficient dictionary attacks and bruteforce main ideas: ● be "slow" ● especially on attackers' hardware (GPU, FPGA) => exploit fast CPU memory access/writes PBKDF2 (Kaliski, 2000) NIST and PKCS standard in Truecrypt, iOS, etc.
    [Show full text]
  • Study on Massive-Scale Slow-Hash Recovery Using Unified
    S S symmetry Article Study on Massive-Scale Slow-Hash Recovery Using Unified Probabilistic Context-Free Grammar and Symmetrical Collaborative Prioritization with Parallel Machines Tianjun Wu 1,*,†, Yuexiang Yang 1,†, Chi Wang 2,† and Rui Wang 2,† 1 College of Computer, National University of Defense Technology, Changsha 410073, China; [email protected] 2 VeriClouds Co., Seattle, WA 98105, USA; [email protected] (C.W.); [email protected] (R.W.) * Correspondence: [email protected]; Tel.: +86-13-54-864-2846 † The authors contribute equally to this work and are co-first authors. Received: 23 February 2019; Accepted: 26 March 2019; Published: 1 April 2019 Abstract: Slow-hash algorithms are proposed to defend against traditional offline password recovery by making the hash function very slow to compute. In this paper, we study the problem of slow-hash recovery on a large scale. We attack the problem by proposing a novel concurrent model that guesses the target password hash by leveraging known passwords from a largest-ever password corpus. Previously proposed password-reused learning models are specifically designed for targeted online guessing for a single hash and thus cannot be efficiently parallelized for massive-scale offline recovery, which is demanded by modern hash-cracking tasks. In particular, because the size of a probabilistic context-free grammar (PCFG for short) model is non-trivial and keeping track of the next most probable password to guess across all global accounts is difficult, we choose clever data structures and only expand transformations as needed to make the attack computationally tractable. Our adoption of max-min heap, which globally ranks weak accounts for both expanding and guessing according to unified PCFGs and allows for concurrent global ranking, significantly increases the hashes can be recovered within limited time.
    [Show full text]
  • Assignment 3 – Authentication July 2021 Due Thursday, August 12, 2021
    CryptoWorks21 Network Security Assignment 3 – Authentication July 2021 due Thursday, August 12, 2021 Assignment 3 – Authentication Assignment reports must be submitted by Thursday, August 12, 2021. Assignment Description In this assignment you will carry out exercises related to the lectures on authentication. You will work on cracking password hashes, as well as investigate two-factor authentication on the Internet. Assignment Requirements and Setup Virtual machines. You will need to use the Kali Linux virtual machines. If you have not downloaded and installed it yet, please check the “Assignment 0” document. John the Ripper. You will need to use a tool called John the Ripper in order to crack password hashes. This tool is pre-installed in the Kali Linux virtual machine. However, John is very computationally intensive, and it might run faster on your main computer rather than inside a virtual machine. If you do decide to install it on your main computer, be sure to use the “jumbo” version, which contains support for many more types of hash algorithms. • For Windows, you can download a jumbo build from the John the Ripper homepage (http://www.openwall.com/john/) • For macOS, you can install John using the command-line package manager “Home- brew”. To install Homebrew, visit https://brew.sh/. Once you’ve installed Home- brew, you can install John using the command brew install john-jumbo . Getting text to and from your virtual machine. During this assignment, you may need to copy text to or from your various virtual machines. This can be somewhat annoying. It is possible to set up shared clipboards in VirtualBox (Settings Ñ General Ñ Advanced Ñ Shared Clipboard Ñ Bidirectional), but these are not always reliable.
    [Show full text]
  • Analysis of Password Cracking Methods & Applications
    The University of Akron IdeaExchange@UAkron The Dr. Gary B. and Pamela S. Williams Honors Honors Research Projects College Spring 2015 Analysis of Password Cracking Methods & Applications John A. Chester The University Of Akron, [email protected] Please take a moment to share how this work helps you through this survey. Your feedback will be important as we plan further development of our repository. Follow this and additional works at: http://ideaexchange.uakron.edu/honors_research_projects Part of the Information Security Commons Recommended Citation Chester, John A., "Analysis of Password Cracking Methods & Applications" (2015). Honors Research Projects. 7. http://ideaexchange.uakron.edu/honors_research_projects/7 This Honors Research Project is brought to you for free and open access by The Dr. Gary B. and Pamela S. Williams Honors College at IdeaExchange@UAkron, the institutional repository of The nivU ersity of Akron in Akron, Ohio, USA. It has been accepted for inclusion in Honors Research Projects by an authorized administrator of IdeaExchange@UAkron. For more information, please contact [email protected], [email protected]. Analysis of Password Cracking Methods & Applications John A. Chester The University of Akron Abstract -- This project examines the nature of password cracking and modern applications. Several applications for different platforms are studied. Different methods of cracking are explained, including dictionary attack, brute force, and rainbow tables. Password cracking across different mediums is examined. Hashing and how it affects password cracking is discussed. An implementation of two hash-based password cracking algorithms is developed, along with experimental results of their efficiency. I. Introduction Password cracking is the process of either guessing or recovering a password from stored locations or from a data transmission system [1].
    [Show full text]
  • Modern Password Security for System Designers What to Consider When Building a Password-Based Authentication System
    Modern password security for system designers What to consider when building a password-based authentication system By Ian Maddox and Kyle Moschetto, Google Cloud Solutions Architects This whitepaper describes and models modern password guidance and recommendations for the designers and engineers who create secure online applications. A related whitepaper, Password security ​ for users, offers guidance for end users. This whitepaper covers the wide range of options to consider ​ when building a password-based authentication system. It also establishes a set of user-focused recommendations for password policies and storage, including the balance of password strength and usability. The technology world has been trying to improve on the password since the early days of computing. Shared-knowledge authentication is problematic because information can fall into the wrong hands or be forgotten. The problem is magnified by systems that don't support real-world secure use cases and by the frequent decision of users to take shortcuts. According to a 2019 Yubico/Ponemon study, 69 percent of respondents admit to sharing passwords with ​ ​ their colleagues to access accounts. More than half of respondents (51 percent) reuse an average of five passwords across their business and personal accounts. Furthermore, two-factor authentication is not widely used, even though it adds protection beyond a username and password. Of the respondents, 67 percent don’t use any form of two-factor authentication in their personal life, and 55 percent don’t use it at work. Password systems often allow, or even encourage, users to use insecure passwords. Systems that allow only single-factor credentials and that implement ineffective security policies add to the problem.
    [Show full text]
  • Authentication Requirements in Cryptography
    Authentication Requirements In Cryptography Autolytic Micah scurrying narcotically and numerically, she perdures her contractility denigrate fustily. Utilitarian Thibaud attempt questioningly. Deviate and bleached Christie still carry-ons his Leonids sullenly. In the session key above are equivalent aes encrypt sensitive, requirements in authentication ciphersuite or on various vendors who the phy layer to the recipient passes the ciphertext Message authentication with fancy key implies message integrity. The requirements be considered as generic in the sense that they are ss technologies. Any inner authentication method employed authentication from the combine to the authentication server. The preceding paragraphs have endeavoured to present the complete set of concepts in a logical sequence of development. Chapter 11 Message Authentication Codes The luncheon of. MAC even to get obtain the confidentially part. AAA connection rm authentication the peers, as well as additional information about authenticators, roaming agreements, network policies and other network information. Since X509 is based on cross key cryptography the maintain of DOA used. Most often referred to hash functions has available protocols that it harder for vehicular networks. AWS KMS also lets you use all or part of the encryption context as the condition for a permission in a policy or grant. To authority confirms that authentication as a bad decision. This can be done by using it to support the secure transmission of a new secret key from the originator to the other party. There still appear to be many engineering details that have to be worked out before such a machine could be built. Most toward the web pages on the Internet require no authentication or authorization Encryption Encryption involves the crest of transforming data.
    [Show full text]
  • Implementation and Performance Analysis of PBKDF2, Bcrypt, Scrypt Algorithms
    Implementation and Performance Analysis of PBKDF2, Bcrypt, Scrypt Algorithms Levent Ertaul, Manpreet Kaur, Venkata Arun Kumar R Gudise CSU East Bay, Hayward, CA, USA. [email protected], [email protected], [email protected] Abstract- With the increase in mobile wireless or data lookup. Whereas, Cryptographic hash functions are technologies, security breaches are also increasing. It has used for building blocks for HMACs which provides become critical to safeguard our sensitive information message authentication. They ensure integrity of the data from the wrongdoers. So, having strong password is that is transmitted. Collision free hash function is the one pivotal. As almost every website needs you to login and which can never have same hashes of different output. If a create a password, it’s tempting to use same password and b are inputs such that H (a) =H (b), and a ≠ b. for numerous websites like banks, shopping and social User chosen passwords shall not be used directly as networking websites. This way we are making our cryptographic keys as they have low entropy and information easily accessible to hackers. Hence, we need randomness properties [2].Password is the secret value from a strong application for password security and which the cryptographic key can be generated. Figure 1 management. In this paper, we are going to compare the shows the statics of increasing cybercrime every year. Hence performance of 3 key derivation algorithms, namely, there is a need for strong key generation algorithms which PBKDF2 (Password Based Key Derivation Function), can generate the keys which are nearly impossible for the Bcrypt and Scrypt.
    [Show full text]
  • Speeding up Linux Disk Encryption Ignat Korchagin @Ignatkn $ Whoami
    Speeding Up Linux Disk Encryption Ignat Korchagin @ignatkn $ whoami ● Performance and security at Cloudflare ● Passionate about security and crypto ● Enjoy low level programming @ignatkn Encrypting data at rest The storage stack applications @ignatkn The storage stack applications filesystems @ignatkn The storage stack applications filesystems block subsystem @ignatkn The storage stack applications filesystems block subsystem storage hardware @ignatkn Encryption at rest layers applications filesystems block subsystem SED, OPAL storage hardware @ignatkn Encryption at rest layers applications filesystems LUKS/dm-crypt, BitLocker, FileVault block subsystem SED, OPAL storage hardware @ignatkn Encryption at rest layers applications ecryptfs, ext4 encryption or fscrypt filesystems LUKS/dm-crypt, BitLocker, FileVault block subsystem SED, OPAL storage hardware @ignatkn Encryption at rest layers DBMS, PGP, OpenSSL, Themis applications ecryptfs, ext4 encryption or fscrypt filesystems LUKS/dm-crypt, BitLocker, FileVault block subsystem SED, OPAL storage hardware @ignatkn Storage hardware encryption Pros: ● it’s there ● little configuration needed ● fully transparent to applications ● usually faster than other layers @ignatkn Storage hardware encryption Pros: ● it’s there ● little configuration needed ● fully transparent to applications ● usually faster than other layers Cons: ● no visibility into the implementation ● no auditability ● sometimes poor security https://support.microsoft.com/en-us/help/4516071/windows-10-update-kb4516071 @ignatkn Block
    [Show full text]
  • Hash Crack: Password Cracking Manual
    Hash Crack. Copyright © 2017 Netmux LLC All rights reserved. Without limiting the rights under the copyright reserved above, no part of this publication may be reproduced, stored in, or introduced into a retrieval system, or transmitted in any form or by any means (electronic, mechanical, photocopying, recording, or otherwise) without prior written permission. ISBN-10: 1975924584 ISBN-13: 978-1975924584 Netmux and the Netmux logo are registered trademarks of Netmux, LLC. Other product and company names mentioned herein may be the trademarks of their respective owners. Rather than use a trademark symbol with every occurrence of a trademarked name, we are using the names only in an editorial fashion and to the benefit of the trademark owner, with no intention of infringement of the trademark. The information in this book is distributed on an “As Is” basis, without warranty. While every precaution has been taken in the preparation of this work, neither the author nor Netmux LLC, shall have any liability to any person or entity with respect to any loss or damage caused or alleged to be caused directly or indirectly by the information contained in it. While every effort has been made to ensure the accuracy and legitimacy of the references, referrals, and links (collectively “Links”) presented in this book/ebook, Netmux is not responsible or liable for broken Links or missing or fallacious information at the Links. Any Links in this book to a specific product, process, website, or service do not constitute or imply an endorsement by Netmux of same, or its producer or provider. The views and opinions contained at any Links do not necessarily express or reflect those of Netmux.
    [Show full text]
  • NCL Password Cracking--Key Getting Started You Can Install a Pre-Built Vmware VM from Here
    NCL Password Cracking--Key Getting Started You can install a pre-built VMware VM from here. You just need to open the VM, not install it. The login credentials are kali, kali. https://www.offensive-security.com/kali-linux-vm-vmware-virtualbox-image-download/ Then read this excellent blog from NCL. https://cryptokait.com/2019/09/24/everything-you-need-to-know-about-password-cracking-for-the- national-cyber-league-games/ A Note about Hashcat Hashcat, and the older John the Ripper, keep a list of hashes they have already cracked. If the hash is in the list, it will not appear in the output. This can be confusing if you are having problems and run the same hash file repeatedly. If you think some cracked hashes are missing, look in .hashcat/hashcat.potfile in your home directory, or perhaps where you ran hashcat from. If you want to start from scratch, just delete .hashcat/hashcat.potfile A Crack to Start With This is from the paragraph in the NCL Blog, “Using a Pre-Made Wordlist on Kali.” Follow the procedure to unzip (actually Gnu unzip or gunzip) the password list from the rockyou.com breach (I moved rockyou.txt to my home directory instead of Downloads.) Then run the hashcat line, hashcat -m 0 {means the hashes are MD5} -a 0 {attack will be wordlist only} -o outputfile {where the output goes} hashlist pwlist Here are the hashes. 8549137cd494c22ae87eef3e18a46986 0f96a320a8c0bf7e3f6d375b0d9d3a4c 1a8cb8d148b513dfa1d285077fc4e3fb 22a313110bf5b84c0a58eecc27deaa30 e4fd50109f0e40e8c1a895d8e5c71199 These are easy and should crack in under a minute. Solution Save the hashes in a file on Kali.
    [Show full text]
  • Key Derivation Functions and Their GPU Implementation
    MASARYK UNIVERSITY FACULTY}w¡¢£¤¥¦§¨ OF I !"#$%&'()+,-./012345<yA|NFORMATICS Key derivation functions and their GPU implementation BACHELOR’S THESIS Ondrej Mosnáˇcek Brno, Spring 2015 This work is licensed under a Creative Commons Attribution- NonCommercial-ShareAlike 4.0 International License. https://creativecommons.org/licenses/by-nc-sa/4.0/ cbna ii Declaration Hereby I declare, that this paper is my original authorial work, which I have worked out by my own. All sources, references and literature used or excerpted during elaboration of this work are properly cited and listed in complete reference to the due source. Ondrej Mosnáˇcek Advisor: Ing. Milan Brož iii Acknowledgement I would like to thank my supervisor for his guidance and support, and also for his extensive contributions to the Cryptsetup open- source project. Next, I would like to thank my family for their support and pa- tience and also to my friends who were falling behind schedule just like me and thus helped me not to panic. Last but not least, access to computing and storage facilities owned by parties and projects contributing to the National Grid In- frastructure MetaCentrum, provided under the programme “Projects of Large Infrastructure for Research, Development, and Innovations” (LM2010005), is also greatly appreciated. v Abstract Key derivation functions are a key element of many cryptographic applications. Password-based key derivation functions are designed specifically to derive cryptographic keys from low-entropy sources (such as passwords or passphrases) and to counter brute-force and dictionary attacks. However, the most widely adopted standard for password-based key derivation, PBKDF2, as implemented in most applications, is highly susceptible to attacks using Graphics Process- ing Units (GPUs).
    [Show full text]