Audio/video stream recording forums (http://stream-recorder.com/forum/index.php)
-   Video stream recording (http://stream-recorder.com/forum/forumdisplay.php?f=4)
-   -  

I downloaded NF videos in HD, I can play off line,need a little help W/.key file

(http://stream-recorder.com/forum/showthread.php?t=16825)

ItsAngel 09-09-2014 10:11 AM

Re: I downloaded Netflix videos in HD, I can play off line,need a little help W/.key


 
Quote:

Originally Posted by BlueCop (Post 70388)
They use the same Key ID. It is the key identifier and not the key. it identifies the key it was encrypted with.

The same content(movie or specific episode) was using the same keyID in the files. So that indicated they were encrypted with the same key. That is the whole point of what I have been attempting.

The decryption could be failing because I didn't implement the IV counter for AES_CTR correctly. They use a 64bit IV. It is expaned to 128bit by padding. I am not sure I did that right.

I thought maybe we could get the apple media play to play it correctly. The "#EXT-X-MAP:URI=" value needs to be changed to the name of the local video file UVD downloads. It is actually pointing to data embedded in the file.(length:2067 @ offset 0)

the "#EXT-X-KEY:METHOD=" value of ISO-23001-7 indicates a CENC(Common Encryption) for the video. I thought maybe we could bypass the key delivery by changing the URI to the local key file. I could never get it working. I am not sure if I should remove or change the value of the keyformat.




The files also have header values that indicate wedevine(google) drm support. I really think this format is going to be used in their future for a while.

Edit: I'm an idiot. I misread the Kids. It is actually incremented by 1. The decryption was simply failing because the key was wrong.
00000000-03C1-23FC-0000-000000000000
00000000-03C1-23FD-0000-000000000000

I was trying the same thing as you. So do you think by changing that key to be the same we could get the file playing in UVD. That's ultimately what needs to happen, if we can get the file playing in IVD then we can decrypt it.

BlueCop 09-09-2014 10:59 AM

Re: I downloaded Netflix videos in HD, I can play off line,need a little help W/.key


 
We would still need a program to decrypt it. Apples player can do CENC. mp4decrypt might work but that hasn't really been confirmed.

BlueCop 09-09-2014 01:18 PM

Re: I downloaded Netflix videos in HD, I can play off line,need a little help W/.key


 
Does anyone know more about the video and audio profile values?

Values with Fairplay DASH Enabled
Quote:

@{"video":@[6,7,8,9],"audio":@[24582,24588]}
Values with Fairplay DASH Disabled - HLS streaming
Quote:

@{"video":@[19,16],"audio":@[24584]}
contentProfiles with nfdrm quality tweak(also disables fairplay dash)
Quote:

@{"video":@[19,16,17,18],"audio":@[24584]}
so it inserts 17 and 18. This doesn't seem to work though.

Does anyone have a list of content profiles? I was going to play with modifying these but wasn't sure what to use.

BlueCop 09-10-2014 06:25 PM

Re: I downloaded Netflix videos in HD, I can play off line,need a little help W/.key


 
I found some more information...

the fairplay streaming key url is modified by UVD. The original looks more like this.
Quote:

skd://netflix/AAAABAAAAAAD0WX938O7NZ/lEP/7WDg6urvmT5yjzMeLP/WcEJWnvzxNb6M=
the value is a base64 encoded data from data in the pssh(Protection Specific Header Box)with a system ID of 0x29701FE43CC74A348C5BAE90C7439A47 in the video file itself.
It also retrieves an application certificate signed by apple that is some how used in the process of retrieving the key.

For the the old playready HLS streams I think the decryption key is actually stored in the video itself in an encrypted envelope. I don't know the details of how that works though.

WHOOKIDSON 09-11-2014 06:11 AM

Re: I downloaded Netflix videos in HD, I can play off line,need a little help W/.key


 
someone post a sample along with the key and I'll see what's up

@ItsAngel .. what's going on man? long time no see :)

BlueCop 09-11-2014 06:33 AM

Re: I downloaded Netflix videos in HD, I can play off line,need a little help W/.key


 
WHOOKIDSON: what are you looking for? Can you get the new fairplay keys? the old play ready is easily available. If you blank the MediaServer Validation policy and UVD downloads the correct key. You can also grab if from memory.

I wrote a little piece of code to verify the Content Key against the KeyID with the playready header checksum. This will allow you to know if you have the correct key for a given KeyID.

I have been using it to check for correct key responses.

Code:

from Crypto.Cipher import AES
import base64

def keyChecksum(key,keyID):
    encrypter = AES.new(key, AES.MODE_ECB)
    encData = encrypter.encrypt(keyID)
    return base64.b64encode(encData[:8])

The only thing that is post-abled from UVD from the new videos is the mangled key url from the original "skd://netflix/" value. Like I said that is just a value from the pssh box atom in the mp4. It is in the clear in the file. It is drm specific info to get the key and not the key itself.

Do you know how the streaming key delivery functions? I hooked into to several functions to follow the processing of the "skd://" fairplay response. The response was rather large.

BlueCop 09-12-2014 11:19 PM

Re: I downloaded Netflix videos in HD, I can play off line,need a little help W/.key


 
I can see the fairplay license responses but I am not sure how to parse or process them to get the correct key. There are other ways to get the content keys though.

I wrote a tool to parse the mp4(dash/piff/cenc) files originally to decrypt the files. I added the option to check a content key with the header checksum and key id. I also added an option to recreate the original m3u8 with just the video file. It parses the sidx atom box to get the correct offsets and the pssh box for the sdk:// value.

my decryption is broken though. I am still trying to figure out the problem exactly. I think i am doing something wrong with the iv.

mp4decrypt works to decrypt the files though if you can get the right key. You need to specify the track id and key to decrypt. I still want to get my script working correctly.

anyone who might know how to properly process these fairplay responses. drop me a pm. I am having trouble figuring it out.

henryperu77 11-20-2014 01:20 PM

Re: I downloaded Netflix videos in HD, I can play off line,need a little help W/.key


 
Any news on this?

Kii-lon 11-24-2014 01:22 AM

Re: I downloaded Netflix videos in HD, I can play off line,need a little help W/.key


 
Wow you guys...I never thought that you all were able to rip Netflix videos! Awesome job!

I would like to add to henryperu77's post and ask how the progress on decrypting the Netflix videos
through the various different DRMs that you all mentioned?

From what I read, I'm getting the feeling that non of y'all aren't able to download and decrypt the HD videos
on Netflix which is a shame...but are able to decrypt the SD videos which is alright.

You know what would be nice?
A way to do this, somehow or someway, through a computer!
That is if there are possible ways to do so...

I don't have an iOS device so I can't do anything about this...yeah.
Though it's possible to use an Android emulator on a computer but I doubt there's a way
to download/decrpyt Netflix videos on the device from what I read...

I don't know, but I would like to ask a simple question.
To BlueCop, if you're still on these forums (unlike Enrud since he hasn't replied in months unfortunately), do
you have any news/updates on the progress of decrypting netflix videos?

It would be nice if you can explain any new progress on this interesting topic! =)
That is all and i'm off!

ItsAngel 11-24-2014 02:48 AM

Re: I downloaded Netflix videos in HD, I can play off line,need a little help W/.key


 
Quote:

Originally Posted by Kii-lon (Post 72261)
Wow you guys...I never thought that you all were able to rip Netflix videos! Awesome job!

I would like to add to henryperu77's post and ask how the progress on decrypting the Netflix videos
through the various different DRMs that you all mentioned?

From what I read, I'm getting the feeling that non of y'all aren't able to download and decrypt the HD videos
on Netflix which is a shame...but are able to decrypt the SD videos which is alright.

You know what would be nice?
A way to do this, somehow or someway, through a computer!
That is if there are possible ways to do so...

I don't have an iOS device so I can't do anything about this...yeah.
Though it's possible to use an Android emulator on a computer but I doubt there's a way
to download/decrpyt Netflix videos on the device from what I read...

I don't know, but I would like to ask a simple question.
To BlueCop, if you're still on these forums (unlike Enrud since he hasn't replied in months unfortunately), do
you have any news/updates on the progress of decrypting netflix videos?

It would be nice if you can explain any new progress on this interesting topic! =)
That is all and i'm off!

We actually were able to download AND decrypt HD Netflix movies/tv shows. But it appears that Netflix caught wind of this and since then stopped allowing HD streams in a decryptable method. The SD streams can still be downloaded & decrypted.


All times are GMT -6. The time now is 07:01 PM.