GetKeyAgreementCommand Class
Namespace: Yubico.YubiKey.Fido2.Commands Assembly: Yubico.YubiKey.dllGets the YubiKey's public key for the Key Agreement algorithm based on the specified PIN/UV auth protocol.
public class GetKeyAgreementCommand : Object, IYubiKeyCommand<GetKeyAgreementResponse>
Implements
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. |