Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

add BLURB

latest commit 262a19cfe8
Klas Lindfors klali authored March 18, 2014
Octocat-spinner-32 m4 Add shared library versioning script. Use valgrind for self-tests. October 18, 2013
Octocat-spinner-32 tests Drop unnecessary -lcurl in self-tests. October 18, 2013
Octocat-spinner-32 .gitignore Use build-aux/. October 18, 2013
Octocat-spinner-32 .travis.yml install help2man October 01, 2013
Octocat-spinner-32 AUTHORS expand the AUTHORS file April 10, 2013
Octocat-spinner-32 BLURB add BLURB March 18, 2014
Octocat-spinner-32 COPYING Bump years. October 18, 2013
Octocat-spinner-32 Makefile.am Add shared library versioning script. Use valgrind for self-tests. October 18, 2013
Octocat-spinner-32 NEWS Bump versions. October 18, 2013
Octocat-spinner-32 README Improve README. October 18, 2013
Octocat-spinner-32 cdecode.c Indent code. October 18, 2013
Octocat-spinner-32 cdecode.h Indent code. October 18, 2013
Octocat-spinner-32 cencode.c Indent code. October 18, 2013
Octocat-spinner-32 cencode.h Indent code. October 18, 2013
Octocat-spinner-32 configure.ac Bump versions. October 18, 2013
Octocat-spinner-32 hmac.c Indent code. October 18, 2013
Octocat-spinner-32 libykclient.map
Octocat-spinner-32 sha-private.h Indent code. October 18, 2013
Octocat-spinner-32 sha.h Indent code. October 18, 2013
Octocat-spinner-32 sha1.c Indent code. October 18, 2013
Octocat-spinner-32 sha224-256.c Indent code. October 18, 2013
Octocat-spinner-32 sha384-512.c Indent code. October 18, 2013
Octocat-spinner-32 tool.c Indent code. October 18, 2013
Octocat-spinner-32 usha.c Indent code. October 18, 2013
Octocat-spinner-32 ykclient.c Indent code. October 18, 2013
Octocat-spinner-32 ykclient.h Indent code. October 18, 2013
Octocat-spinner-32 ykclient_errors.h Cleanup ykclient_errors.h split. April 15, 2013
Octocat-spinner-32 ykclient_server_response.c Fix subdir-objects breakage with latest automake. July 05, 2013
Octocat-spinner-32 ykclient_server_response.h Indent code. May 15, 2013
Octocat-spinner-32 ykclient_version.c Indent code. May 15, 2013
Octocat-spinner-32 ykclient_version.h.in Indent code. May 15, 2013
README
YubiKey C Client Library: libykclient
=====================================

YubiKey C Client Library (libykclient) is a C library used to validate
an Yubikey OTP against Yubico's servers.  See https://www.yubico.com/
for more information about Yubico and the YubiKey.

License
-------

The project is licensed under a BSD license.  See the file COPYING for
exact wording.  For any copyright year range specified as YYYY-ZZZZ in
this package note that the range specifies every single year in that
closed interval.

Building
--------

After downloading and unpacking the package tarball, you build it as
follows.

  ./configure
  make check
  sudo make install

Building from version controlled sources
----------------------------------------

Warning!  This is only for developers and if you don't understand what
you are doing, you should download the release files instead.

You may check out the sources using Git with the following command:

  git clone git://github.com/Yubico/yubico-c-client.git

This will create a directory 'yubico-c-client'.  Enter the directory:

  cd yubico-c-client

Recent versions of autoconf, automake and libtool must be installed.
Help2man is used to generate the manpages.  Libcurl development files
(headers and *.so) must also be installed.

Generate the build system using:

  autoreconf --install

Then refer to the user sections above regarding building.

Command-line tools
------------------

There is one command line tool, ykclient, to validate a particular
OTP.  It needs a client id, which you can generate on Yubico's web
site: https://upgrade.yubico.com/getapikey/

Example usage:

-----------
jas@mocca:~/src/yubico-c-client$ ./ykclient 
Usage: ./ykclient <client_id> <yubikey_otp>
 CLIENT_ID: your client id integer
 YUBIKEY_OTP: One-time password generated by yubikey
jas@mocca:~/src/yubico-c-client$ ./ykclient --debug 16 ccccccbchvthlivuitriujjifivbvtrjkjfirllluurj
Input:
  client id: 16
  token: ccccccbchvthlivuitriujjifivbvtrjkjfirllluurj
Verification output (2): Yubikey OTP was replayed (REPLAYED_OTP)
jas@mocca:~/src/yubico-c-client$ 
-----------
Something went wrong with that request. Please try again.