Define Provisioning-Unique ID for New Device IDs
(This is a merge of wvgerrit/25583) Devices that use Provisioning 3.0 did not have a Provisioning-Unique ID defined. Attempting to retrieve it would result in an error. Devices that use SPOIDs with keyboxes would expose the keybox's real Provisioning-Unique ID when asked. This is a security flaw. To solve both cases, an alternative Provisioning-Unique ID is used, consisting of the Device-Unique ID bitwise-inverted. Bug: 36065223 Test: run_all_unit_tests.sh Change-Id: I32512a3e11403e679939187e156904a57a9e24ef
This commit is contained in:
@@ -323,6 +323,7 @@ struct WVDrmPlugin : public IDrmPlugin, IDrmPluginListener,
|
||||
// On SPOID devices, calling this will seal the CDM Identifier Builder, thus
|
||||
// making it an error to change the origin.
|
||||
status_t getDeviceUniqueId(std::string* id);
|
||||
status_t getProvisioningUniqueId(std::string* id);
|
||||
|
||||
const std::string& origin() const { return mCdmIdentifier.origin; }
|
||||
bool set_origin(const std::string& id);
|
||||
|
||||
Reference in New Issue
Block a user