//////////////////////////////////////////////////////////////////////////////// // Copyright 2018 Google LLC. // // This software is licensed under the terms defined in the Widevine Master // License Agreement. For a copy of this agreement, please contact // widevine-licensing@google.com. //////////////////////////////////////////////////////////////////////////////// #ifndef COMMON_CERTIFICATE_UTIL_H_ #define COMMON_CERTIFICATE_UTIL_H_ #include #include "util/status.h" #include "common/certificate_type.h" namespace widevine { // Set the certificate status list system-wide. |cert_type| specifies // whether to use development or production root certificates. // |expiration_period| is the number of seconds until the // certificate_status_list expires after its creation time // (creation_time_seconds). If |allow_unknown_devices| is false, an error is // returned if the device does not appear in the certificate_status_list. util::Status SetCertificateStatusList(CertificateType cert_type, const std::string& certificate_status_list, uint32_t expiration_period_seconds, bool allow_unknown_devices); // Add a service certificate system-wide. |cert_type| indicates the type of // root certificate used to sign the service certificate; // |service_certificate| is a Google-generated certificate used to // authenticate the service provider for purposes of device privacy; // |service_private_key| is the encrypted PKCS#8 private RSA key corresponding // to the service certificate; and |service_private_key_passphrase| is the // password required to decrypt |service_private_key|. util::Status AddDrmServiceCertificate( CertificateType cert_type, const std::string& service_certificate, const std::string& service_private_key, const std::string& service_private_key_passphrase); } // namespace widevine #endif // COMMON_CERTIFICATE_UTIL_H_