Multi-Biometric System

advertisement
Multi-Biometric System
Team 6: Calvin Chan, Enpaksh Airon,
Gowtham Narasimhaiah, Usha Aiyer
Clients: Amir Schur, Diah Schur, Ned
Bakelman, Vinnie Monaco
Instructor: Dr. Charles C. Tappert
1
Business Need for Behavioral Biometrics
• Popularity of online programs and courses continues to
outpace that of education in traditional venues
• 2008 Federal Higher Education Opportunities Act
mandates adoption of better identification technologies in
online course and requires institutions to verify the
identity of a student who participates in class or
coursework by using such methods as
- New identification technologies as they become available
- Do not interfere with student privacy.
2
Introduction to Behavioral Biometrics
Goals
•
•
•
•
Verify the identity of the students taking online tests/courses
Non-obtrusive collection of data
Cost-effective collection of data – i.e., no additional cost
Provide continuous authentication throughout the test
Issues/Concerns/Drawbacks
• Privacy – data obtained during biometric enrollment may be used in ways
for which the enrolled individual has not consented
• Cancellable biometrics – the replacement features of data is limited
• Not unique enough to provide a 100% reliable human identification.
3
Behavioral Biometrics: Cost versus Accuracy
4
Behavioral Biometrics: This Project
Keystroke Dynamics
• The keystroke rhythms of a user are measured to develop a unique
biometric template of the typing pattern for future authentication
• Raw measurements available from any keyboard can be recorded
Stylometry
• Application of the study of linguistic style
• Techniques can identify patterns even in common parts of speech
Mouse Movement
• Track the movement of mouse trajectories through different arcs.
• Considered a weak biometric and will not be very useful as a stand-alone.
• Good in augmenting/enhancing other biometrics such as Keystroke etc.
5
Multi-Biometric System: This Project
Multi-Biometric System
• Combine (Fuse) of several biometrics
– Keystroke
– Stylometry
– Mouse movement
• Increased performance over that of individual systems
Multi-Biometric System – Design Considerations
• XML file is read and parsed within a given folder
• An output file, once generated, is not overwritten
6
Keystroke to Text Converter – Program Design
Concerns/Challenges
•
•
•
•
Challenge to capture all keystroke scenarios
Press time and release time of each key
Key combination, i.e., Alt + Tab
Pressing more than one key at the same time
i.e., ‘a’ and ‘b.’
• State of each key, i.e., Caps Lock
• Algorithm to determine output
7
Keystroke to Text Converter – Program Design
Assumptions
• One key will be pressed at a time
• Input Domain
– !@#$%^&*()
– AlphaNumeric
– :;-+”
– Delete,Home, End, Enter, and Space
• Alpha characters are case-sensitive in XML, therefore the
program is ignoring shift keys
8
Keystroke to Text Converter – Program Design
Program Flow
1.
2.
3.
4.
5.
6.
7.
Read one XML or batch of XMLs
Iterate keycode
Determine if keycode is function key such as “Shift”
Determine if keycode is a character
Store keycode in data structure
Repeat step 2-5 until end of file
Write to file with output string in “textinput” attribute
9
Keystroke to Text Converter – Class Design
Metric.java
•
Main method instantiates the Interface object.
Interface.java
•
•
•
createInterface method displays a GUI dialog that allows to click the ‘Open Folder’
or 'Open File' button. Then it instantiates the FileHandler class.
On click of the ‘Open Folder’ button, the windows’ dialog gets displayed, by
calling its ActionListener.
If the user clicks on 'Open File' button, the appropriate windows’ dialog gets
displayed, by calling its ActionListener from the Interface class, where-in the user
can select the required input XML data File to be Opened from the dialog window.
FileHandler
•
•
•
parseFile method parses data from the XML file to extract key and key-code values
Post parseFile method parses Key-stroke block from the XML file (which has #1
character in it), it is then sent to the OutputBuilder class
The writeToFile method of the FileHandler class saves the Text to an output file, in
the same folder where the input files reside
OutputBuilder
•
•
Vector data structure to hold data
Provides several output option such as XML file, GUI, etc.
10
Keystroke to Text Converter
Input File – XML Format
Header
Body
Trailer
…
11
Keystroke to Text Converter
Output File – XML Format
Header (Same as input file)
Body & Trailer – Contains output String
12
Keystroke to Text Converter
Results
13
Multi-Biometrics Process
14
Multi-Biometrics Process
15
Keystroke to Text Converter – Program Design
Concerns/Challenges
•
•
•
•
Challenge to capture all keystroke scenarios
Press time and release time of each key
Key combination, i.e., Alt + Tab
Pressing more than one key at the same time
i.e., ‘a’ and ‘b.’
• State of each key, i.e., Caps Lock
• Algorithm to determine output
16
Behavioral Biometrics
Logger Program
•
•
The logger program is used to capture test data
Three sets of scenarios were developed to test the system
17
Behavioral Biometrics
Edit Scenario - 1
•
•
User is asked to edit the paragraph #1 to match paragraph #2
Data is collected during the edit process by the user
Paragraph # 1
Hurricane Sandy hit the northeast coast of the united states in October. Sandy caused havoc across
New York City and the boroughs. Storm surges causing flooding in streets, tunnels, and subway lines.
This cut power in and around the city for extended periods of time. It took many weeks for power to
resume on Long Island. The mayor estimates that the storm cost the city $19 billion. This storm
caused devastation that will be remember forever by those affected.
Paragraph # 2
Hurricane Sandy, also referred to as Superstorm Sandy, hit the Northeast coast of the United States
on October 29, 2012. Sandy wreaked havoc across New York City and the boroughs. Storm surges
caused flooding in streets, tunnels, and subway lines. Power was lost in and around the city for
extended periods of time. It took many weeks for power to resume on Long Island. Michael
Bloomberg, mayor of New York City, estimates that the storm cost the city $19 billion. This storm
caused devastation that will be remembered forever by those affected.
18
Behavioral Biometrics
Browser Scenario
•
•
User is asked to perform the following browser tasks
Data is collected while the user performs the following instructions
Browser Scenario
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Go to Yahoo: http://www.yahoo.com/
Click on “Sports” (left menu)
Click on “MLB” (top menu)
Click on “Teams” (top sub-menu)
Click on “Boston Red Sox”
Click on “Team Report” for the Boston Red Sox
Go back two pages
Click on “New York Yankees”
Click on “Depth Chart” for the New York Yankees
Click on “Roster” for the New York Yankees (next to “Depth Chart”)
Click on “Sabathia, CC” (scroll if necessary)
In the search field above “CC Sabathia”, type “New York Yankees Captain” and click “Sport
Search”
13. Exit tab or browser
19
Behavioral Biometrics
Game scenarios
•
•
User is asked to perform the following tasks
Data is collected while the user performs the following instructions
Game Scenario
1.
2.
3.
Log in at: http://vmonaco.com/biometrics/logger
Select “Game: Star Bubbles” from the task menu and then click on “Launch”
Once the application is running, minimize the application window so it will not interfere with you
playing the game
4. Click on the Game: Star Bubbles link at the bottom of the page to access the game
5. Click on How to Play to review the rules of the game
6. When done, click on Back.
7. Click Arcade Game, first option on the list.
8. Click on Level 1 and play the game.
9. Exit the BioLogger when you finish playing; exit the BioLogger after each play.
10. For each play, repeat the above as needed.
20
Events Captured in Logger
(a) Keystroke events
press time: 'Key press timestamp'
release time: 'Key release timestamp'
key code: 'The key code'
key string: 'The symbolic key entered'
modifier code: 'Modifier code during the event'
modifier string: 'Modifier string during the event'
key location: 'The key location'
(b) Stylometry events
start time: 'Time the segment began'
end time: 'Time the segment ended'
text: 'Text entered'
(c) Motion events
time: 'Timestamp of the event'
x, y: 'X and Y location of the pointer device'
modifier code: 'Modifier code during the event'
modifier string: 'Modifier string during the event'
dragged: was the mouse dragged or just
moved?'
d) Click events
press time: 'Pointer click press timestamp'
release time: 'Pointer release timestamp'
button code: 'Pointer button'
press x, y: 'Start X & Y location of the pointer device'
release x, y: 'End X, Y location of the pointer device'
modifier code: 'Modifier code during the event'
modifier string: 'Modifier string during the event'
image: 'Region in which the event took place'
(e) Scroll events
time: 'Timestamp of the event'
amount: 'Amount of scroll'
rotation: 'Scroll direction (either +1 or -1)'
type: 'Scroll type (0 for unit 1 for block)'
x, y: 'X and Y location of the pointer device'
modifier code: 'Modifier code during the event'
modifier string: 'Modifier string during the event'
21
Logger Activities executed by Team-6
22
References
•
[Online] Available:
http://www.csis.pace.edu/~ctappert/it691-12fall/projects/multi-biometric.htm
•
[Online] Available:
http://csis.pace.edu/~ctappert/srd2012/.
23
Thank You !!
24
Download