VideoHelp Forum




+ Reply to Thread
Results 1 to 7 of 7
  1. Hi all,
    I recently bought one of my favourite TV shows on DVD and Blu-Ray, but I soon realised that even the Blu-ray Discs had 1080i interlaced video on it. It looks horrible and I would prefer to download the show from their website. This got me started reading through this forum. What I have done so far:

    https://forum.videohelp.com/threads/408031-Dumping-Your-own-L3-CDM-with-Android-Studio
    This was very well documented and I have generated a client-id and private key.

    I installed Tampermonkey with the EME logger plugin.
    I installed yt-dlp and downloaded a encrypted video and audio file.
    I compiled mp4decrypt with visual studio.

    Now I am unsure how to continue, sometimes WKS gets mentioned but it seems like it was thrown of GitHub.
    On https://cdrm-project.com and https://tools.axinom.com/generators/PsshBox I tried pasting values I found in the javascript console from which I assumed it was the PSSH.
    This is the first time I am trying to decrypt an .mp4, and I am struggling how all of this comes together. How do I use my generated keys from android studio; how or with which programs do I send my http requests; how can I generate a decryption key with the steps I have taken above? Any guidance is appreciated.
    Quote Quote  
  2. Hi , I'm Newbie here just as you and here is what i know so far ...

    This process goes through several steps and you have made a good progress in it ,but of course there still a lot to learn .

    To get your keys you need the following:
    • A working cdm , which you have Dumped (and yeah cedric8528 did a great job in that thread).
    • A working Script to get your keys (after placing your cdm in the script) , there is wks-keys,widevine_keys and online ones like https://cdrm-project.com.
    • PSSH (Protection Scheme Specific Header):contains data needed by a specific Content Protection system to acquire a license and decrypt the media content
    • License Url , the link to get your keys from and this link can be obtained using dev tools in browser.
    • The Correct request headers.
    • MPD (Media Presentation Description) , which contains data leading to the encrypted video and accroding to what you have said above , you have successfully obtained and downloaded the encrypted video .

    How all of this used ?
    you put the headers in a file related to the script (in specific format) , then when you run your script it will ask for the pssh (some asks for the mpd instead to try to obtain the pssh automatically if it was inside the mpd file as in the case of widevine_keys) and then it will ask you the lic url , and if all good you will get your keys .

    Image
    [Attachment 70339 - Click to enlarge]


    Now for the pssh , you used EME logger which is an easy way and usually return the correct pssh:
    Image
    [Attachment 70338 - Click to enlarge]



    For further reading and methods of how to obtain pssh for different cases please see the following post:
    3 methods to find PSSH

    The rest of info you need can be found in this extensive Sticky thread (see the Decryption section):
    Decryption and the Temple of Doom

    and of course getting the keys can vary from site to site , to see some practical cases please take a look at the following (again) Sticky thread :
    Decryption: The Dungeon of Despair

    After getting your keys , you may want to take a look this thread to see a list of tools used for downloading and decrypt file using the keys you obtained :
    Decryption: The Last Crusade

    a big thanks to A_n_g_e_l_a for the hard work in those 3 threads .

    Note: Some streaming service will allow you to get 1080 resolution videos with L3 CDM and some limiting it to 720p because it requires L1 CDM (which i think will be something very hard to get !)

    Well , That's all i know...till now .

    Good Luck !
    Last edited by thej911; 12th Apr 2023 at 18:27.
    Quote Quote  
  3. Thank you for this detailed answer.

    This truly helped me to understand how CDM, PSSH, etc come together.
    Your screenshot was especially helpful, now I know that I must look for "generateRequest" in the java script console.

    Where can I find the wks-keys script? I found Widevine_keys on GitHub: https://github.com/medvm/widevine_keys
    Which one is better, is there a difference that is important to know?

    Currently I am looking into getting the correct headers, A_n_g_e_l_a's guides and curlconverter seem well documented, I will report back any questions to which I can't find the answer in those guides.

    Thanks for your help!
    Quote Quote  
  4. Member
    Join Date
    Feb 2022
    Location
    Search the forum first!
    Search PM
    Originally Posted by niikk470 View Post
    Thank you for this detailed answer.

    This truly helped me to understand how CDM, PSSH, etc come together.
    Your screenshot was especially helpful, now I know that I must look for "generateRequest" in the java script console.

    Where can I find the wks-keys script? I found Widevine_keys on GitHub: https://github.com/medvm/widevine_keys
    Which one is better, is there a difference that is important to know?

    Currently I am looking into getting the correct headers, A_n_g_e_l_a's guides and curlconverter seem well documented, I will report back any questions to which I can't find the answer in those guides.

    Thanks for your help!
    Use the recommended WKS-KEYS; you will have less problems. There is a link to it in Temple of Doom or here are two bling versions. https://github.com/SASUKE-DUCK/WKS-KEY/releases
    Quote Quote  
  5. Member
    Join Date
    Dec 2021
    Location
    Scotland
    Search Comp PM
    All the above is sound information with regard to decypting L3 widevine encrypted webplayers. Assuming that you have installed Python and the relevant extra modules, there are now a number of scripts on site for various web streaming sites. I personally am a fan of wks-keys script (modified the way I want it) and have written all my downloaders around that.

    However, back to your original comment: I recently bought one of my favourite TV shows on DVD and Blu-Ray, but I soon realised that even the Blu-ray Discs had 1080i interlaced video on it. It looks horrible and I would prefer to download the show from their website.

    DVD is clearly lo-qual SD. However, BluRay should produce excellent results. As good as any 1080p broadcast, so I'm surprised at that comment.

    Using HandBrake (or Vidcoder) as the encoder, for DVD source make sure you set the Filters for Deinterlace/ Decomb/ Default. That will get rid of interlacing artefacts.

    You shouldn't need to do that for BluRay.

    Also, I've seen this mentioned a few times: https://cdrm-project.com
    That URL doesn't work for me (whatever it is). I get a response like: This site can’t provide a secure connection cdrm-project.com sent an invalid response.
    I've tried it through a VPN as well, just in case it's my poxy Virgin Media ISP that's blocking it.

    @niikk470 Which sites are you trying to download from? Are you in the UK?
    Last edited by deccavox; 14th Apr 2023 at 19:10.
    Quote Quote  
  6. What are people using to get licenses since CDRM-Project went down?
    Quote Quote  
  7. Search, Learn, Download! Karoolus's Avatar
    Join Date
    Oct 2022
    Location
    Belgium
    Search Comp PM
    Originally Posted by lvstrtrk View Post
    What are people using to get licenses since CDRM-Project went down?
    you don't have to post the same question in multiple threads...
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!