Table of Contents

Class CalculateCredentialCommand

Namespace
Yubico.YubiKey.Oath.Commands
Assembly
Yubico.YubiKey.dll

Performs CALCULATE of OTP (One-Time Password) values for one named credential.

public class CalculateCredentialCommand : OathChallengeResponseBaseCommand, IYubiKeyCommand<CalculateCredentialResponse>
Inheritance
object
CalculateCredentialCommand
Implements
Inherited Members

Constructors

CalculateCredentialCommand()

Constructs an instance of the CalculateCredentialCommand class. The ResponseFormat will be set to its default value which is truncated.

public CalculateCredentialCommand()

CalculateCredentialCommand(Credential, ResponseFormat)

Constructs an instance of the CalculateCredentialCommand class.

public CalculateCredentialCommand(Credential credential, ResponseFormat responseFormat)

Parameters

credential Credential

The credential to calculate.

responseFormat ResponseFormat

Full or truncated response to receive back.

Exceptions

ArgumentNullException

The credential is null.

Properties

Application

Gets the YubiKeyApplication to which this command belongs.

public YubiKeyApplication Application { get; }

Property Value

YubiKeyApplication

YubiKeyApplication.Oath

Credential

The credential to calculate.

public Credential? Credential { get; set; }

Property Value

Credential

ResponseFormat

Full or truncated response to receive back.

public ResponseFormat ResponseFormat { get; set; }

Property Value

ResponseFormat

The default value for the response is truncated.

Methods

CreateCommandApdu()

Creates a well-formed CommandApdu to send to the YubiKey.

public CommandApdu CreateCommandApdu()

Returns

CommandApdu

A valid CommandApdu that is ready to be sent to the YubiKey, or passed along to additional encoders for further processing.

Remarks

This method will first perform validation on all of the parameters and data provided to it. The CommandAPDU it creates should contain all of the data payload for the command, even if it exceeds 65,535 bytes as specified by the ISO 7816-4 specification. The APDU will be properly chained by the device connection prior to being sent to the YubiKey, and the responses will collapsed into a single result.

CreateResponseForApdu(ResponseApdu)

Creates the corresponding IYubiKeyResponse implementation for the current command.

public CalculateCredentialResponse CreateResponseForApdu(ResponseApdu responseApdu)

Parameters

responseApdu ResponseApdu

The ResponseApdu returned by the YubiKey.

Returns

CalculateCredentialResponse

The implementation of IYubiKeyResponse that parses and presents ths response APDU.