b62a8f165220334409d853a7e17f268efebeb10f
Merge from Widevine repo of http://go/wvgerrit/45940 Since the Level 3 OEMCrypto is being updated to Provisioning 3.0, its SPOID would be derived from its OEM Certificate, breaking backwards compatibility. This CL changes how we determine what unique id to use for SPOIDs by checking to see if OEMCrypto_GetDeviceID is implemented, and if so, using the id returned from that call. If not and the root of trust is an OEM Cert, we continue to use that OEM Cert. This allows Level 3 devices to keep the same SPOID when they undergo a field update to Provisioning 3.0. Also, the Level 3 OEMCrypto will share a single OEM certificate across all devices with the same architecture. Since the OEM Cert is not unique, it cannot be used to derive a unique id. By using the unique id returned by OEMCrypto_GetDeviceID, we can generate a unique SPOID. The id from OEMCrypto_GetDeviceID has always been required to be unique for devices with keyboxes. The functionality and use of this function for Provisioning 3.0 devices was introduced in OEMCrypto API version 14.1. Test: tested as part of http://go/ag/4674759 Change-Id: I65af8246c9312c75c570a2d518caa3de633007c4
Description
No description provided