What is the relation of the challenge-response secret (nitropy nk3 secrets) compared to the hmac-secret extension of the fido2 specification? Are these two different features? If so, is there a way to use the fido2 hmac-secret extension with keepassxc as well? How are they different, especially in regards to using the hardware smartcard features? Is either more secure the the other against physical attacks (read as in attacker spends millions to extract the secrets/pin from the device)?
They are both HMAC but FIDO2 is using SHA256 and NK3 secrets aims to be YK compatible and results in 20 bytes secrets (==SHA1). Later YK afaik also use SHA256 HMAC.
The NK FIDO2 stores secrets in the “processor” stating no special secure element (smart card or security chip). I guess this is due to key derive happening just in the memory of the processor and the secret stored in EEPROM (encrypted?). It is an entry level device.
The NK 3 uses trussed framework and is configurable by the developers where to store secret data. As it is in development, they started with a provider that stores credentials encrypted on flash. There is a roadmap to switch to the secure element to store credentials (configurable by user?). The secure element/dedicated processor is certified. So the protection level would be higher.
Both do not allow readout of the secret using regular programming.
From software support side, you have to work with what implementation the developer of that software picked. Using the YK or FIDO2 libraries.