Code Monkey home page Code Monkey logo

kido's Introduction

About kido:

Can we figure out what someone is typing, just by listening to the keystrokes?

This project called kido (= keystroke decode) explores if this is possible. It is published in Towards Data Science.

Quick start guide:

For training and validation: kido/code/kido_train.ipynb
Training data at: kido/images/train/
Validation data at: kido/images/dev/
The training and validation images are stored as per TensorFlow convention.
For example, all training images corresponding to keystroke m are stored in a subfolder images/train/m, and all validation images corresponding to keystroke m are stored in a subfolder images/dev/m, and so on.

For testing: kido/code/kido_test.ipynb
Specify the test dir, in this case: kido/batch99_test/
In the test dir make four sub-dirs called audio, images, model, and splits
Store the recorded keystrokes audio m4a (unsplitted) at: kido/batch99_test/audio/
Make sure the file name is the word itself (type only alphabets and all lowercase).
For example, iloveu.m4a should be the file name for the keystrokes audio typing iloveu.
The python script will automatically convert m4a to wav, split, and generate spectrograms.
Store the trained model at: kido/batch99_test/model/ and specify the file name in the script.

Note: All the data (train, dev, and test) in this study were collected using my MacBook Pro (Retina, 13-inch, Early 2015) keyboard.

Detail descriptions:

Coming soon ...

Resources:

Published in Towards Data Science: Clear and Creepy Danger of Machine Learning: Hacking Passwords

The rockyou passwords link: rockyou.txt

kido's People

Contributors

tikeswar avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.