My volumes are PLAIN dm-crypt encrypted (i.e. LUKS without the LUKS bells and whistles) and the key is stored on my Vivokey Flex implant.
I mount them using scripts that combine crypsetup and vivokey_pam, with the ubiquitous ACR122U RFID reader: the systemd service file calls my script, I present my implant to the reader and voila: the volume is mounted.