40 Commits

Author SHA1 Message Date
Widevine Buildbot
bcba6a0393 Add AES-ECB as a supported encryption mode in ECMG 2021-09-08 01:20:50 +00:00
Widevine Buildbot
8818d7d026 Entitlement rotation support
Updates also include:
- Add APIs to query current Simulcrypt channel & stream status;
- EMM format change (used only to carry fingerprinting and service
blocking info);
- Key fetcher example to use curl key fetcher.
2021-06-29 22:07:00 +00:00
Widevine Buildbot
8a07605f56 Fix a build file 2021-05-26 16:41:35 +00:00
Widevine Buildbot
75da1f3cc5 Fix a build file 2021-03-04 23:53:29 +00:00
Widevine Buildbot
555898602c Fix a build file 2021-03-04 23:35:18 +00:00
Widevine Buildbot
b215264c6d Support for group license
Content keys in ECM v3 can now additionally be encrypted by group
entitlement keys.
2021-03-04 22:51:24 +00:00
Widevine Buildbot
810ceaf1a1 Add support for Widevine ECM v3
Widevine ECM v3 is redesigned mainly based on protobuf, and supports new features including carrying fingerprinting and service blocking information. Existing clients must upgrade the Widevine CAS plugin to use the new ECM v3.
2020-12-14 18:02:09 +00:00
Widevine Buildbot
9caa71483c Fix build to include ecmg example 2020-09-25 18:39:50 +00:00
Widevine Buildbot
c2ae5214ef Add custom key fetcher callback to Simulcrypt ECMG 2020-09-19 01:44:51 +00:00
Widevine Buildbot
ef2deb6761 Minor fix 2020-09-16 18:41:43 +00:00
Widevine Buildbot
8fd98d66f3 Add EMMG to carry fingerprinting and service blocking info 2020-09-15 17:24:55 +00:00
Widevine Buildbot
535930dc60 Fix build 2020-07-25 02:53:47 +00:00
Widevine Buildbot
37bf78103e Minor change 2020-02-25 21:24:39 +00:00
Widevine Buildbot
3264ee98da Update SimulCrypt ECMG on injecting entitlement keys 2020-02-14 23:54:52 +00:00
Widevine Buildbot
7029c0b38b Fix external build issue 2020-02-14 22:14:49 +00:00
Widevine Buildbot
62a2cc3e52 Decouple key fetcher; Update ECMG API 2020-02-12 02:14:37 +00:00
Widevine Buildbot
05c27554f4 Update includes and BUILD 2020-02-10 22:05:22 +00:00
Widevine Buildbot
420cbad45a Revert googletest_repo version 2019-01-30 22:07:31 +00:00
Widevine Buildbot
e90f127558 1) Removes dependency of common/status.h from wv_cas_types.
2) Do not use glogs in example binary code.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=229984175
2019-01-18 21:36:07 +00:00
Widevine Buildbot
ac85b0ccf1 1) Do not use gflags in the example binary code.
2) Also surface wv_cas_key_fetcher_example to partner.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=229965302
2019-01-18 19:47:32 +00:00
Widevine Buildbot
a12e1b6ff3 1) Change return type to WvCasStatus for functions in wv_cas_types.cc.
2) Add a binary wv_cas_types_example.
3) Surface wv_cas_key_fetcher *source code* to partner to serve as an example of how they would make a HTTP request to acquire an entitlement key from license server.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=229953562
2019-01-18 18:45:45 +00:00
Widevine Buildbot
9d9765afbb Create some utility types/functions to help partners to create CasEncryptionRequest in JSON format and process CasEncryptionResponse in JSON format.
The idea is that partner can take the CasEncryptionRequest in JSON to construct a signed license request, send it to Widevine license service (using whatever tool they have); and once they have a response, they can use another utility here to parse and understand what is in the response JSON.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=229422648
2019-01-15 23:22:03 +00:00
Widevine Buildbot
853a03dd8d Makes GeneratePrivateData() public
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=229239892
2019-01-14 22:32:55 +00:00
Widevine Buildbot
76ccc00894 Update hardcoded default content_id and provider to match the test CAS content we have setup in Staging and UAT.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=226935596
2018-12-26 23:26:57 +00:00
Widevine Buildbot
b60df7a03c Minimal implementation of Widevine MediaCAS ECMG.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=226515998
2018-12-21 22:32:02 +00:00
Widevine Buildbot
371d1205d9 Manually copy changes from output generated by 'moe test' 2018-12-08 01:06:52 +00:00
Widevine Buildbot
081bc9d064 Print uint16 as \x01 not \x1
-------------
Allow the usage of different entitlement keys to wrap even vs. odd key.

