According to Apple's documentation for returning keychain items:
"""
Don’t use kSecReturnData for cryptographic key or identity items, as the key material may not be extractable. Instead, call SecKeyCopyExternalRepresentation(::), and check the error parameter if it returns nil.
"""
Probably we can hide this implementation detail within Haversack when running a KeyQuery that has kSecReturnData in it.
Be sure to test with keys that are not extractable.