add CryptFields trait