-------------
(1) Change parameter type from 'string' to 'const char* const' to handle possible '\x00' (Nul char) byte in the input.
(2) Check size of generated ECM string, return error if the size is not as expected.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=220172089
2018-11-05 22:29:44 +00:00
Widevine Buildbot
548fe9a335 Be clear it is DVB_CSA2 we are supporting right now. There shouldn't be anyone using DVB_CSA anymore, DVB_CSA3 is in the future.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=219867168
2018-11-02 23:26:39 +00:00
Widevine Buildbot
477f9fb642 Add a few more checks for "key length" and "iv length".
-------------
Pad key value when crypto_mode is DVB_CSA, so that the key length is always 16 bytes.

-------------
Minor comment and example code update.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=219860612
2018-11-02 21:27:16 +00:00
Widevine Buildbot
a30ffdd7c6 (1) Move the CryptoMode enum definition to media_cas_packager_sdk partners can use it when calling libraries in the SDK.
(2) Add a new enum value for kDvbCsa.
(3) Allow caller to specify CTR, CBC, as well as CSA when using the ecm genertor from the SDK.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=219707788
2018-11-01 22:31:08 +00:00
Widevine Buildbot
2c05ca1be2 Do NOT expose the Simulcrypt client/server binary in the SDK yet, they are not ready yet.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=219539981
2018-10-31 22:00:13 +00:00
Widevine Buildbot
9e87e4963f Move WV CAS Descriptor Generator to the media_cas_packager_sdk.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=219162536
2018-10-29 22:08:44 +00:00
Widevine Buildbot
15f3396146 Create a WvCasStatus to be used as return type of libraries in media_cas_packager_sdk.
Following example: []/video/widevine/export/provisioning_sdk/public/provisioning_status.h
and
[]/video/widevine/export/exported_root/util/status.h

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=218918745
2018-10-26 22:04:33 +00:00
Widevine Buildbot
bdb15b6393 (1) Return a boolean instead of util::Status for methods in wv_cas_ecm.h
(2) Update wv_cas_ecm_example to NOT depend on ABSL

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=218884631
2018-10-26 18:26:35 +00:00
Widevine Buildbot
770fdbd1cc Adds 'virtual' and 'const' modifiers to methods in wv_cas_ecm.
-------------
Expose header files under export/exported_root/util in media_cas_packager_sdk because util::Status is used in wv_cas_ecm.h

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=218632176
2018-10-25 05:20:40 +00:00
Widevine Buildbot
10eb5a09a3 Merge branch 'master' of https://widevine-partner.googlesource.com/media_cas_packager_sdk_source into moe_writing_branch_from_947b950d950a5a5777a84d953e88af7358e3086c 2018-10-23 19:37:03 +00:00
Widevine Buildbot
b8b62e31d6 Merge branch 'master' of https://widevine-partner.googlesource.com/media_cas_packager_sdk_source into moe_writing_branch_from_fcdd9fa38cb2674e34790e8360af4722a09a0927 2018-10-22 20:36:36 +00:00
Widevine Buildbot
76c914c7aa Implement a set of "Simplified APIs" for ECM generation for castlabs.com.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=217601738
2018-10-17 23:56:49 +00:00
Widevine Buildbot
7b9bd49db0 Correct a file path for media_cas_packager_sdk_files.
Currently getting Kokoro error
ERROR: /var/lib/jenkins/workspace/Media_CAS_Packager_SDK/BUILD:13:1: no such package 'media_cas_packager_sdk/example': BUILD file not found on package path and referenced by '//:media_cas_packager_sdk_files'.
Example: []

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=217577606
2018-10-17 20:44:24 +00:00
Widevine Buildbot
234436f887 Export media_cas_packager_sdk 2018-10-01 23:46:31 +00:00