Design and Implementation of Authentication Scheme By

Total Page:16

File Type:pdf, Size:1020Kb

Design and Implementation of Authentication Scheme By DESIGN AND IMPLEMENTATION OF AUTHENTICATION SCHEME BY ENCRYPTED NEGATIVE PASSWORD A Project Presented to the Faculty of California State Polytechnic University, Pomona In Partial Fulfillment Of the Requirements for the Degree Master of Science In Computer Science By Laxmi Chidri 2019 SIGNATURE PAGE PROJECT: DESIGN AND IMPLEMENTATION OF AUTHENTICATION SCHEME BY ENCRYPTED NEGATIVE PASSWORD AUTHOR: Laxmi Chidri DATE SUBMITTED: Fall 2019 Department of Computer Science Dr. Gilbert Young _______________________________________ Project Committee Chair Computer Science Dr. Yu Sun _______________________________________ Computer Science ii ABSTRACT Secure password storage is a vital aspect in systems based on password authentication, which is still the most widely used authentication technique, despite its some security flaws. In this project, we propose a password authentication framework that is designed for secure password storage and could be easily integrated into existing authentication systems. In our framework, first, the received plain password from a client is hashed through a cryptographic hash function (e.g., SHA-256). Then, the hashed password is converted into a negative password. Finally, the negative password is encrypted into an Encrypted Negative Password (abbreviated as ENP) using a symmetric-key algorithm (e.g., AES), and multi-iteration encryption could be employed to further improve security. The cryptographic hash function and symmetric encryption make it difficult to crack passwords from ENPs. Moreover, there are lots of corresponding ENPs for a given plain password, which makes precomputation attacks (e.g., lookup table attack and rainbow table attack) infeasible. The algorithm complexity analyses and comparisons show that the ENP could resist lookup table attack and provide stronger password protection under dictionary attack. It is worth mentioning that the ENP does not introduce extra elements (e.g., salt); besides this, the ENP could still resist precomputation attacks. Most importantly, the ENP is the first password protection scheme that combines the cryptographic hash function, the negative password and the symmetric-key algorithm, without the need for additional information except the plain password. iii TABLE OF CONTENTS SIGNATURE PAGE .......................................................................................................... ii ABSTRACT ....................................................................................................................... iii LIST OF TABLES .............................................................................................................. v LIST OF FIGURES ........................................................................................................... vi CHAPTER 1 ....................................................................................................................... 1 CHAPTER 2 ....................................................................................................................... 4 CHAPTER 3 ....................................................................................................................... 7 CHAPTER 4 ..................................................................................................................... 14 CHAPTER 5 ..................................................................................................................... 17 CHAPTER 6 .................................................................................................................... 28 CHAPTER 7 .................................................................................................................... 33 CHAPTER 8 .................................................................................................................... 37 CHAPTER 9 .................................................................................................................... 45 CHAPTER 10 ................................................................................................................... 48 REFERENCES ................................................................................................................. 49 iv LIST OF TABLES Table 1. Software Requirements ....................................................................................... 12 Table 2. Hardware Requirements ..................................................................................... 12 Table 3. Mode of Operations ............................................................................................ 18 Table 4. User Operations …..……………………………………………………………21 Table 5. 8 bit lookup table ………………………………………………………………43 v LIST OF FIGURES Figure 1: Block Diagram of ENP ...................................................................................... 14 Figure 2: Block Diagram for Registration phase .............................................................. 22 Figure 3:Flow diagram for Authentication phase ............................................................. 23 Figure 4: Block diagram for Verification phase ............................................................... 24 Figure 5: Flow diagram for Verification phase ................................................................. 25 Figure 6: Flow diagram for ENP-As -A-Service .............................................................. 25 Figure 7:Flow Diagram of ENP ........................................................................................ 26 Figure 8: Usage Statistics .................................................................................................. 27 Figure 9:Use case diagram for ENP .................................................................................. 28 Figure 10: Sequence Diagram 1 ........................................................................................ 29 Figure 11: Sequence Diagram 2 ........................................................................................ 29 Figure 12:Sequence Diagram 3 ......................................................................................... 30 Figure 13: Sequence Diagram 4 ........................................................................................ 30 Figure 14: Class diagram 1 ............................................................................................... 31 Figure 15: Class diagram 2 ............................................................................................... 31 Figure 16: Class diagram 3 ............................................................................................... 32 Figure 17: Class diagram 4 ............................................................................................... 32 Figure 18: Program Mapping ............................................................................................ 38 Figure 19: Block diagram of AES Algorithm ................................................................... 41 Figure 20: AddRound Key generation .............................................................................. 42 Figure 21: SubByte generation ......................................................................................... 43 Figure 22:ShiftRows generation ....................................................................................... 44 vi Figure 23:MixColumn generation ..................................................................................... 44 Figure 24:HomePage Screenshot ...................................................................................... 45 Figure 25:Registration Phase Screenshot .......................................................................... 45 Figure 26:Verification Phase Screenshot .......................................................................... 46 Figure 27: ENP-As-A-Service Screenshot ........................................................................ 46 Figure 28:Usage Statistics of ENP service ....................................................................... 47 vii CHAPTER 1 INTRODUCTION 1.1 Problem Identification Owing to the development of the Internet, a vast number of online services have emerged, in which password authentication is the most widely used authentication technique, for it is available at a low cost and easy to deploy. Hence, password security always attracts great interest from academia and industry. Despite great research achievements on password security, passwords are still cracked since users’ careless behaviors. For instance, many users often select weak passwords; they tend to reuse same passwords in different systems; they usually set their passwords using familiar vocabulary for its convenience to remember. In addition, system problems may cause password compromises. It is very difficult to obtain passwords from high security systems. On the one hand, stealing authentication data tables (containing usernames and passwords) in high security systems is difficult. On the other hand, when carrying out an online guessing attack, there is usually a limit to the number of login attempts. However, passwords may be leaked from weak systems. Vulnerabilities are constantly being discovered, and not all systems could be timely patched to resist attacks, which gives adversaries an opportunity to illegally access weak systems. In fact, some old systems are more vulnerable due to their lack of maintenance. Finally, since passwords are often reused, adversaries may log into high security systems through cracked passwords
Recommended publications
  • 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]
  • Password Security Compliance
    Password Security Compliance Reduce risk and ensure compliance by managing password strength and policy. WHITE PAPER 1 PASSWORD SECURITY COMPLIANCE Reduce risk and ensure compliance by managing password strength and policy. Overview Passwords are a critical component of security. Passwords serve to protect user accounts; however, weak passwords may violate compliance standards, be reversed engineered back to plaintext and sold on the dark web, or result in a costly data breach if compromised. A periodic review of password rules is a vital component of your compliance and security strategies. Purpose The purpose of this security brief is to inform organizations of key password requirements and initiate internal compliance conversations. Use this security brief as a tool to enforce or strengthen your existing password policy. Learn more at fusionauth.io 2 According to Verizon’s 2017 Data Breach Investigations Report, 81% of hacking-related breaches leveraged either stolen and/or weak passwords. Financial, healthcare and public sector organizations 81% of hacking-related accounted for over half breaches leveraged of those breaches. either stolen and/or weak Password strength is an important security passwords. concern. With over four billion credentials Verizon BDIR 2017 stolen last year and data breaches averaging $3.62M in direct costs per incident, companies must be prepared for the security risks they face. While all applications should apply password constraints to discourage easy to guess passwords, many organizations are required to do so by law. It is necessary to have stringent password constraints in place in order to comply with industry regulations. Compliance is about fostering a culture that values user data and integrity and that culture starts at the top.
    [Show full text]
  • Analyzing Password Strength
    Analyzing Password Strength Martin M.A. Devillers Juli 2010 Password authentication requires no ABSTRACT specialized hardware, such as with finger- print authentication, can be easily imple- Password authentication is still the most mented by developers and just as easily used used authentication mechanism in today’s by users. In short: It’s usable. computer systems. In most systems, the But is it safe? The topic of “Security ver- password is set by the user and must adhere sus Usability” has always been of much de- to certain password requirements. Addition- bate in the computer security world (3). Us- ally, password checkers rank the strength of ers must be protected from harm by security a password to give the user an indication of controls, but these controls may not interfere how secure their password is. In this paper, (much) with the tasks the users want to per- we take a look at a large database of user form. For instance, a firewall that simply chosen passwords to determine the current blocks all traffic can be considered secure, state of affairs. In the end, we extract a mod- but heavily impedes the overall usability of el from the database and provide our own the system. password checker which ranks passwords in various ways. We ran this checker against Security experts or system developers are our dataset which shows that over 90% of usually the ones who have to make this tra- the passwords is highly insecure. deoff, but with password authentication, this task is essentially passed on to the user (3): INTRODUCTION One can either choose a short and simple password, which is easy to remember but As we perform increasingly important also easy to crack, or a very long and com- tasks from our living room computer, the plicated password, which is hard to remem- topic of computer security also becomes in- ber but also hard to crack.
    [Show full text]
  • Deepmnemonic: Password Mnemonic Genera- Tion Via Deep Attentive Encoder-Decoder Model
    1 DeepMnemonic: Password Mnemonic Genera- tion via Deep Attentive Encoder-Decoder Model Yao Cheng, Chang Xu, Zhen Hai*, and Yingjiu Li Abstract—Strong passwords are fundamental to the security of password-based user authentication systems. In recent years, much effort has been made to evaluate the password strength or to generate strong passwords. Unfortunately, the usability or memorability of the strong passwords has been largely neglected. In this paper, we aim to bridge the gap between strong password generation and the usability of strong passwords. We propose to automatically generate textual password mnemonics, i.e., natural language sentences, which are intended to help users better memorize passwords. We introduce DeepMnemonic, a deep attentive encoder-decoder framework which takes a password as input and then automatically generates a mnemonic sentence for the password. We conduct extensive experiments to evaluate DeepMnemonic on the real-world data sets. The experimental results demonstrate that DeepMnemonic outperforms a well-known baseline for generating semantically meaningful mnemonic sentences. Moreover, the user study further validates that the generated mnemonic sentences by DeepMnemonic are useful in helping users memorize strong passwords. Index Terms—Password mnemonic generation, deep neural network, attention mechanism, neural machine translation. F 1 INTRODUCTION OWADAYS, user authentication is the key to ensuring made to address the memorability of strong passwords. N the security of user accounts for most online services, Strong passwords are usually difficult for users to memorize such as social media, e-commerce, and online banking. because their entropy values are beyond many users’ mem- Although various authentication schemes have emerged orability [13] [14] [15].
    [Show full text]
  • Do Strong Web Passwords Accomplish Anything?
    Do Strong Web Passwords Accomplish Anything? Dinei Florencio,ˆ Cormac Herley Baris Coskun Microsoft Research ECE Department One Microsoft Way Polytechnic University Redmond, WA, USA Brooklyn, NY, USA [email protected], [email protected] [email protected] ABSTRACT Unfortunately, these recommendations appear somewhat We ¯nd that traditional password advice given to users out of date. If we enumerate the principal threats to a is somewhat dated. Strong passwords do nothing to user's credentials they would appear to be: protect online users from password stealing attacks such 1. Phishing as phishing and keylogging, and yet they place consid- erable burden on users. Passwords that are too weak of 2. Keylogging course invite brute-force attacks. However, we ¯nd that 3. A brute-force attack on the user's account (i.e. an relatively weak passwords, about 20 bits or so, are suf- attacker knows the userID and tries to guess the ¯cient to make brute-force attacks on a single account password) unrealistic so long as a \three strikes" type rule is in place. Above that minimum it appears that increasing 4. A bulk guessing attack on all accounts at the in- password strength does little to address any real threat. stitution If a larger credential space is needed it appears better to increase the strength of the userID's rather than the 5. Special knowledge or access attacks: passwords. For large institutions this is just as e®ective (a) guessing based on information about the user in deterring bulk guessing attacks and is a great deal better for users.
    [Show full text]
  • Encrypted Negative Password Using ELGAMAL
    © October 2020| IJIRT | Volume 7 Issue 5 | ISSN: 2349-6002 Encrypted Negative Password Using ELGAMAL Siddavaram Srivalli1, P. Vijaya Raghavulu2 1PG Student, Dept of CSE, Sri Annamacharya Institute of Technology and Science, Rajampet, Kadapa 2Asst.Professor, Dept of CSE, Sri Annamacharya Institute of Technology and Science, Rajampet, Kadapa Abstract - Secure password storage is a in systems major difficult to obtain passwords from high security fact based on password authentication, which has been systems. On the other side stealing authentication data widely used in authentication technique. Proposing a tables (containing usernames and passwords) in high password authentication framework that is designed for security systems is difficult. The aim of the project is secure password storage and it can be easily integrated to enhance password security. When carrying an into existing authentication systems. First, the received plain password from a client side is hashed using a online guessing attack, there is a limit to the number cryptographic hash function. Then, hashed password is of login attempts. However, passwords can be leaked converted into a negative password. Finally, the received from weak systems. Some old systems are more negative password is encrypted into an Encrypted vulnerable due to their lack of maintenance. The Negative Password (abbreviated as ENP) using a passwords are often reused, adversaries may log into symmetric-key algorithm. Using multi-iteration high security systems through cracked passwords from encryption could be employed to further improve low security systems. There are lots of corresponding security. Both the cryptographic hash function and ENPs for a given plain password, which makes attacks symmetric encryption make it difficult to crack (e.g., lookup table attack and rainbow table attack passwords from ENPs.
    [Show full text]
  • Design and Evaluation of a Data-Driven Password Meter
    Design and Evaluation of a Data-Driven Password Meter Blase Ur*, Felicia Alfieri, Maung Aung, Lujo Bauer, Nicolas Christin, Jessica Colnago, Lorrie Faith Cranor, Henry Dixon, Pardis Emami Naeini, Hana Habib, Noah Johnson, William Melicher *University of Chicago, Carnegie Mellon University [email protected] {fla, mza, lbauer, nicolasc, jcolnago, lorrie, hdixon, pardis, hana007, noah, billy}@cmu.edu ABSTRACT the strength of a password than other available meters and pro- Despite their ubiquity, many password meters provide inac- vides more useful, actionable feedback to users. Whereas most curate strength estimates. Furthermore, they do not explain previous meters scored passwords using very basic heuristics to users what is wrong with their password or how to im- [10,42,52], we use the complementary techniques of simulat- prove it. We describe the development and evaluation of a ing adversarial guessing using artificial neural networks [32] data-driven password meter that provides accurate strength and employing 21 heuristics to rate password strength. Our measurement and actionable, detailed feedback to users. This meter also gives users actionable, data-driven feedback about meter combines neural networks and numerous carefully com- how to improve their specific candidate password. We provide bined heuristics to score passwords and generate data-driven users with up to three ways in which they could improve their text feedback about the user’s password. We describe the password based on the characteristics of their specific pass- meter’s iterative development and final design. We detail the word. Furthermore, we automatically propose modifications to security and usability impact of the meter’s design dimensions, the user’s password through judicious insertions, substitutions, examined through a 4,509-participant online study.
    [Show full text]
  • Just in Time Hashing
    Just in Time Hashing Benjamin Harsha Jeremiah Blocki Purdue University Purdue University West Lafayette, Indiana West Lafayette, Indiana Email: [email protected] Email: [email protected] Abstract—In the past few years billions of user passwords prove and as many users continue to select low-entropy have been exposed to the threat of offline cracking attempts. passwords, finding it too difficult to memorize multiple Such brute-force cracking attempts are increasingly dangerous strong passwords for each of their accounts. Key stretching as password cracking hardware continues to improve and as serves as a last line of defense for users after a password users continue to select low entropy passwords. Key-stretching breach. The basic idea is to increase guessing costs for the techniques such as hash iteration and memory hard functions attacker by performing hash iteration (e.g., BCRYPT[75] can help to mitigate the risk, but increased key-stretching effort or PBKDF2 [59]) or by intentionally using a password necessarily increases authentication delay so this defense is hash function that is memory hard (e.g., SCRYPT [74, 74], fundamentally constrained by usability concerns. We intro- Argon2 [12]). duce Just in Time Hashing (JIT), a client side key-stretching Unfortunately, there is an inherent security/usability algorithm to protect user passwords against offline brute-force trade-off when adopting traditional key-stretching algo- cracking attempts without increasing delay for the user. The rithms such as PBKDF2, SCRYPT or Argon2. If the key- basic idea is to exploit idle time while the user is typing in stretching algorithm cannot be computed quickly then we their password to perform extra key-stretching.
    [Show full text]
  • Using Improved D-HMAC for Password Storage
    Computer and Information Science; Vol. 10, No. 3; 2017 ISSN 1913-8989 E-ISSN 1913-8997 Published by Canadian Center of Science and Education Using Improved d-HMAC for Password Storage Mohannad Najjar1 1 University of Tabuk, Tabuk, Saudi Arabia Correspondence: Mohannad Najjar, University of Tabuk, Tabuk, Saudi Arabia. E-mail: [email protected] Received: May 3, 2017 Accepted: May 22, 2017 Online Published: July 10, 2017 doi:10.5539/cis.v10n3p1 URL: http://doi.org/10.5539/cis.v10n3p1 Abstract Password storage is one of the most important cryptographic topics through the time. Different systems use distinct ways of password storage. In this paper, we developed a new algorithm of password storage using dynamic Key-Hashed Message Authentication Code function (d-HMAC). The developed improved algorithm is resistant to the dictionary attack and brute-force attack, as well as to the rainbow table attack. This objective is achieved by using dynamic values of dynamic inner padding d-ipad, dynamic outer padding d-opad and user’s public key as a seed. Keywords: d-HMAC, MAC, Password storage, HMAC 1. Introduction Information systems in all kinds of organizations have to be aligned with the information security policy of these organizations. The most important components of such policy in security management is access control and password management. In this paper, we will focus on the password management component and mostly on the way of such passwords are stored in these information systems. Password is the oldest and still the primary access control technique used in information systems. Therefore, we understand that to have an access to an information system or a part of this system the authorized user hast to authenticate himself to such system by using an ID (username) and a password Hence, password storage is a vital component of the Password Access Control System.
    [Show full text]
  • Draft NIST SP 800-118, Guide to Enterprise Password Management
    RETIRED DRAFT April 1, 2016 The attached DRAFT document (provided here for historical purposes): Draft NIST Special Publication (SP) 800-118, Guide to Enterprise Password Management (posted for public comment on April 21, 2009) has been RETIRED. Information on other NIST cybersecurity publications and programs can be found at: http://csrc.nist.gov/. The following information was originally posted with the attached DRAFT document: Apr. 21, 2009 SP 800-118 DRAFT Guide to Enterprise Password Management NIST announces that Draft Special Publication (SP) 800-118, Guide to Enterprise Password Management, has been released for public comment. SP 800-118 is intended to help organizations understand and mitigate common threats against their character-based passwords. The guide focuses on topics such as defining password policy requirements and selecting centralized and local password management solutions. NIST requests comments on draft SP 800-118 by May 29, 2009. Please submit comments to 800-118comments @nist.gov with "Comments SP 800-118" in the subject line. Special Publication 800-118 (Draft) Guide to Enterprise Password Management (Draft) Recommendations of the National Institute of Standards and Technology Karen Scarfone Murugiah Souppaya NIST Special Publication 800-118 Guide to Enterprise Password (Draft) Management (Draft) Recommendations of the National Institute of Standards and Technology Karen Scarfone Murugiah Souppaya C O M P U T E R S E C U R I T Y Computer Security Division Information Technology Laboratory National Institute of Standards and Technology Gaithersburg, MD 20899-8930 April 2009 U.S. Department of Commerce Gary Locke, Secretary National Institute of Standards and Technology Dr.
    [Show full text]
  • Protecting Passwords in the Event of a Password File Disclosure
    PolyPasswordHasher: Protecting Passwords In The Event Of A Password File Disclosure Justin Cappos Santiago Torres New York University New York University [email protected] [email protected] Abstract—Over the years, we have witnessed various the plain-text passwords from disk. Salting inserts a random password-hash database breaches that have affected small and value that complicates the use of tables that allow hackers to large companies, with a diversity of users and budgets. The indus- immediately look up passwords to match most hashes. Storing try standard, salted hashing (and even key stretching), has proven passwords with a salted hash is widely considered to be the to be insufficient protection against attackers who now have access best practice because of the level of protection offered and to clusters of GPU-powered password crackers. Although there the ease of implementation (e.g., salted hashing requires no are various proposals for better securing password storage, most do not offer the same adoption model (software-only, server-side) additional hardware or client software). as salted hashing, which may impede adoption. However, storing passwords with a salted hash is not a In this paper, we present PolyPasswordHasher, a software- panacea. That is, when stored password data has been com- only, server-side password storage mechanism that requires min- promised, attackers have proven themselves adept at quickly imal additional work for the server, but exponentially increases cracking large numbers of passwords, even when salted- the attacker’s effort. PolyPasswordHasher uses a threshold cryp- password hashes comprise the stored data. For example, Troy tosystem to interrelate stored password data so that passwords Hunt, a security researcher, showed that cracking 60% of a cannot be individually cracked.
    [Show full text]
  • Password Strength and Management for Common Criteria
    Password Strength and Management for Common Criteria The Password Strength and Management for Common Criteria feature is used to specify password policies and security mechanisms for storing, retrieving, and providing rules to specify user passwords. For local users, the user profile and the password information with the key parameters are stored on the Cisco device, and this profile is used for local authentication of users. The user can be an administrator (terminal access) or a network user (for example, PPP users being authenticated for network access). For remote users, where the user profile information is stored in a remote server, a third-party authentication, authorization, and accounting (AAA) server may be used for providing AAA services, both for administrative and network access. • Finding Feature Information, on page 1 • Restrictions for Password Strength and Management for Common Criteria, on page 2 • Information About Password Strength and Management for Common Criteria, on page 2 • How to Configure Password Strength and Management for Common Criteria, on page 4 • Configuration Example for the Password Strength and Management for Common Criteria Feature, on page 7 • Additional References, on page 8 • Feature Information for Password Strength and Management for Common Criteria, on page 9 Finding Feature Information Your software release may not support all the features documented in this module. For the latest caveats and feature information, see Bug Search Tool and the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the feature information table.
    [Show full text]