Sandmann79 / xbmc

Prime Video Addon for Kodi Media Center
https://forum.kodi.tv/showthread.php?tid=349255
GNU General Public License v3.0
758 stars 192 forks source link

vmp_validation locks HD+ streams #294

Closed ghoshben closed 4 years ago

ghoshben commented 5 years ago

playing HD content (including movie) right now amazon enforced vmp_validation.

image

aers commented 5 years ago

It's unlikely Kodi can ever pass VMP validation because it requires the main exe to be signed by Widevine's VMP certificate.

ghoshben commented 5 years ago

as far as I understand it has to post the servercertificate as well as the payload during widevine lisence request and license proxy will verify that (just like netflix ) which is not implemented here

aers commented 5 years ago

You never post the server certificate, you post a request for it.

Regardless, VMP does signature validation on the exe running the CDM. Kodi cannot pass this check.

Varstahl commented 5 years ago

Yep, we're fucked. Was fun 'till it lasted.

aers commented 5 years ago

Should still work on Android devices, but yeah PC's locked down. Widevine spec changed to VMP enabled by default (see https://www.widevine.com/news).

Netflix might follow suit soon, but I don't believe they have yet. Netflix tends to ignore a lot of recommended Widevine stuff (they don't even follow the revocation list, or didn't until recently).

Varstahl commented 5 years ago

Netflix has been actively working against Google's specs in some areas, to provide a better experience for their users, so it might never come.

That was an aimed moved, and aim well they did. I wonder if Amazon might consider overriding the VMP requirements, or if they're in on the act.

ghoshben commented 5 years ago

@Varstahl currently I found a way to watch sd content on amaon prime just remove the operatingSystemName=Windows&operatingSystemVersion=10.0 while requesting then instead of sending HD they will send sd manifeast , which doesnot require VMP validation . but sadly den only sd content will be played.

ghoshben commented 5 years ago

@peak3d sir can u please look into this matter

Varstahl commented 5 years ago

@Varstahl currently I found a way to watch sd content on amazon prime

Not sure, I think I tried to go the 580-ish height route but wasn't working for me. It might be working, but that's not the worse part. The worst part is that if what we had to do before to have 1080p was to enforce HDCP (doable) now we just can't do anything because the platform's been neutered.

Also, I'm fairly sure that doesn't even work (at least on my end), because movies were already HDCP-locked, so the versions I was watching were already SD, and now that doesn't work anymore just as well.

Varstahl commented 5 years ago

Just tried anyway, and no:

ERROR: AddOnLog: InputStream Adaptive: Unable to find license;hdcpEnforcementResolutionPixels in JSON string
ERROR: AddOnLog: InputStream Adaptive: License update not successful (no keys)
ERROR: AddOnLog: InputStream Adaptive: Initialize failed (SingleSampleDecrypter)
TehTux commented 5 years ago

@Varstahl Which movie have you tested? For me it works.

Varstahl commented 5 years ago

My usual one, Hot Fuzz, but I'm checking some stuff.

ghoshben commented 5 years ago

@Varstahl dont know sir but for me it worked

Varstahl commented 5 years ago

@TehTux @ghoshben Yeah guys, I get it, I'm used to Amazon's rolling updates process. So one of the following is going to happen:

Until proven wrong, I'm opting for the incoming doom. After all I knew this was gonna happen a week ago, and the update rolled last night or two nights ago for me.

TehTux commented 5 years ago

My usual one, Hot Fuzz, but I'm checking some stuff.

Is working: 1088x464px

Varstahl commented 5 years ago

It's stupid. I'm in the position in which is easier for me to legally download pirated content and watch it in 1080p/4K, then using the platform I'm paying for to watch it. This is fucking madness. I can't begin to wrap my head around it.

I'll go silent for a while, but as I said I've tested anything and everything, and not even trailers work.

TehTux commented 5 years ago

Yeah, it's stupid!

trabogano commented 5 years ago

TehTux i have tried latest commit. Video start but I have no sound, I I search audio track in option it say "no audio track"

TehTux commented 5 years ago

TehTux i have tried latest commit. Video start but I have no sound, I I search audio track in option it say "no audio track"

@trabogano Thank you for testing. Can you tell me which video you tested and your device + operating system?

trabogano commented 5 years ago

American gods, 1 season various episodes. Raspberry pi3+ libreelec9.1

TehTux commented 5 years ago

American gods, 1 season various episodes. Raspberry pi3+ libreelec9.1

I have tested S01E01

Can not reproduce this with RPi3 + LibreELEC 9.0.1

trabogano commented 5 years ago

Strange things happen on my raspberry. If I use Kore for starting an episode from extension voices audio working fine. If I start a video by monitor using Amazon vod gui audio not work.

Varstahl commented 5 years ago

Funny as hell, if we use the wrong parameters then instead of putting out the correct videos it spits out the fallback streams, which include non protected SDs.

@Varstahl currently I found a way to watch sd content on amaon prime just remove the operatingSystemName=Windows&operatingSystemVersion=10.0 while requesting

I beg you guys pardon, @ghoshben, I've misread your comment. @TehTux your PR seems to work fine. It needs a few adjustments and might not work forever, but will suffice for now.

