Show / Hide Table of Contents

GetKeyAgreementCommand Class

Namespace: Yubico.YubiKey.Fido2.Commands Assembly: Yubico.YubiKey.dll

Gets the YubiKey's public key for the Key Agreement algorithm based on the specified PIN/UV auth protocol.

C#
public class GetKeyAgreementCommand : IYubiKeyCommand<GetKeyAgreementResponse>
Inheritance object GetKeyAgreementCommand
Implements
IYubiKeyCommand<GetKeyAgreementResponse>

Remarks

Before sending a PIN to the YubiKey, it must be encrypted. The key used to encrypt is generated using a Key Agreement algorithm along with a key derivation function. In FIDO2, the key agreement algorithm is specified int the PIN/UV Auth Protocol. There are currently two. For each protocol the key agreement algorithm is ECDH with the P-256 curve, although they have different key derivation functions.

Constructors

Name Description
GetKeyAgreementCommand()

Constructs a new instance of GetKeyAgreementCommand.

GetKeyAgreementCommand(PinUvAuthProtocol)

Constructs a new instance of GetKeyAgreementCommand.

Properties

Name Description
Application

Gets the YubiKeyApplication (e.g. PIV, OATH, etc.) to which this command applies.

PinUvAuthProtocol

The PIN/UV Auth Protocol for which the public key is requested.

Methods

Name Description
CreateCommandApdu()

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

CreateResponseForApdu(ResponseApdu)

Creates the corresponding IYubiKeyResponse implementation for the current command.

In this article
Back to top Generated by DocFX