Minimal implementation of Widevine MediaCAS ECMG.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=226515998
This commit is contained in:
Fang Yu
2018-12-21 11:17:37 -08:00
parent 7487ce5aa8
commit bc68878bdf
88 changed files with 2456 additions and 2774 deletions

View File

@@ -16,6 +16,7 @@ filegroup(
name = "binary_release_files",
srcs = [
"certificate_type.h",
"status.h",
],
)
@@ -37,9 +38,9 @@ cc_library(
hdrs = ["status.h"],
deps = [
"//base",
"//util:error_space",
"@abseil_repo//absl/base:core_headers",
"@abseil_repo//absl/strings",
"//util:error_space",
],
)
@@ -62,20 +63,21 @@ cc_library(
":error_space",
":random_util",
":rsa_key",
":sha_util",
":signing_key_util",
":status",
":wvm_token_handler",
"//base",
"//common:status",
"//strings",
"@abseil_repo//absl/strings",
"@abseil_repo//absl/synchronization",
"@abseil_repo//absl/time",
"//util/gtl:map_util",
"//protos/public:client_identification_proto",
"//protos/public:drm_certificate_proto",
"//protos/public:errors_proto",
"//protos/public:license_protocol_proto",
"//protos/public:signed_drm_certificate_proto",
"//strings",
"//util/gtl:map_util",
"@abseil_repo//absl/strings",
"@abseil_repo//absl/synchronization",
"@abseil_repo//absl/time",
],
)
@@ -86,18 +88,20 @@ cc_test(
":client_cert",
":drm_root_certificate",
":error_space",
":sha_util",
":test_drm_certificates",
":wvm_test_keys",
"//base",
"//common:rsa_key",
"//common:rsa_test_keys",
"//protos/public:drm_certificate_proto",
"//protos/public:errors_proto",
"//protos/public:signed_drm_certificate_proto",
"//strings",
"//testing:gunit_main",
"@abseil_repo//absl/strings",
"@abseil_repo//absl/synchronization",
"@abseil_repo//absl/time",
"//common:rsa_key",
"//common:rsa_test_keys",
"//protos/public:drm_certificate_proto",
"//protos/public:errors_proto",
"//protos/public:signed_drm_certificate_proto",
],
)
@@ -114,15 +118,15 @@ cc_library(
":random_util",
":rsa_key",
":signing_key_util",
":status",
"//base",
"//common:status",
"@abseil_repo//absl/strings",
"@abseil_repo//absl/synchronization",
"//util/gtl:map_util",
"//protos/public:client_identification_proto",
"//protos/public:device_certificate_status_proto",
"//protos/public:errors_proto",
"//protos/public:provisioned_device_info_proto",
"//util/gtl:map_util",
"@abseil_repo//absl/strings",
"@abseil_repo//absl/synchronization",
],
)
@@ -134,14 +138,14 @@ cc_test(
":client_cert",
":device_status_list",
"//base",
"//testing:gunit_main",
"@abseil_repo//absl/strings",
"//common:rsa_key",
"//common:rsa_test_keys",
"//protos/public:client_identification_proto",
"//protos/public:errors_proto",
"//protos/public:provisioned_device_info_proto",
"//protos/public:signed_drm_certificate_proto",
"//testing:gunit_main",
"@abseil_repo//absl/strings",
],
)
@@ -154,15 +158,15 @@ cc_library(
":error_space",
":rsa_key",
":sha_util",
":status",
"//base",
"//common:status",
"@abseil_repo//absl/memory",
"@abseil_repo//absl/strings",
"@abseil_repo//absl/synchronization",
"//external:openssl",
"//protos/public:drm_certificate_proto",
"//protos/public:errors_proto",
"//protos/public:signed_drm_certificate_proto",
"@abseil_repo//absl/memory",
"@abseil_repo//absl/strings",
"@abseil_repo//absl/synchronization",
],
)
@@ -178,10 +182,10 @@ cc_test(
":test_drm_certificates",
"//base",
"//external:protobuf",
"//testing:gunit_main",
"//protos/public:drm_certificate_proto",
"//protos/public:errors_proto",
"//protos/public:signed_drm_certificate_proto",
"//testing:gunit_main",
],
)
@@ -193,11 +197,11 @@ cc_library(
":aes_cbc_util",
":drm_service_certificate",
":error_space",
":status",
"//base",
"//common:status",
"@abseil_repo//absl/strings",
"//protos/public:client_identification_proto",
"//protos/public:errors_proto",
"@abseil_repo//absl/strings",
],
)
@@ -220,9 +224,9 @@ cc_test(
":rsa_test_keys",
":rsa_util",
"//base",
"//external:openssl",
"//testing:gunit",
"//testing:gunit_main",
"//external:openssl",
],
)
@@ -307,9 +311,9 @@ cc_library(
visibility = ["//visibility:public"],
deps = [
"//base",
"@abseil_repo//absl/strings",
"//external:openssl",
"//util/endian",
"@abseil_repo//absl/strings",
],
)
@@ -332,8 +336,8 @@ cc_library(
visibility = ["//visibility:public"],
deps = [
"//base",
"//external:openssl",
"@abseil_repo//absl/strings",
"//external:openssl",
],
)
@@ -415,8 +419,8 @@ cc_library(
":aes_cbc_util",
":rsa_key",
":sha_util",
":status",
"//base",
"//common:status",
],
)
@@ -438,10 +442,10 @@ cc_test(
deps = [
":crypto_util",
":signing_key_util",
"//protos/public:license_protocol_proto",
"//testing:gunit",
"//testing:gunit_main",
"@abseil_repo//absl/strings",
"//protos/public:license_protocol_proto",
],
)
@@ -464,12 +468,12 @@ cc_library(
":aes_cbc_util",
":ecb_util",
":sha_util",
":status",
"//base",
"//common:status",
"//util/endian",
"//util/gtl:map_util",
"@abseil_repo//absl/strings",
"@abseil_repo//absl/synchronization",
"//util/endian",
"//util/gtl:map_util",
],
)
@@ -503,9 +507,9 @@ cc_library(
srcs = ["error_space.cc"],
hdrs = ["error_space.h"],
deps = [
"//common:status",
"//protos/public:errors_proto",
"//util:error_space",
"//util:proto_status",
"//protos/public:errors_proto",
],
)
@@ -518,14 +522,14 @@ cc_library(
":drm_service_certificate",
":error_space",
":rsa_key",
":status",
":x509_cert",
"//base",
"//common:status",
"@abseil_repo//absl/strings",
"@abseil_repo//absl/synchronization",
"//protos/public:client_identification_proto",
"//protos/public:errors_proto",
"//protos/public:remote_attestation_proto",
"@abseil_repo//absl/strings",
"@abseil_repo//absl/synchronization",
],
)
@@ -540,15 +544,15 @@ cc_library(
":error_space",
":rsa_key",
":rsa_util",
":status",
"//base",
"//common:status",
"@abseil_repo//absl/strings",
"@abseil_repo//absl/synchronization",
"//util/gtl:map_util",
"//protos/public:client_identification_proto",
"//protos/public:drm_certificate_proto",
"//protos/public:errors_proto",
"//protos/public:signed_drm_certificate_proto",
"//util/gtl:map_util",
"@abseil_repo//absl/strings",
"@abseil_repo//absl/synchronization",
],
)
@@ -566,13 +570,13 @@ cc_test(
":test_drm_certificates",
"//base",
"//external:protobuf",
"//testing:gunit_main",
"@abseil_repo//absl/strings",
"//protos/public:client_identification_proto",
"//protos/public:drm_certificate_proto",
"//protos/public:errors_proto",
"//protos/public:license_server_sdk_proto",
"//protos/public:signed_drm_certificate_proto",
"//testing:gunit_main",
"@abseil_repo//absl/strings",
],
)
@@ -581,11 +585,11 @@ cc_library(
srcs = ["verified_media_pipeline.cc"],
hdrs = ["verified_media_pipeline.h"],
deps = [
":status",
":vmp_checker",
"//base",
"//common:status",
"//protos/public:license_protocol_proto",
"@abseil_repo//absl/strings",
"//protos/public:license_protocol_proto",
],
)
@@ -597,11 +601,11 @@ cc_library(
":error_space",
":openssl_util",
":rsa_key",
":status",
"//base",
"//common:status",
"//external:openssl",
"@abseil_repo//absl/strings",
"@abseil_repo//absl/synchronization",
"//external:openssl",
],
)
@@ -611,8 +615,8 @@ cc_library(
srcs = ["test_utils.cc"],
hdrs = ["test_utils.h"],
deps = [
":status",
"//base",
"//common:status",
"//external:openssl",
],
)
@@ -639,9 +643,9 @@ cc_library(
":certificate_type",
":error_space",
":rsa_key",
":status",
":x509_cert",
"//base",
"//common:status",
"//protos/public:errors_proto",
"//protos/public:verified_media_pipeline_proto",
],
@@ -655,10 +659,10 @@ cc_test(
":rsa_key",
":vmp_checker",
"//base",
"//protos/public:errors_proto",
"//protos/public:verified_media_pipeline_proto",
"//testing:gunit_main",
"@abseil_repo//absl/strings",
"//protos/public:errors_proto",
"//protos/public:verified_media_pipeline_proto",
],
)
@@ -667,8 +671,8 @@ cc_library(
srcs = ["string_util.cc"],
hdrs = ["string_util.h"],
deps = [
":status",
"//base",
"//common:status",
],
)