Skip to main content

Crate soft_fido2_transport

Crate soft_fido2_transport 

Source
Expand description

Pure Rust CTAP Transport Layer

This crate provides transport implementations for CTAP (Client to Authenticator Protocol):

  • CTAP HID protocol (message framing, fragmentation, reassembly)
  • Channel management (CID allocation, message assembly, timeouts)
  • Command handler abstraction for processing CTAP messages
  • USB HID transport (via hidapi) - requires “usb” feature
  • Linux UHID virtual device support (for testing)

§Features

  • usb: Enable USB HID transport (requires libudev on Linux)
  • uhid: Enable Linux UHID virtual device support (Linux only)

Spec: https://fidoalliance.org/specs/fido-v2.2-rd-20230321/fido-client-to-authenticator-protocol-v2.2-rd-20230321.html#usb

Re-exports§

pub use channel::ChannelManager;
pub use ctaphid::Cmd;
pub use ctaphid::Message;
pub use ctaphid::Packet;
pub use error::Error;
pub use error::Result;
pub use handler::CommandHandler;
pub use handler::CtapHidHandler;
pub use uhid::UhidDevice;

Modules§

channel
CTAP HID Channel Management
ctaphid
CTAP HID Protocol Implementation
error
Transport layer error types
handler
CTAP HID Message Handler
uhid
Linux UHID Virtual HID Device Support