-
Notifications
You must be signed in to change notification settings - Fork 6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ClearKey Decryption Error #4075
Comments
I don't think Does that answer your question? Thanks. |
Yes, I recognize that. Note that the 3rd of my shown attempts would be the base64url encoding of that slash. (Though I do see that the "reproduction" I copied over was an attempt to maintain the slash.) Of note, however, is that having a |
Ah, got it! I'm not sure we should spend much time wondering about the behavior when using Focusing on the |
As reported, the same failure occurs on a Nexus 6 running 7.1.1. The original key is:
|
It looks like you're not encoding the key correctly. Isn't the base64url encoding of that key |
String key = Base64.encodeToString(new byte[]{(byte)0xB2, (byte)0xAB, (byte)0xE5, (byte)0x90, (byte)0x82, (byte)0x5D, (byte)0x82, (byte)0x27, (byte)0x1C, (byte)0xFC, (byte)0x06, (byte)0x06, (byte)0x06, (byte)0x3C, (byte)0x81, (byte)0x99}, Base64.URL_SAFE);
//key == "sqvlkIJdgicc_AYGBjyBmQ==\n" While the encryption error does go away using your key, I also don't get any audio. Using |
Thanks for your patience! I was able to get the content to play successfully. The correct key to use is I think the problem is in Do you agree with the above diagnosis? If so I can push a fix. Thanks! |
My sense was that there was an issue in that escaping, but I wasn't able to debug/bypass it myself. I hadn't heard of that requirement in JSON, and searching online suggests it's optional. PowerShell, for one, doesn't include it: @{"test"="value/text"} | ConvertTo-Json -Compress # {"test":"value/text"} |
Heh, yeah, it appears the only non-optional escaping is of |
Issue: #4075 ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=191872512
Should be fixed in |
Issue description
When attempting to play a protected file with DRM encryption, I get the a decryption error. I am able to play successfully except when the base64 key contains a
/
. I have tried all of the following in my offline key:"...\"k\":\"sqvlkIJdgicc/AYGBjyBmQ\"..."
"...\"k\":\"sqvlkIJdgicc\\/AYGBjyBmQ\"..."
"...\"k\":\"sqvlkIJdgicc_AYGBjyBmQ\"..."
All three produce the following error: ('+'/'-' seems to work fine)
Reproduction steps
Version of ExoPlayer being used
ExoPlayer 2.7.0
Device(s) and version(s) of Android being used
6.0.0 Visual Studio Emulator
7.1.1 Nexus 6
The text was updated successfully, but these errors were encountered: