Using Xgboost to Classify the Beihang Keystroke Dynamics Database

Using Xgboost to Classify the Beihang Keystroke Dynamics Database

UPTEC F 18049 Examensarbete 30 hp 15 Augusti 2018 Using XGBoost to classify the Beihang Keystroke Dynamics Database Johanna Blomqvist Abstract Using XGBoost to classify the Beihang Keystroke Dynamics Database Johanna Blomqvist Teknisk- naturvetenskaplig fakultet UTH-enheten Keystroke Dynamics enable biometric security systems by collecting and analyzing computer keyboard usage data. There are different Besöksadress: approaches to classifying keystroke data and a method that has been Ångströmlaboratoriet Lägerhyddsvägen 1 gaining a lot of attention in the machine learning industry lately is Hus 4, Plan 0 the decision tree framework of XGBoost. XGBoost has won several Kaggle competitions in the last couple of years, but its capacity in Postadress: the keystroke dynamics field has not yet been widely explored. Box 536 751 21 Uppsala Therefore, this thesis has attempted to classify the existing Beihang Keystroke Dynamics Database using XGBoost. To do this, keystroke Telefon: features such as dwell time and flight time were extracted from the 018 – 471 30 03 dataset, which contains 47 usernames and passwords. XGBoost was then Telefax: applied to a binary classification problem, where the model attempts 018 – 471 30 00 to distinguish keystroke feature sequences from genuine users from those of `impostors'. In this way, the ratio of inaccurately and Hemsida: accurately labeled password inputs can be analyzed. http://www.teknat.uu.se/student The result showed that, after tuning of the hyperparameters, the XGBoost yielded Equal Error Rates (EER) at best 0.31 percentage points better than the SVM used in the original study of the database at 11.52%, and a highest AUC of 0.9792. The scores achieved by this thesis are however significantly worse than a lot of others in the same field, but so were the results in the original study. The results varied greatly depending on user tested. These results suggests that XGBoost may be a useful tool, that should be tuned, but that a better dataset should be used to sufficiently benchmark the tool. Also, the quality of the model is greatly affected by variance among the users. For future research purposes, one should make sure that the database used is of good quality. To create a security system utilizing XGBoost, one should be careful of the setting and quality requirements when collecting training data. Handledare: David Strömberg & Daniel Lindberg Ämnesgranskare: Michael Ashcroft Examinator: Tomas Nyberg ISSN: 1401-5757, UPTEC F 18049 Populärvetenskaplig Sammanfattning Idag så använder majoriteten av alla företag och privatpersoner datorer och databaser för att skydda tillgångar och information. Det är därför viktigare än någonsin att ha säkra system som korrekt verifierar att rätt människor kommer in i dessa system. Vi är vana vid att använda till exempel fysiska nycklar och lösenord. Men så kallade biometriska lösningar blir allt mer intressanta. De bygger på att biologiska markörer, som till exempel fingeravtryck, är unika för varje individ. Ett steg längre är beteendebiometri, alltså att vi har unika beteenden, så som skrivstil och rörelsemönster. Denna studie har tittat på ett sådant område, så kallat Keystroke Dynamics, som bygger på att vi alla skriver med olika rytm på ett tangentbord när vi använder en dator. Tanken är att för att ta sig in i ett system, ska man inte bara behöva ha tillgång till det rätta lösenordet, utan även behöva skriva på det sätt som tillhör inloggningen. För att skapa ett sådant här system, kan man använda sig av maskininlärning. Då matar man en modell med exempel av hur människor skriver, och sen är tanken att modellen ska lära att känna igen vad som särskiljer dem. Det finns många olika teorier att använda för att göra detta, och denna studie har använt sig av det relativt nya kritikerrosade XGBoost. XGBoost är ett verktyg som bygger på beslut- sträd, där data kategoriseras genom att gå igenom ett ‘träd’ av relevanta frågor. Datasetet som har använts i detta projekt är det öppna ‘Beihang Keystroke Dynamics Database’. Studien visade, till något av en besvikelse, att XGBoost var ungefär lika bra som andra maskininlärningsmodeller på samma dataset. Slutsatserna som drogs var att detta förmod- ligen beror på att datatestet var för litet. I framtiden bör forskning titta mer på XGBoost och dess potential kring Keystroke Dynamics, och bör fokusera på att skapa ett stort dataset som kan användas i all forskning. Principen om Keystroke Dynamics användes redan under andra världskriget, då telegrafister började känna igen varandra genom rytmen som slogs på telegraferna när morsekod skick- ades. När sedan datorerna gjorde sitt intåg så har man försökt använda denna princip för tangentbord, och 1985 visade David Umphress och Glen Williams att ‘tangentbordsprofiler’ är unika. Det har kommit flertalet studier på ämnet sedan dess, men ett generellt problem i branschen är att det inte finns ett erkänt dataset som kan användas för att forska på (och således göra jämförelser enkla). En anledning till detta är att det finns många varianter på system. Datainsamlingen kan göras i labb, eller via internet hemma hos deltagarna. Texten de matar in som prover kan var lång, eller kort. De kan få välja texten själva, eller så skriver alla samma text. Språk kan ju självklart också göra skillnad. Att samla in data tar också tid, och på grund av just tidsbrist så valdes det i denna studie att använda ett befintligt dataset. Beihang Keystroke Dynamics Database, Dataset A, består av 47 deltagare som 4-5 gånger har skrivit in ett egenvalt lösenord som binds till ett unikt användarnamn via tangentbord på ett internetcafé. Deltagarna har också fått tillgång till andra deltagares lösenord och lämnat prover på hur de skriver dessa, för att härma en ‘attack’. Detta dataset valdes för att det var lättåtkomligt, och för att det bedömdes intressant att studera just fritext-databaser i en kommersiell miljö, just för att det speglar verkligheten bäst. XGBoost bedömdes intressant att undersöka för att det inte ännu har använts i Keystroke Dynamics-fältet, och för att det har åstadkommit otroligt bra resultat i andra sammanhang, och vunnit branschpriser. När man väl har datan så reduceras den till ett antal så kallade features. De features som har valts i denna studie är dwell time (hur länge en tangent är nedtryckt) och fyra varianter av flight time (hur lång tid det är mellan två tangenttryckningar). Genom att ta medelvärdet av dessa tider för en lösenordsinmatning, skapas feature-sekvenser om fem värden för varje inmatning, oavsett lösenordslängd. Sedan delas användarna upp i två grupper, en vars data används för att träna modellen, och en för att testa den. Det är för att modellen inte ska testas på data den redan har sett. XGBoost-modellen tränar genom att titta på feature-sekvenserna för att försöka sätta upp rätt regler för att avgöra om inmatning tillhör den genuina användaren eller om det är en attack (någon som har fått rätt användarnamn och lösenord). Den gör detta genom att titta på skillnaden mellan ett par av feature sekvenser, och försöker avgöra vad det är som ii särskiljer en användares rytm från en annans, vad det är för skillnader som krävs för att två inmatningar ska kategoriseras som olika. Vid testning så används de här inlärda reglerna vid en jämförelse av en inmatning (som antingen är en ‘attack’ eller en ‘genuin’) med en inmatning som vi vet tillhör den genuina användaren, och avgör om skillnaden betyder att inmatningen är genuin eller en attack. Problemet blir då en så kallad binär klassificering. Modellen behöver bara lära att säga ‘genuin’ eller ‘inkräktare’ när den får ett par av feature- sekvenser. Vid testning så togs en del statistik fram. Ett mått som kallas ‘false acceptance rate’ (‘falsk acceptans-andel’) fick ett medelvärde på 19.75%, och ‘false rejection rate’ (‘falsk bortvisnings-andel’) fick ett medelvärde på 19.30%. ‘Equal error rate’ (EER), där andelen falska och sanna acceptansen sätts still lika, landade på 19.75%. Dessa siffror är höga för ett säkerhetssystem, om man till exempel jämför med fingeravtrycksläsning som har 0.02% och andra studier inom Keystroke Dynamics. Dock så är det viktigt att komma ihåg att steg 1 i ett sådant här system är att ha tillgång till lösenordet (inte bara tillgång till ett finger). Även om resultaten var sämre än andra studier, så var det bara något sämre än originalstudien på samma dataset, som hade ett EER om 11.83%. Detta ledde till slutsatsen till att det stora problemet inte var XGBoost, utan datasetet själv. Dessa resultat pekar alltså på att det som spelar mest roll för säkerheten i ett biometriskt system är datasetet. Datasetet måste vara tillräckligt stort för att en maskininlärningsmod- ell ska träna på tillräckligt många varierade sekvenser för att lära sig en tillräckligt generell uppsättning av regler. 47 användare visade sig vara för litet. Jag anser att Keystroke Dy- namics kan komma att bli ett bra alternativ att använda i säkerhetssammanhang, förslagsvis tillsammans med andra system, så som lösenord eller taggar. Jag tror även att principen har stor potential att användas inom smartphones, som har flertalet sensorer inbyggda redan. XGBoost bör definitivt fortsättas undersökas i framtiden, och forskning borde fokusera på att skapa ett stort dataset som kan användas för benchmarking. iii Contents Contents 1 Introduction1 1.1 Problem Statement.................................2 1.2 Background.....................................2 1.2.1 Biometrics and Keystroke Dynamics...................2 1.2.2 Classification methods and XGBoost...................3

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    43 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us