Class SessionKeys
- Namespace
- Yubico.YubiKey.YubiHsmAuth
- Assembly
- Yubico.YubiKey.dll
These session keys are used to establish an encrypted and authenticated session with a YubiHSM 2 device. The secure session is based on the Global Platform Secure Channel Protocol '03' (SCP03).
public class SessionKeys
- Inheritance
-
objectSessionKeys
Remarks
These session keys are calculated from a credential in the YubiHSM Auth application. See GetAes128SessionKeysCommand and GetAes128SessionKeysResponse for more information on retrieving these values.
Constructors
SessionKeys(ReadOnlyMemory<byte>, ReadOnlyMemory<byte>, ReadOnlyMemory<byte>)
Construct a set of session keys with the given values.
public SessionKeys(ReadOnlyMemory<byte> encryptionKey, ReadOnlyMemory<byte> macKey, ReadOnlyMemory<byte> rmacKey)
Parameters
encryptionKey
ReadOnlyMemory<byte>Sets EncryptionKey.
macKey
ReadOnlyMemory<byte>Sets MacKey.
rmacKey
ReadOnlyMemory<byte>Sets RmacKey.
Properties
EncryptionKey
Secure Channel command and response encryption session key.
public ReadOnlyMemory<byte> EncryptionKey { get; }
Property Value
- ReadOnlyMemory<byte>
Remarks
Used for data confidentiality.
MacKey
Secure Channel Message Authentication Code session key for commands.
public ReadOnlyMemory<byte> MacKey { get; }
Property Value
- ReadOnlyMemory<byte>
Remarks
This session key is used for data and protocol integrity in commands.
RmacKey
Secure Channel Message Authentication Code session key for responses.
public ReadOnlyMemory<byte> RmacKey { get; }
Property Value
- ReadOnlyMemory<byte>
Remarks
This session key is used for data and protocol integrity in responses.