let me say at the very start that i'm not really interested in the keys to the specific video in this thread, i'd like to know what to actually do to get them because it would be a bit ridiculous to post a thread here every time i want to download something from this service
and i know i already opened one thread months ago about this service but it didn't really help because i didn't have a working cdm back then so i couldn't try it for myself
now i do so let me give whoever can help all the info i have so far:
EDIT: forgot to mention i'm using wks-keys
hrti.hr test account: username: samo.loi@yahoo.com, password: Evolution169
hrti doesn't really have links to their videos as far as i can tell, so you'll have to enter the video name into the search box in the upper right corner
video name: Plavi cvijet
mpd URL:
PSSH (2nd pssh parameter in the mpd file):Code:https://cdn1.oiv.hr/hrtvodorigin/cd14a933-9b0f-0110-a1b2-cc173b542e19.smil/manifest.mpd
License URL:Code:AAAAYXBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAAEEIARIQ+O1Gd1tjPGuWqyI2hrlyuhoIY2FzdGxhYnMiGCtPMUdkMXRqUEd1V3F5STJocmx5dWc9PTIHZGVmYXVsdA==
headers.py (license file (cenc/ POST) copied as cURL (bash) and entered into curl converter):Code:https://lic.drmtoday.com/license-proxy-widevine/cenc/
in this case i had to remove the data parameter (also from the request (, data=data)) since l3.py gives me encoding errors about latin characters when running it, but even with a different video where i left everything as is and there were no encoding problems i got the same problem which is:Code:import requests headers = { 'Accept': '*/*', 'Accept-Language': 'en-US,en;q=0.9,hr;q=0.8', 'Connection': 'keep-alive', 'Origin': 'https://hrti.hrt.hr', 'Referer': 'https://hrti.hrt.hr/', 'Sec-Fetch-Dest': 'empty', 'Sec-Fetch-Mode': 'cors', 'Sec-Fetch-Site': 'cross-site', 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36', 'dt-custom-data': 'eyJ1c2VySWQiOiIyMjI2NDkiLCJzZXNzaW9uSWQiOiJmSU5zSFVHQlRXd0E2T0t0VzMtVzJPN0lneTZ6TlJzY2l1aU1WWmk4XzhwTHh4LXdlRkFFdFFXR1FkandlRWZZNnVKWkJoZG4zbHJELUpJdnNORURidy4uIiwibWVyY2hhbnQiOiJhdmlpb24yIn0=', 'sec-ch-ua': '"Google Chrome";v="105", "Not)A;Brand";v="8", "Chromium";v="105"', 'sec-ch-ua-mobile': '?0', 'sec-ch-ua-platform': '"Windows"', 'Content-Type': 'application/x-www-form-urlencoded', } data = '\bîY\nW\nA\bøíFw[c<k–«"6†¹rº\bcastlabs"+O1Gd1tjPGuWqyI2hrlyug==2default–´\nðŸeã³¼ô£i÷<1õ º¥î™08÷Å*ôB€\nlicense.widevine.com¹Ì†‹3:/w*ŒÀćÌ3‘Ÿ¤XÖšš¦ƒ:ˆ`ÈŵmϤÔ]d\xA0c\'NYV`pQÄŠ©^iÂßr|GDôÍp£¹VŽë1ÿs¢ÚÛ#»ÊÜ×·.²©\tÁâ&Ü\xA0ƒ“¿Ì¶³?ˆÌØuuÓ"⡈Ûz|ñ.ú²‹©\tTƵ\rs?e!ΘÀÎKûö¶iHá»$u=@F¹&ÒýíGn¹$ÇÝ%°0›æ&ˆ\xA0šý=íé=´$¡±¦ƒe\0ÒçL`‰$×yDø|;¤Ëʧ›Ì{hE@“=Óos£<‹wQEÀÒh\xA0"¡€çO¦65#mßä#˜‘6\b…-\'v\0ŠHL*BÃ)"K+GöÖ:¸–â¼\ný$fó¡ÊŸ²¯Ÿì˜Ú£…%É?Ý+¼o7¢žf¬¦õÐyç6šaˆ½»ìiƒÂ¶ë^Ï÷gdwUóó–ýs«³meÇ\n\tstœ\t^âdGK™d\rùÑÎlãq¦™¬ª:™^XXP±gÀÅCÜ[U«ž}£TKs§×¬MÍ¢ô%0cV˜<Y5]’«þFo‘½Hã;J"ƒžÈpU6ÓA,:Ý´-Ñ‹H˜ñX¤H¤Âª.7î|z¹»ü`"Ö1P&йÄTÄ`o‚zlÌâf×BÀ:àŠ]²ç&¼Œ…Ä9ì=4pŸÁX¯g,CÆÀ0q4ˆ‰®|tøo.‘&X/\\wîm9_¦‰ŒK¿›ÃAÒ£ÚÕ%ïèbÉ5nh\t?Åx¦-Im—”A¾óÂ?\n»3\0g$׎VKÉuá$RX];HÎ¥\'EìA*K‡œ•Ô\r¹‡v"RÒ:—\'ÿBËýƒÄ…>ÿoÐî\\¯˜èMèîì½ÖtÑ.r¹ÏÞÀ›E8èÕ!+fé×Ù‹—Ì@\\‰©!ËÈ,=_*.ˆrûU4\xA0bÂn¿\rUVã§b(ÌTÖò\tÒÞ¨/áºmíaR¤9˜3KN»/æAÁs6uX³ˆy¨¯z¢«ò7¸rš/•¿³zKÑã½.&/\nBØ)[N>Kî’\tÒ\fã7‘\xA0ÚieÜ5€ij+ê¥zi§$.Êȵ¥±«!Ƈq3®ÊV9hÊnËWnC¢b6ˆpRÕRyÿ+*\t”êýõØÊ.›zšåŒâ\foméèÕ±D·Í¹@Ž9æÀÇŠp«nëè¯×]b ³Æ¼ÐlÔ¾J¯e9nmK|È¥çœ5ê,í=öÀFï´ƒØ\r—†,³AœäBå`ƒy)é1\\kOÝ\';ZS?lÄ™ÛéPòâ£lÃ{“w¦üJÈDH~3¶)knÿù´8¹ÏUÌ\r¤.\n*Ê\\ë;Á$(»MÒáycZØ‹)Ý*„ã˜Id"á,#Q“ó”(îJc\xA0oëz*²ÖrG€â2F‰9Lwv³_N-÷ÐþF4•5‡„2H3ÀW¬äÑ@(2žÎ¸”sø¦ÜÍ\rQ#^\tÍ›íj²«2\bZñ/©øEíyšó»Ãê)¢\0úYäfW*\n>0•K…·MÆ[™†¨…\tdãI\täÉ´ÄŠÜ:¯âR¦kñHÃNYÝ<¾ÎþâÓxYT¯Š`¼¸|FHsÑïevÛÎÍó–¨wé?Gмš+U5\f÷2«Ýù\tuʯ£«Î5Qø>øó¿˜Ë€6\0B$î_‡4ž1:´D*ÞúÄ–\tgê¬zñüŒnµ 0¤B“ý¶ËL%ô"ž%xº\fGfûÕl“¹ÿ¤Ã•LyeT;ü¨ihÉQ¹£kÔ³\'C~i\0\rŽÊ(nåe¿E1zFÁl2÷õ\tF\bo5îùˆm²%ÐH¥×t1s¤^™\fÿʱ±Z\t=.ÌLç1؆hŽöÂ܆‹ðѺïRÀæÒȘ…í-èÂ1¼»7»P\\˸¼\f1h¦Ü»^´“R¤vÿC*œã1kæ½ÅÃÝŠ!årv•.`Ű…ЗìžEý4*P¢Ä\xA0_ªBN"´ãB½|ÿ[@…‹ÇyžR2mÛ!Ýd,ô·M%\'Í9|\nF±5þ³-FpÌê¬\0iV2\boH›â¦¦§ù{ûùÙ톊G=\0ŠÈ“¾Z¡88pÕ9¥‰\n„qR¢¢7™ßæY €LNž;Rgà“N›,õž™Àšë"æÉ^ÌX§Æ8Å™6×äNB^?>ˆBò³=ßz;qŠWe¢Öí²¥H&}8è‰I³6ñŸ†â„Ú/«ääE²1«*mòÌê*Ïe3®Õ€,¯2Ôm§‚à©}‡y³9ÿ°ô&Y¯÷ÓìT4\rG?`ÊüEÍùô8ùø}›*–2š@k̯šëß2ȳäÍA«A¿%òÙ.Py¯èHä8Z<¿/M‡_ñîk‚¿pã×Ð>èGŸ1®×*æzcçþ\t¶¦üº1Œãs‡s•õR¶¨|8"€ÇvÛVîñÉv¥\r%ϵŽÑ`w³¾upgä±0’i¸2i±×]½5=óÈáÓ¿üŽð*h͸]ûã’’4º¢–š‚!ÌU3tH3±ˆ]ecÔ¼‰iT°BRD\'‰ÀóÊö±œ÷·Ëÿ&æ±™DÁŒ6ÄÅŒ>“?g{Ûò¤§FNSlÔø×\n©KO¢›Öœv³%?ñ¨¤óîÀ7LxZH¤|×a?QL¤|bNrÅv/¦h‘[!$Þ8“ë{Û…‡3Ç8‘D!óIlkIŒ ÿ‚5ÙÁ\xA0k–‹¬{@Î½Š¤ˆŠ„xd2Uá ^”,{ÝÈuCrTÌ\'\n7‘ß*ØR~BD軆q`PÕkUã—¶æ6OI€1tnŸJ¡|á,ð¢\b¢¥VRÍ‘ÝPÛ*~vèõûi‡Ú¿4kÌvgtÈÛ”|{‡÷YdGaó"ŸŽÕc\n›ùT4wxRZЏ\xA0eO¢V„mÐmK‹Ä³MYý{óDR¼>ÅsÚ¼|´ùYK´†¬_€úqöÆ©â!†5ËÞÆ9¶gX1Í8LÍì¦ÝwÖÒ´§Úúæ0³YØ‚¸v8~îiC6þ¦r#1[—½J1\bÍÁA‰@šKiHì2Ï¥©‚5I\f\nÉÁ—41›Ny$AÓ½#Œ÷5Èo±GàCGŒf›-š Øß–Ošq°—]o¬Fl®û¬\fúS§Ä@°¢¶ü#lÛlÀUg32ÄëDz¥ˆŒMYêIîƒ]|9P2Jœw\b¤xîÅFÓ0°ÍûÛ©Ú‘€u`£`Yð$üÿ¼Í×Íó‘lö*#ý3i¯¿ÓN™}Ø\\±sÿŠ+Ùúa›fqðõ"ÔsÌ’tR§÷\t\\BU¿–èò“¤ÑñR¼þxš\'ð-‘îÏ´ˆ<\\Œ–;…w‡„² š¯ïsá^\fÉäãJÕÁÒïÀ4î&ze®Ucb}UÑâÀ^-.táK›Ãƒó\níŸ »|\r±©¹\0^\0¡5ðÆ\tÜ[Ô\xA0™,}ãz:*«·3]^;*¡y•£ˆþzÀyÜB•à*²øþŠ‚€"ËZL€æ{ ÄøÚVãm˜ÐsÓy„Ü×)1«¦$)ÚÛ)¥»ðÖ©ÒÔ3ö¢VøžŒ€ÌV>¦ÝSð@êœy`I³«\'\fóçxÖÙ©Tù\\Œjå\f_«ð¼v§še"÷ɿ΃ÇT\bêI©ÚU{»…AÙ`£ó:ŒÌFþÙ3X¸œsc42—ÀŒcö/Ðqƒé“’6ðB,?\xA0ÕŽÑí1¸§‹Ak·X™QBÅ—ßá–.bi÷¯3¨ÄÞ¶ ;MÐ<†Ä89”£Ã?þà e¹v‘Wë`8îÎ ÃÑôŽ{\rȧSéGùfP°\n}bšêñ5Â×ãiy„¹,‘¬ºÛéÜÛÅ8§mœ"…jøèZÊb•9ÖØ3Qo-E>%Ù°2ž\féïsʨ+ß3÷ì¦IT°ÄŸ%¢[4dÙ,Tˆ‘*°Tú”òÿ(M½Q»+«>Ð\fõ®£ˆ\nA/XZ4¸£¯ÇsjÍ»[d—DHå·ï#åVÏòr¤k7uÄV›\\áV3ÕíÍâñy\fUný¡PôäÑ(ÔáôŠÑpÈxþ«ky ´g€&eZñÿPºß|ÆÅ<æ?§ç3&j¢\nÃV*q‚#\0´”\nô÷ÏÅ–\xA0ò8š\bºžsA‚½À‹½ao×Tñƒ±˜¿4åhÕó:±>ñ\\xCqNúäcçGFû}ë²t=æáË«äYA4{HT\tµß-¤œÍ\fÂ.v§É-KªX\nøû’Þ¿ï6B)ù*U´³"íŸÏáH…Ù$‹zTõ·d^}ÐÁæì#Þ\\õ\f\'Möñ™aÏljwì<û\nX\0\t<Öèýä¯eIÒx!³\nãÏyí± ‡‡FÎh*ïÚz»¾l7&¤Læy\tZ)¤3\xA0y¬÷R~¼äÄbž°û„+l,µ”hõ*iO(ü£\'qŠ×‰wæ/»¯\xA0j¯Ì‘3M–\b?‘‚õ/r©h“Çͼºâ~[ä_\tŽIz›Ro"ÝÎ "Ȧñ–0\bÑ\fˆÇTAô›@¶Û`\tÛ\b`÷j|)W¦¸,êé^ÑÓ™ó‡òUDØÌ+Üîq;È~2Ö¶ÁtmËUž}¸˜·Í…4¨å\'üäTP²iÃ$ÓO/dµ.\tøl2ä‘οlEjŽ®_JxNhÖFwþEظšîWé°Ï¡)ÞWIUe@ÞÔEÇSýï*:åcvÚ\n騆+«›ëEprA–é\tëÓ/l:üÇ%ßb?Zyü¸wÖIƒ‹\nZÕ-C÷¹½ð)Ž¯Ê™)™5”ðu›êw\\:´¤"\xA0WHÈ롤gš3b)2™*€pé€ä>Úo¨@v\rµ‰?ãÜ™\0½±ˆÝrȬU_`¨)VÍ’§&òQÅÄ)ïC ñ½Íæ*ŠØú…Â(o¸Íçš%ûÄzÿ˜¢itKÏ‘ôFçL·ÿ]Wâxˆð¡{ϱàoɸ;VÓØpOUA„Êt8ÀëæÈ9¢*t8Ó‚ŽfËÞÑXÛà†Sêàs¥&?ÊGGÞºµŸ‡Dò=ÅíöƒÏË‘…´ZIŽžUý`3-~•~¼-8ì0½\'#j¯PÕ‚4‚íí@^¯`‚NHkAIn\tA$/Ú±½ÇÆ…i³Ž÷]L~Íð{,u´€…ZK®ˆ»„\nùh®h;[R^\0€ÙHÒ_þ>Æ{ª0,Õs…Ä}*¾¿2véí«ž[…ܼ‹·\fø£v‚/"•–1Á¸Î·)dYÞ…œéaÁ7|×%_‡»…~(ÃKZL3FÁýHÆ·í…pÞšD̪ëíÂÞý¡’b¹N§J\0\0\0\0\0\0\0\0N‹b÷+E÷â' response = requests.post('https://lic.drmtoday.com/license-proxy-widevine/cenc/', headers=headers, data=data)
just to test if the cdm is dead immediately after this i tried downloading and decrypting a tv5mondeplus video and it worked fineCode:D:\Utilities\WKS-KEYS\pwdv\L3\cdm\cdm.py:260: RuntimeWarning: Unexpected end-group tag: Not all data was converted license.ParseFromString(base64.b64decode(license_b64)) Traceback (most recent call last): File "D:\Utilities\WKS-KEYS\l3.py", line 25, in <module> correct, keys = WV_Function(pssh, lic_url) File "D:\Utilities\WKS-KEYS\l3.py", line 21, in WV_Function wvdecrypt.update_license(license_b64) File "D:\Utilities\WKS-KEYS\pwdv\L3\decrypt\wvdecryptcustom.py", line 58, in update_license self.cdm.provide_license(self.session, license_b64) File "D:\Utilities\WKS-KEYS\pwdv\L3\cdm\cdm.py", line 275, in provide_license session.session_key = oaep_cipher.decrypt(license.SessionKey) File "C:\Users\User123\AppData\Roaming\Python\Python310\site-packages\Cryptodome\Cipher\PKCS1_OAEP.py", line 167, in decrypt raise ValueError("Ciphertext with incorrect length.") ValueError: Ciphertext with incorrect length.
pwdv in the filepaths is pywidevine, i had to rename it because there were errors popping up, and now it works fine, at least with tv5mondeplus
any help?
		
			+ Reply to Thread
			
		
		
		
			
	
	
				Results 1 to 5 of 5
			
		- 
	Last edited by ampersand; 3rd Oct 2022 at 22:25. 
- 
	have you tried the information suggested in other threads? 
 https://forum.videohelp.com/threads/404994-Decryption-and-the-Temple-of-Doom/page2#post2658694
 
 the standard l3.py works for hrti if you use the information in the linked post (especially the license url)
 
 also note: the dt-custom-data token is only valid for about 60 secondsLast edited by ElCap; 3rd Oct 2022 at 23:46. 
- 
	got the keys, finally 
 for whoever is also looking for a solution:
 
 license should be:
 headers should be:Code:https://lic.drmtoday.com/license-proxy-widevine/cenc/?specConform=True 
 maybe the trailing comma from the curl converter was the problem(?, though I doubt it), so remove that if you haven'tCode:headers = {'dt-custom-data': 'custom_data_string'}
 
 and this line:
 changed intoCode:widevine_license = requests.post(url=license, data=wvdecrypt.get_challenge(), headers=headers.headers) 
 I placed the license as a string into the l3.py file, got the data string(dt-custom-data) from the license POST request through curl converter, copied it in place of custom_data_string, saved l3.py file, ran it, entered pssh when prompted (got it from the mpd file) and voilaCode:widevine_license = requests.post(url=license, data=wvdecrypt.get_challenge(), headers=headers) 
- 
	Maybe this line in your headers.py 
 
 response = requests.post('https://lic.drmtoday.com/license-proxy-widevine/cenc/', headers=headers, data=data)
 
 was just too much?
Similar Threads
- 
  WKS-KEYS helpBy Gruchemuche in forum Video Streaming DownloadingReplies: 1Last Post: 2nd Oct 2022, 09:55
- 
  problem #2 - getting keys for hrti.hr videosBy ampersand in forum Video Streaming DownloadingReplies: 12Last Post: 16th Aug 2022, 08:39
- 
  How to get the keysBy 10362227 in forum Video Streaming DownloadingReplies: 2Last Post: 18th Jun 2022, 21:25
- 
  Can anyone help with getting keys?By fisfisa in forum Video Streaming DownloadingReplies: 8Last Post: 1st Mar 2022, 01:33
- 
  Problem with [MPD] (mpeg dash manifest) - HRTiBy SamoMalo404 in forum Video Streaming DownloadingReplies: 0Last Post: 21st Jan 2018, 00:02


 
		
		 View Profile
				View Profile
			 View Forum Posts
				View Forum Posts
			 Private Message
				Private Message
			 
 
			
			

 Quote
 Quote