glossary
terms
- path - the list of locations your operating system checks when attempting to run a command.
- cli - command line you can run programs from. accessed by opening a terminal / command prompt / powershell window.
- widevine - digital rights management (DRM) system developed by google that provides content protection for media.
- playready - digital rights management (DRM) system developed by microsoft that provides content protection for media.
- dev tools - the developer console of your browser. can be opened with F12 or ctrl+shift+c.
- manifest url - url storing information regarding the available streams. typically uses an
mpd
or m3u8
extension.
- pssh - a string of characters used to uniquely identify encrypted content. can be found inside the
mpd
.
- license url - url of the server used for the license request. the auth token is contained in this url or it's header.
- auth token - a string of characters used by the license server to confirm access to content.
- header - an array of data related to your browser footprint and the request you are making to a server.
- cdm - content decryption module. this is the device used when communicating with the license server.
- key - a string containing two sets of 32 characters separated by a colon. the first half is the key identifier (KID) and the second half is the decryption key.
programs
- WidevineProxy2 - browser extension used to retrieve decryption keys of widevine protected content.
- n-m3u8dl-re - cli program used to download encrypted media.
- mp4decrypt - cli program used to decrypt audio and video files. part of the bento4 suite.
- ffmpeg - cli program used to record, convert and stream audio and video.
- shaka-packager - media packaging and development framework supporting common encryption for widevine drm.
- gallery-dl - cli program used to download images.
- yt-dlp - cli program used to download audio and video.
- rsack - cli lossless music downloader for korean streaming services.
additional resources
- videohelp - the main forum for widevine decryption discussion. everything I have learnt comes from here.
- wvg - alternative browser extension used to retrieve decryption keys of widevine protected content.
- widevine-fetch - python script that parses
copy as fetch
of a license request to get decryption keys.
- allhell3 - python script that uses the mpd url and curl of the license url to get decryption keys.
- stream-detector - browser extension that finds stream and subtitle urls for you.
- cdm-project - gitea instance that hosts several repos containing tools and programs relevant to widevine decryption.