device/fido/mac: encrypt credential metadata in the macOS keychain

This adds a CredentialMetadata class to encrypt any account metadata
associated with a WebAuthn credential (user ID, user name, user display
name, and RP ID) before writing it to the macOS keychain.

The key will be generated and stored in the Chrome profile under which
the credential was created. (It is currently hardcoded but I'm changing
that in a follow-up CL.) Deletion of the profile or key will therefore
render the data unreadable.

Bug: 678128
Change-Id: I536d537e9220cc5f89d487c7f94e169d06d62e7a
Reviewed-on: https://chromium-review.googlesource.com/1073708
Reviewed-by: Balazs Engedy <engedy@chromium.org>
Reviewed-by: Adam Langley <agl@chromium.org>
Commit-Queue: Martin Kreichgauer <martinkr@google.com>
Cr-Commit-Position: refs/heads/master@{#564609}
12 files changed