Merge changes If26ecc5d,I8ae472f1
* changes: Correct ExoPlayer version Match GenerateRSASignature unit test code with actual code
This commit is contained in:
committed by
Android (Google) Code Review
commit
12edc84be8
@@ -2879,14 +2879,15 @@ TEST_F(DISABLED_TestKeybox, RSASignature) {
|
||||
OEMCrypto_GetRandom(&licenseRequest[0], licenseRequest.size());
|
||||
size_t signature_length = 0;
|
||||
|
||||
uint8_t signature[500];
|
||||
|
||||
sts = OEMCrypto_GenerateRSASignature(s.session_id(), &licenseRequest[0],
|
||||
licenseRequest.size(), NULL,
|
||||
licenseRequest.size(), signature,
|
||||
&signature_length, kSign_RSASSA_PSS);
|
||||
|
||||
ASSERT_EQ(OEMCrypto_ERROR_SHORT_BUFFER, sts);
|
||||
ASSERT_NE(static_cast<size_t>(0), signature_length);
|
||||
|
||||
uint8_t* signature = new uint8_t[signature_length];
|
||||
ASSERT_GE(sizeof(signature), signature_length);
|
||||
|
||||
sts = OEMCrypto_GenerateRSASignature(s.session_id(), &licenseRequest[0],
|
||||
licenseRequest.size(), signature,
|
||||
@@ -2898,7 +2899,6 @@ TEST_F(DISABLED_TestKeybox, RSASignature) {
|
||||
s.PreparePublicKey();
|
||||
s.VerifyRSASignature(&licenseRequest[0], licenseRequest.size(), signature,
|
||||
signature_length, kSign_RSASSA_PSS);
|
||||
delete[] signature;
|
||||
}
|
||||
|
||||
TEST_F(DISABLED_TestKeybox, LoadRSASessionKey) {
|
||||
|
||||
Binary file not shown.
@@ -1,12 +1,22 @@
|
||||
ExoPlayerDemo.apk can be used to do end-to-end verification of your Modular DRM.
|
||||
ExoPlayerDemo.apk can be used to do end-to-end verification of Modular DRM.
|
||||
|
||||
To install, side load ExoPlayerDemo.apk app to your device:
|
||||
|
||||
adb install ExoPlayerDemo.apk
|
||||
|
||||
To run, launch ExoPlayer, then choose the Revenge (DASH CENC) clip, which is encrypted
|
||||
using DASH Common Encryption. Then press "Play" to start playback. The other clips
|
||||
in the list are clear (i.e. not encrypted).
|
||||
To run, launch ExoPlayer, then choose the clip to play. The
|
||||
Widevine-encrypted DASH CENC assets are in the "WIDEVINE DASH GTS"
|
||||
section.
|
||||
|
||||
These assets test various configurations of the Key Control Block (KCB)
|
||||
with various protections and expirations:
|
||||
|
||||
WV: HDCP not specified (KCB: Observe_HDCP=false)
|
||||
WV: HDCP not required (KCB: Observe_HDCP=true && HDCP=not required && DataPath=normal)
|
||||
WV: HDCP required (KCB: Observe_HDCP=true && HDCP=required && DataPath=normal)
|
||||
WV: Secure video path required (KCB: Observe_HDCP=true && HDCP=not required && DataPath=secure)
|
||||
WV: HDCP + secure video path required (KCB: Observe_HDCP=true && HDCP=required && DataPath=secure)
|
||||
WV: 30s license duration (KCB: test timer expiration)
|
||||
|
||||
Notes:
|
||||
|
||||
@@ -24,5 +34,6 @@ Notes:
|
||||
AudioTrack.getTimestamp API to do A/V sync. It will fall back to how it used to do things if
|
||||
the API isn't available.
|
||||
|
||||
- The apk is still built against API level 18. The features above are accessed via reflection.
|
||||
|
||||
- Exoplayer will retrieve a new license when playing "WV: 30s license duration",
|
||||
after the license duration has expired. Integrators should verify by means
|
||||
other than visual inspection that license duration is being enforced.
|
||||
|
||||
Reference in New Issue
Block a user