Git Product home page Git Product logo

arduino2-yksim's Introduction

arduino2-yksim

Simulate Yubikey with Atmel Mega32u4 based Arduino Boards (Leonardo, Micro, Pro Micro).

This is the successor of the original arduino-yksim. This new version should be compatible with the Arduino-IDE 2.x.

Preparation

You need to add a push button between GND and a digital IO pin of your Arduino Board. I've soldered one to Pin 3 and GND of a cheap 'Pro Micro' board, found on the Internet.

yksim

How-to use

Copy the content of this directory as directory YKsim into the libraries directory of your Arduino-2.x installation.

Start the Ardunio GUI and open the yksEEinit0 files (in File --> Examples --> YKsim). You can either select one of the demo settings (by defining YKS_EEINIT as 1, 2, 3 or 4). For production you should really create your own private keys and define them in section 4 of file yksEEinit.h. Change the AES-128 key, the public and private ids and the static password to your personal likings (and keep them private). Upload the code to your Arduino Board. This needs to be done once, whenever you change your keys.

Then open the file yksButton1 (also in File --> Examples --> YKsim) and check for the correct IO pin definition. Then upload this code to your Board and connect it to an USB port of your computer. This will turn your Board into an USB keyboard that emits keyboard scan codes whenever you press the button. Every time you press the button for a short time, a unique new Yubikey compatible OTP will be 'typed' by the Board. If you press the button for a longer time, the static, secret password will by 'typed' by the Board.

Have a lot of Fun !

Caveat

I'm using this Arduino code with Linux systems only. I've no idea whether this stuff works with Macintosh or Windows systems.

arduino2-yksim's People

Contributors

pagong avatar

Stargazers

Ademar Arvati avatar Ajani Bilby avatar NonaSuomy avatar Ayaka avatar

Watchers

 avatar

arduino2-yksim's Issues

Arduino Yubico OTP not working?

Hello,
I have tried to use the OTP from this repo and I flashed it to my arduino pro micro successfully. But I am not sure if the arduino yk simulator should work like an official yubikey OTP.
From my experience, none of the codes work when I try to verify them using Yubico's official otp verify website.
Is the arduino2-yksim intended to only simulate yubikey's way of creating otp codes, or are the codes supposed to work as if they were OTP codes from Yubico?
Will you please clarify as to why this is? Thank you.
https://demo.yubico.com/otp/verify

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.