class: center, middle, inverse, title-slide .title[ # ISA 419: Data-Driven Security ] .subtitle[ ## 19: Authentication Using Behavioral Biometrics ] .author[ ###
Fadel M. Megahed, PhD
Professor
Farmer School of Business
Miami University
@FadelMegahed
fmegahed
fmegahed@miamioh.edu
Automated Scheduler for Office Hours
] .date[ ### Spring 2025 ] --- ## Learning Objectives for Today's Class - Motivating the use of behavioral biometrics for authentication purposes - Explain possible sources of data and application for behavioral biometrics - Model behavioral biometrics data using machine learning techniques --- class: inverse, center, middle # Motivating the Use of Behavioral Biometrics for Authentication Purposes --- ## Authentication - **Authentication** is the process of verifying the identity of a user or system. <img src="data:image/png;base64,#../../figures/UsableSecurity.jpg" width="80%" style="display: block; margin: auto;" /> .center[.bold[How do you prove to someone that you are who you claim to be?]] --- ## Information Traditionally Used for Authentication .bold[.center[User authentication is the most common and best studied human security task.]] **Something you know** Passwords, PINs, security questions **Something you have:** Smart cards, tokens, mobile phones **Something you are:** Biometrics (fingerprint, face, iris, etc.) --- ## Lifecycle for Authentication Information **Issuance:** User enrolls in the system and provides authentication information **Usage:** User logs in and provides authentication information **Maintenance/Revocation:** User's authentication information is revised or retired --- ## Lifecycle: Something You Know .font90[ **Issuance:** - User "has" to memorize a new password or (unfortunately) reuse an existing one. - Should follow password guidelines (length, complexity, uniqueness) - Needs to be sufficiently secure and memorable **Usage:** - Can I remember my password? - If so, which one is it (out of the many I have or the updates I have made)? **Maintenance:** - Subject to loss/expiration - Re-issuance may require secondary mechanism - Rules on freshness/variation for re-issued data ] --- ## Lifecycle: Something You Have **Issuance:** - User "has" to carry a new token or smart card. - Should be kept secure and not shared with others. - Needs to be sufficiently secure and portable. **Usage:** - Requirements on human memory: Where did I leave my card? Which card is it? - Requirements on physical presence: Do I have it with me? **Maintenance:** - Subject to loss/theft - Requires periodic replacements --- ## Lifecycle: Something You Are **Issuance:** - “Reverse issuance” required to submit biometrics - Accessibility: not all humans have readable fingerprints, irises, etc. **Usage:** - Minimal requirements placed upon human memory, e.g., “Which finger did I use?”, though may be specified at authentication - Human-machine interface issues, e.g., what to do with a cut finger? **Maintenance:** - May possibly change with aging, injury, etc. - In general, there are limited options for renewal due to finite set of biometrics. --- ## Lifecycle: General Guidelines - **Issuance:** - Limit amount of physical interaction - Limit human processing and learning requirements - Limit number of seemingly artificial constraints - **Usage:** - Limit human memory requirements - Limit requirements for perfect accuracy - **Maintenance:** - See Issuance guidelines - Limit excessive update requirements --- ## Password Lifecycle <img src="data:image/png;base64,#../../figures/passlc.png" width="55%" style="display: block; margin: auto;" /> --- ## The "Traditional" Approach to Replacing Passwords
<img src="data:image/png;base64,#../../figures/security_questions.png" width="65%" style="display: block; margin: auto;" /> --- ## The "Traditional" Approach to Replacing Passwords
<img src="data:image/png;base64,#../../figures/SP.png" width="100%" style="display: block; margin: auto;" /> --- class: inverse, center, middle # Behavioral Biometrics for Authentication --- ## The Keystroke Dynamics - Benchmark Data Set Based on [Killourhy and Maxion (2009)](https://www.cs.cmu.edu/~keystroke/), the authors set up their experiment as follows: - **Password:** .tie5Roanl - **Feature sets:** + The **Enter** key was considered to be a part of their password + **Keydown-Keydown:** time between the key presses of consecutive keys is used as a feature; + **Keyup-Keydown:** time between the release of one key and the press of the next is used; + **Hold:** time between the press and release of each key is used - Note that their features are linearly dependent; for example, `\(Keydown.Keydown = Hold + Keyup − Keydown\)`. - Additionally, their features are all recorded in seconds. --- ## Choice of Features <img src="data:image/png;base64,#../../figures/litReview.PNG" width="100%" style="display: block; margin: auto;" /> --- ## Subject `\(\times\)` Sessions <img src="data:image/png;base64,#../../figures/runningSubjects.PNG" width="75%" style="display: block; margin: auto;" /> --- ## Non-Graded Class Activity
−
+
10
:
00
- Use the following [link](https://www.cs.cmu.edu/~keystroke/) to access the data set. - Download the data set and explore the features. - In plain English, define three different approaches for modeling this dataset and write them below. .font80[ .can-edit.key-activity15[ - Edit me to answer the question above. - Edit me to answer the question above. - Edit me to answer the question above. ] ] --- ## In-Class Demo Starting with the following code, let us create a model to predict whether a user is `s002` or not. ``` python # !pip install pycaret import pandas as pd from pycaret.classification import * df = pd.read_csv("https://www.cs.cmu.edu/~keystroke/DSL-StrongPasswordData.csv") sub2 = df[df['subject'] == 's002'] sub2 = sub2.drop(columns = ['sessionIndex', 'rep']) ``` --- class: inverse, center, middle # Recap --- ## Summary of Main Points By now, you should be able to do the following: - Motivating the use of behavioral biometrics for authentication purposes - Explain possible sources of data and application for behavioral biometrics - Model behavioral biometrics data using machine learning techniques --- ## 📝 Review and Clarification 📝 1. **Class Notes**: Take some time to revisit your class notes for key insights and concepts. 2. **Zoom Recording**: The recording of today's class will be made available on Canvas approximately 3-4 hours after the end of class. 3. **Questions**: Please don't hesitate to ask for clarification on any topics discussed in class. It's crucial not to let questions accumulate.