ezu64 commented 5 years ago

Raspberry pi3+ libreelec9.1 works fine with new fix in sd with series like The Grand Tour all episodes. There is some problem with movies. I’ ve no sound track if inputstream is set auto and only german and english set manual. However I appreciate this fix found in a little time

ghoshben commented 5 years ago

lets what peak3d is upto he is one who can help bypassing vmp

Paco8 commented 5 years ago

I'm using a nvidia shield and I still can watch movies and shows in HD. How come these devices haven't been affected by that change by Amazon?

aers commented 5 years ago

VMP is only implemented in ChromeCDM. It's a stopgap measure on the way towards true hardware DRM support in ChromeCDM, tbh.

Varstahl commented 5 years ago

lets what peak3d is upto he is one who can help bypassing vmp

There's no bypassing VMP, short of cracking the Widevine.dll.

I'm using a nvidia shield and I still can watch movies and shows in HD

When you have google approved hardware chips installed on the device for DRMs it uses hardware decryption/decoding. Basically gives the encrypted chunks to the chip, and the chip sends the video data straight to monitor, bypassing the OS and the software. PCs don't support that, and with any hope they never will, no matter how much they're pushing trusted computing, but that's another story.

peak3d commented 5 years ago

I would be Ok if they burn something on silicon instead annoying devs with workarounds which will never be secure enough.

Varstahl commented 5 years ago

Yeah, in theory it would be dandy, but then again we have a varied degree of negligence to incompetence, and a set of engineers who don't believe side channel attack vectors should be accounted for… no matter how you slice it, it always ends up in a shit show.

Dnkhatri commented 5 years ago

Well if I am not wrong the pirates were getting the web streams using similar techniques that these plugins were doing. So getting the high quality pirated content might not be an alternative for many either.

Varstahl commented 5 years ago

Actually no, the "pirates" were using different techniques that provided people with a better quality than our plugin could ever manage, because they didn't have to deal with the Widewine charade. It's pathetic, but that's DRMs for you.

ghoshben commented 5 years ago

@Varstahl I used modified inputstream to download from amazon with untouched quality (same as ntb) , as my internet is slow and scene group dont upload regional movie , now I ve to be happy with 480p

Varstahl commented 5 years ago

@tonywagner I have no idea what he's talking about, but for the SD videos you can manually apply this simple patch.

ghoshben commented 5 years ago

@tonywagner that was offtopic out of the scope of the discussion.

ghoshben commented 5 years ago

@Varstahl from yesterday I found no 1080p amazondl thats why thinking they are affected vpm enforcement

alitteration commented 5 years ago

is there going to be a way to crack the VMP or bypass it or maybe apply a hack to skip the validation process?

aers commented 5 years ago

Sure if you want Google to send their lawyers after this project

Varstahl commented 5 years ago

is there going to be a way to crack the VMP or bypass it or maybe apply a hack to skip the validation process?

Technically possible, but the distribution of such a thing would be gray area. Technically legal, although it depends on the local legislation.

Given the cyber/legal bullying that generally ensues such things, most unlikely.

Honestly, we'd have a lot less trouble mass contacting Amazon to make them revert the mandatory VMP validation, but then again it's not even clear if they're in on the act, so…

alitteration commented 5 years ago

Honestly, we'd have a lot less trouble mass contacting Amazon to make them revert the mandatory VMP validation, but then again it's not even clear if they're in on the act, so…

I also agree with that, if someone could contact Amazon and explain how the whole VMP validations led them to not able to stream their movies/TVs on certain devices and the downside downsides, maybe they would consider it.

ghoshben commented 5 years ago

any update ?

Varstahl commented 5 years ago

There's no update to be had. Google won't sign Kodi, we can't bypass VMP, we can just use the SD streams for as long as we can. Amazon reached their goal, by having less bandwidth used and as a direct result it sold more Firesticks, Google's happy to have put another wrench in the works, so here we are.

ghoshben commented 5 years ago

just like wvdecrypter by peak3d he might able to bypass or hack VMP, and litarary prirate group are till getting 1080p and the paying customer have to depends on pirates to get the hightest quality video , what a shame on amazon

aers commented 5 years ago

To bypass VMP you need to patch the CDM and I'd expect legal action from google if you tried to release something like that.

ghoshben commented 5 years ago

google unlike other company normaly dont take legal action usless u pissed the off. and kodi is decrypting only 1 frame so its wont pissed them off I think .

Varstahl commented 5 years ago

Bypassing VMP means bypassing a good chunk of the DRM, which, depending on the law you're subject to, can mean:

Yeah, no, not gonna happen. Even I, stupid enough to just do it, wouldn't distribute it, ever.

ghoshben commented 5 years ago

wvdecrypter is already bypassing widevine till they dont say anything ,

peak3d commented 5 years ago

wvdecrypter does not bypass anything. From DRM perspective it's doing exactly what the licenses allow.

ghoshben commented 5 years ago

@peak3d which means HD streaming of amazon is no longer possible , I had only last hope on u

aers commented 5 years ago

Well, maybe its possible to use playreadycdm.dll from edge canary (edge chromium), since it has the same CDM adapter interface :^)

But you have to use Amazon's playready API, of course.