RichardBlair / yubikey

A Ruby library for verifying, decoding, decrypting and parsing Yubikey one-time passwords.

Home Page:http://rubygems.org/gems/yubikey

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

yubikey

Description

A library to verify, decode, decrypt and parse Yubikey one-time passwords.

Usage

OTP Decryption

key = 'ecde18dbe76fbd0c33330f1c354871db'
otp = 'dteffujehknhfjbrjnlnldnhcujvddbikngjrtgh'
token = Yubikey::OTP.new(otp, key)

p "Device public id: #{token.public_id}" #=> 'dteffuje'
p "Device secret id: #{token.secret_id}" #=> '8792ebfe26cc'
p "Device insertions: #{token.insert_counter}" #=> 19
p "Session activation counter: #{token.session_counter}" #=> 17
p "Session timestamp: #{token.timestamp}" #=> 49712
p "OTP random data: #{token.random_number}" #=> 40904

OTP Verification

begin
  otp = Yubikey::OTP::Verify.new('dteffujehknhfjbrjnlnldnhcujvddbikngjrtgh')

  if otp.valid?
    p 'valid OTP'
  elsif otp.replayed?
    p 'replayed OTP'
  end
rescue Yubikey::OTP::InvalidOTPError
  p 'invalid OTP'
end

Install

sudo gem install yubikey

Ruby library

Written by Jonathan Rudenberg <jon335@gmail.com>
Copyright (c) 2009 Jonathan Rudenberg
The MIT License. See LICENSE.

Contributors

Carl Byström
Erik Ruwalder

About

A Ruby library for verifying, decoding, decrypting and parsing Yubikey one-time passwords.

http://rubygems.org/gems/yubikey

License:MIT License