Skip to content

Yubico/Yubico.NET.SDK

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

build-action-status tests-action-status tests-windows-action-status tests-ubuntu-action-status tests-macos-action-status codeql-analysis-action-status

.NET YubiKey SDK

Enterprise-grade cross-platform SDK for YubiKey integration, built on .NET.

Table of Contents

Quick Start

Installation

dotnet add package Yubico.YubiKey

Basic Usage

using Yubico.YubiKey;

// Chooses the first YubiKey found on the computer.
IYubiKeyDevice? SampleChooseYubiKey()
{
    IEnumerable<IYubiKeyDevice> list = YubiKeyDevice.FindAll();
    return list.First();
}

Documentation

πŸ“š Official documentation: docs.yubico.com/yesdk

  • User Manual
  • API Reference

SDK Support

Supported Target Frameworks:

  • .NET Framework 4.7
  • .NET Standard 2.1
  • .NET 6 and above

SDK Packages

Public Assemblies

Yubico.YubiKey

Primary assembly containing all classes and types needed for YubiKey interaction.

Yubico.Core

Platform abstraction layer (PAL) providing:

  • OS-specific functionality abstraction
  • Device enumeration
  • Utility classes for various encoding/decoding operations:
    • Base16
    • Base32
    • Tag-Length-Value (BER Encoded TLV)
    • ModHex

Internal Assemblies

Yubico.DotNetPolyfills

⚠️ Not for public use
Backports BCL features needed by the SDK.

Yubico.NativeShims

⚠️ Not for public use
πŸ”§ Unmanaged Library
Provides stable ABI for P/Invoke operations in Yubico.Core.

Project Structure

Repository organization:

  • πŸ“ docs/ - API documentation and supplementary content
  • πŸ“ examples/ - Sample code and demonstrations
  • πŸ“ src/ - Source code for all projects
  • πŸ“ tests/ - Unit and integration tests

Contributing

  1. Read the Contributor's Guide
  2. Review Getting Started
  3. Submit your Pull Request

Building the Project

Prerequisites:

  1. Install required tools (see Getting Started)
  2. Load Yubico.NET.SDK.sln into your IDE.
  3. Build solution

Connect with us

πŸ“« Need help? Create an issue
πŸ“– Read our blog for the latest Yubico updates here