Update Simulcrypt ECMg
This commit is contained in:
@@ -10,10 +10,12 @@
|
||||
#define COMMON_KEYBOX_CLIENT_CERT_H_
|
||||
|
||||
#include "common/client_cert.h"
|
||||
#include "common/error_space.h"
|
||||
#include "common/hash_algorithm.h"
|
||||
#include "protos/public/errors.pb.h"
|
||||
|
||||
namespace widevine {
|
||||
|
||||
//
|
||||
class KeyboxClientCert : public ClientCert {
|
||||
public:
|
||||
KeyboxClientCert() {}
|
||||
@@ -23,6 +25,7 @@ class KeyboxClientCert : public ClientCert {
|
||||
Status Initialize(const std::string& keybox_token);
|
||||
|
||||
Status VerifySignature(const std::string& message,
|
||||
HashAlgorithm hash_algorithm,
|
||||
const std::string& signature,
|
||||
ProtocolVersion protocol_version) const override;
|
||||
|
||||
@@ -34,6 +37,7 @@ class KeyboxClientCert : public ClientCert {
|
||||
SignedMessage::SessionKeyType key_type() const override {
|
||||
return SignedMessage::WRAPPED_AES_KEY;
|
||||
}
|
||||
bool using_dual_certificate() const override { return false; }
|
||||
const std::string& serial_number() const override { return serial_number_; }
|
||||
const std::string& service_id() const override { return unimplemented_; }
|
||||
const std::string& signing_key() const override { return signing_key_; }
|
||||
@@ -59,6 +63,14 @@ class KeyboxClientCert : public ClientCert {
|
||||
const std::multimap<uint32_t, std::string>& keymap);
|
||||
static bool IsSystemIdKnown(const uint32_t system_id);
|
||||
static uint32_t GetSystemId(const std::string& keybox_bytes);
|
||||
Status SystemIdUnknownError() const override {
|
||||
return Status(error_space, UNSUPPORTED_SYSTEM_ID,
|
||||
"keybox-unsupported-system-id");
|
||||
}
|
||||
Status SystemIdRevokedError() const override {
|
||||
return Status(error_space, DRM_DEVICE_CERTIFICATE_REVOKED,
|
||||
"keybox-system-id-revoked");
|
||||
}
|
||||
|
||||
private:
|
||||
std::string unimplemented_;
|
||||
|
||||
Reference in New Issue
Block a user