Under the hood, Google Wallet uses an API available in Android called Identity Credential to handle ISO 18013-5 compliant mobile driver’s licenses. This API was introduced in Android 11. In the same release, Google also introduced, basically, an enhanced version of the API that utilizes the device’s secure hardware to more securely store mobile driver’s licenses. This is what’s referred to as the Identity Credential HAL, and this is what very few devices support (and what Google wanted to expand support for by introducing new requirements in Android 13 that I mentioned in my article).
However, hardware support for Identity Credential is *not* required to support digital driver’s licenses. For older devices and devices without hardware support, Google offers a backward compatible version of the Identity Credential API. This is compatible with Android 8.0 and later and utilizes another API called the Android Keystore to store mobile driver’s licenses on the device. Keystore uses the device’s Trusted Execution Environment, which Android devices have been required to support for some time now.
This article originally appeared on https://www.theverge.com/2022/12/15/23510774/google-digital-state-id-cards-android-13-wallet-app-maryland