Crescendo SDK
Loading...
Searching...
No Matches
CrescendoDLL.Token Class Referencesealed

Unified description of a single token/authenticator the SDK can drive. Combines Crescendo PC/SC tokens (full applet stack — ACA / OATH / PIV / CardManager / FIDO) with generic FIDO authenticators reachable over USB-HID or PC/SC NFC. More...

Public Member Functions

string GetAtrDisplay ()
 Returns a human-readable ATR or an empty string when the token has no ATR.
 
string GetCapabilitiesDisplay ()
 Returns a human-readable capability summary.
 
override string ToString ()
 Returns a short human-readable summary of the form [index] tokenName (caps), Reader: readerName, where caps is one of Crescendo+FIDO, Crescendo, FIDO, or (none).
 

Properties

string? FIDOMDSMetadata [get]
 FIDO Metadata Service entry name when known (currently populated only for recognized Crescendo ATRs).
 
string Id [get]
 Stable identifier. For Crescendo+FIDO and generic FIDO tokens the value comes from CrescendoDLL.Fido.FidoDevice.Id (Container ID on Windows, else VID:PID:Serial, else VID:PID:HidPath or PCSC:<reader>). Crescendo-only PC/SC tokens (e.g. an NFC card whose FIDO probe failed) use the reader's Container ID when available, else PCSC:<reader>.
 
int Index [get]
 Sequential index in the current CrescendoDLL.TokenDiscovery.ListAll snapshot. Suitable for the -t <n> CLI flag. Snapshot-local only — the same physical token may have a different CrescendoDLL.Token.Index in the next snapshot. Use CrescendoDLL.Token.Id for stable identity.
 
bool IsCrescendo [get]
 True when the Crescendo applet stack (ACA, PIV, OATH, CardManager) is available on this token. Implies a Crescendo-recognized ATR over PC/SC.
 
string? ReaderName [get]
 Name of the PC/SC reader hosting this token, or null for authenticators reachable only over USB-HID. For Crescendo tokens this distinguishes a USB CCID interface from an NFC contactless reader; for generic FIDO authenticators a non-null value identifies the NFC reader the card is sitting on.
 
bool SupportsFido [get]
 True when the SDK can drive FIDO2 / U2F operations on this token.
 
byte?[] TokenATR [get]
 ATR of the inserted card (PC/SC tokens only); null for HID-only authenticators.
 
string TokenName [get]
 Human-readable name. Crescendo display name for Crescendo tokens; the HID product string for generic FIDO tokens reachable over USB-HID; empty for generic FIDO tokens reachable only via a PC/SC reader (e.g. an unknown NFC FIDO card) — in that case use CrescendoDLL.Token.ReaderName and CrescendoDLL.Token.TokenATR for identification.
 

Detailed Description

Unified description of a single token/authenticator the SDK can drive. Combines Crescendo PC/SC tokens (full applet stack — ACA / OATH / PIV / CardManager / FIDO) with generic FIDO authenticators reachable over USB-HID or PC/SC NFC.

Returned by CrescendoDLL.TokenDiscovery.ListAll. Pass an instance to the CrescendoDLL.SDKCore constructor that takes a CrescendoDLL.Token to open a session.

On Windows, multiple physical interfaces of the same authenticator (e.g. a USB security key's HID + CCID interfaces) are joined into a single CrescendoDLL.Token via SetupAPI Container ID.

Member Function Documentation

◆ GetAtrDisplay()

string CrescendoDLL.Token.GetAtrDisplay ( )

Returns a human-readable ATR or an empty string when the token has no ATR.

Returns
The ATR as a hex string, or an empty string if CrescendoDLL.Token.TokenATR is null.

◆ GetCapabilitiesDisplay()

string CrescendoDLL.Token.GetCapabilitiesDisplay ( )

Returns a human-readable capability summary.

Returns
One of the following strings: "Crescendo+FIDO", "Crescendo", "FIDO", or "Unknown capabilities".

◆ ToString()

override string CrescendoDLL.Token.ToString ( )
inline

Returns a short human-readable summary of the form [index] tokenName (caps), Reader: readerName, where caps is one of Crescendo+FIDO, Crescendo, FIDO, or (none).

Returns
The summary string.

Property Documentation

◆ FIDOMDSMetadata

string? CrescendoDLL.Token.FIDOMDSMetadata
get

FIDO Metadata Service entry name when known (currently populated only for recognized Crescendo ATRs).

◆ Id

string CrescendoDLL.Token.Id
get

Stable identifier. For Crescendo+FIDO and generic FIDO tokens the value comes from CrescendoDLL.Fido.FidoDevice.Id (Container ID on Windows, else VID:PID:Serial, else VID:PID:HidPath or PCSC:<reader>). Crescendo-only PC/SC tokens (e.g. an NFC card whose FIDO probe failed) use the reader's Container ID when available, else PCSC:<reader>.

◆ Index

int CrescendoDLL.Token.Index
get

Sequential index in the current CrescendoDLL.TokenDiscovery.ListAll snapshot. Suitable for the -t <n> CLI flag. Snapshot-local only — the same physical token may have a different CrescendoDLL.Token.Index in the next snapshot. Use CrescendoDLL.Token.Id for stable identity.

Within a single snapshot the order of tokens is deterministic: Crescendo tokens are always at the top, then ties are broken by (CrescendoDLL.Token.TokenName, CrescendoDLL.Token.ReaderName, CrescendoDLL.Token.Id). Two consecutive calls with the same hardware connected return the same indices.

◆ IsCrescendo

bool CrescendoDLL.Token.IsCrescendo
get

True when the Crescendo applet stack (ACA, PIV, OATH, CardManager) is available on this token. Implies a Crescendo-recognized ATR over PC/SC.

◆ ReaderName

string? CrescendoDLL.Token.ReaderName
get

Name of the PC/SC reader hosting this token, or null for authenticators reachable only over USB-HID. For Crescendo tokens this distinguishes a USB CCID interface from an NFC contactless reader; for generic FIDO authenticators a non-null value identifies the NFC reader the card is sitting on.

◆ SupportsFido

bool CrescendoDLL.Token.SupportsFido
get

True when the SDK can drive FIDO2 / U2F operations on this token.

◆ TokenATR

byte? [] CrescendoDLL.Token.TokenATR
get

ATR of the inserted card (PC/SC tokens only); null for HID-only authenticators.

◆ TokenName

string CrescendoDLL.Token.TokenName
get

Human-readable name. Crescendo display name for Crescendo tokens; the HID product string for generic FIDO tokens reachable over USB-HID; empty for generic FIDO tokens reachable only via a PC/SC reader (e.g. an unknown NFC FIDO card) — in that case use CrescendoDLL.Token.ReaderName and CrescendoDLL.Token.TokenATR for identification.