The
softraid(4) driver's CRYPTO discipline can use an external storage device, such as a USB "stick", as a key. See the -k, "keydisk" function in the
bioctl(8) man page, as well as the misc@ archives where the use of keydisks with bioctl has been discussed. To get you started, some of
these postings might be helpful.
I use softraid to encrypt /home on my netbook that travels with me, but I do not use a keydisk, just a passphrase.