Audio/video stream recording forums

Attention Visitor:
You may have to register or log in before you can post:
  • Click the register link to sign up.
  • Registered members please fill in the form below and click the "Log in" button.
To start viewing messages, select the forum that you want to visit from the selection below.

Go Back   Audio/video stream recording forums > Streaming media recording forum > Video stream recording
Register FAQ Members List Calendar Mark Forums Read

Reply Post New Thread
 
Thread Tools Display Modes
  #1  
Old 10-28-2013, 02:59 PM
No_Miaus No_Miaus is offline
Junior Member
 
Join Date: Aug 2011
Posts: 11
No_Miaus is on a distinguished road
Default

Decrypting ts files from m3u8


Hello! I'm trying to decrypt a m3u8 that contains a lot ts files. The key (m3u8 files says it's AES 128) is on a php and the content looks like this and there isn't IV (so..?):



The content of that php page change each time I refresh it so i imagine it uses some clock to encrypt it but... What kind of key is it? Should I use wget to get that key to a txt file and then use openssl to decrypt it? Would It be enough to decrypt it or how can I do it?

Thank you

Last edited by No_Miaus : 10-28-2013 at 04:28 PM.
Reply With Quote
  #2  
Old 10-28-2013, 10:15 PM
peterpan peterpan is offline
Senior Member
 
Join Date: Jun 2013
Posts: 553
peterpan is on a distinguished road
Default

Re: Decrypting ts files from m3u8


Post the actual link and someone may be able to help you out...Also provide a better description of what you're trying to do? Are trying to play or record this stream on VLC? What do you mean by "trying to decrypt a m3u8"?! Why?!
Reply With Quote
  #3  
Old 10-29-2013, 06:20 PM
No_Miaus No_Miaus is offline
Junior Member
 
Join Date: Aug 2011
Posts: 11
No_Miaus is on a distinguished road
Default

Re: Decrypting ts files from m3u8


Quote:
Originally Posted by peterpan View Post
Post the actual link and someone may be able to help you out...Also provide a better description of what you're trying to do? Are trying to play or record this stream on VLC? What do you mean by "trying to decrypt a m3u8"?! Why?!
I mean ts files are encrypted.
http://www.atresplayer.com/televisio...102500011.html
m3u8 contains..

#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:12
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-KEY:METHOD=AES-128,URI="https://pulse.atresplayer.com/key.php"
#EXTINF:12.0,
media_b1348000_0.ts
#EXTINF:12.0,
media_b1348000_1.ts
etc...
Reply With Quote
  #4  
Old 10-30-2013, 12:02 AM
peterpan peterpan is offline
Senior Member
 
Join Date: Jun 2013
Posts: 553
peterpan is on a distinguished road
Default

Re: Decrypting ts files from m3u8


Sorry Bro, I can't do much This one will need a REAL PRO

Primero, the stream is geo-blocked! I had to proxy to Spain, and only then was able to view the vid



Segundo, looks like they use some "bad-ass" encryption with multiple key types Moreover, the final token is constantly changing, which leads me to believe you will eventually need to regex this baby

================================================== ==============
AtresPlayer-1/com/hurlant/crypto/%prng/ARC4.class.asasm:332: trait method QName(PackageNamespace(""), "decrypt")
AtresPlayer-1/com/hurlant/crypto/%prng/ARC4.class.asasm:334: refid "com.hurlant.crypto.prng:ARC4/decrypt"
AtresPlayer-1/com/hurlant/crypto/rsa/RSAKey.class.asasm:210: trait method QName(PackageNamespace(""), "decrypt")
AtresPlayer-1/com/hurlant/crypto/rsa/RSAKey.class.asasm:212: refid "com.hurlant.crypto.rsa:RSAKey/decrypt"
AtresPlayer-1/com/hurlant/crypto/rsa/RSAKey.class.asasm:237: callpropvoid QName(PrivateNamespace("*", "com.hurlant.crypto.rsa:RSAKey#0"), "_decrypt"), 6
AtresPlayer-1/com/hurlant/crypto/rsa/RSAKey.class.asasm:305: callpropvoid QName(PrivateNamespace("*", "com.hurlant.crypto.rsa:RSAKey#0"), "_decrypt"), 6
AtresPlayer-1/com/hurlant/crypto/rsa/RSAKey.class.asasm:411: trait method QName(PrivateNamespace("*", "com.hurlant.crypto.rsa:RSAKey#0"), "_decrypt")
AtresPlayer-1/com/hurlant/crypto/rsa/RSAKey.class.asasm:413: refid "com.hurlant.crypto.rsa:RSAKey/_decrypt"
AtresPlayer-1/com/hurlant/crypto/symmetric/AESKey.class.asasm:478: trait method QName(PackageNamespace(""), "decrypt")
AtresPlayer-1/com/hurlant/crypto/symmetric/AESKey.class.asasm:480: refid "com.hurlant.crypto.symmetric:AESKey/decrypt"
AtresPlayer-1/com/hurlant/crypto/symmetric/BlowFishKey.class.asasm:62: trait method QName(PackageNamespace(""), "decrypt")
AtresPlayer-1/com/hurlant/crypto/symmetric/BlowFishKey.class.asasm:64: refid "com.hurlant.crypto.symmetric:BlowFishKey/decrypt"
AtresPlayer-1/com/hurlant/crypto/symmetric/BlowFishKey.class.asasm:84: callpropvoid QName(PrivateNamespace("*", "com.hurlant.crypto.symmetric:BlowFishKey#0"), "decryptBlock"), 4
AtresPlayer-1/com/hurlant/crypto/symmetric/BlowFishKey.class.asasm:847: trait method QName(PrivateNamespace("*", "com.hurlant.crypto.symmetric:BlowFishKey#0"), "decryptBlock")
AtresPlayer-1/com/hurlant/crypto/symmetric/BlowFishKey.class.asasm:849: refid "com.hurlant.crypto.symmetric:BlowFishKey/decryptBlock"
AtresPlayer-1/com/hurlant/crypto/symmetric/CBCMode.class.asasm:134: trait method QName(PackageNamespace(""), "decrypt")
AtresPlayer-1/com/hurlant/crypto/symmetric/CBCMode.class.asasm:136: refid "com.hurlant.crypto.symmetric:CBCMode/decrypt"
AtresPlayer-1/com/hurlant/crypto/symmetric/CBCMode.class.asasm:183: callpropvoid QName(Namespace("com.hurlant.crypto.symmetric:ISym metricKey"), "decrypt"), 2
AtresPlayer-1/com/hurlant/crypto/symmetric/CFB8Mode.class.asasm:145: trait method QName(PackageNamespace(""), "decrypt")
AtresPlayer-1/com/hurlant/crypto/symmetric/CFB8Mode.class.asasm:147: refid "com.hurlant.crypto.symmetric:CFB8Mode/decrypt"
AtresPlayer-1/com/hurlant/crypto/symmetric/CFBMode.class.asasm:157: trait method QName(PackageNamespace(""), "decrypt")
AtresPlayer-1/com/hurlant/crypto/symmetric/CFBMode.class.asasm:159: refid "com.hurlant.crypto.symmetric:CFBMode/decrypt"
AtresPlayer-1/com/hurlant/crypto/symmetric/CTRMode.class.asasm:67: trait method QName(PackageNamespace(""), "decrypt")
AtresPlayer-1/com/hurlant/crypto/symmetric/CTRMode.class.asasm:69: refid "com.hurlant.crypto.symmetric:CTRMode/decrypt"
AtresPlayer-1/com/hurlant/crypto/symmetric/DESKey.class.asasm:70: trait method QName(PackageNamespace(""), "decrypt")
AtresPlayer-1/com/hurlant/crypto/symmetric/DESKey.class.asasm:72: refid "com.hurlant.crypto.symmetricESKey/decrypt"
AtresPlayer-1/com/hurlant/crypto/symmetric/ECBMode.class.asasm:175: trait method QName(PackageNamespace(""), "decrypt")
AtresPlayer-1/com/hurlant/crypto/symmetric/ECBMode.class.asasm:177: refid "com.hurlant.crypto.symmetric:ECBMode/decrypt"
AtresPlayer-1/com/hurlant/crypto/symmetric/ECBMode.class.asasm:244: callpropvoid QName(Namespace("com.hurlant.crypto.symmetric:ISym metricKey"), "decrypt"), 1
AtresPlayer-1/com/hurlant/crypto/symmetric/ICipher.class.asasm:22: trait method QName(Namespace("com.hurlant.crypto.symmetric:ICip her"), "decrypt")
AtresPlayer-1/com/hurlant/crypto/symmetric/ICipher.class.asasm:24: refid "com.hurlant.crypto.symmetric:ICipher:decrypt"
AtresPlayer-1/com/hurlant/crypto/symmetric/ISymmetricKey.class.asasm:25: trait method QName(Namespace("com.hurlant.crypto.symmetric:ISym metricKey"), "decrypt")
AtresPlayer-1/com/hurlant/crypto/symmetric/ISymmetricKey.class.asasm:27: refid "com.hurlant.crypto.symmetric:ISymmetricKey:decryp t"
AtresPlayer-1/com/hurlant/crypto/symmetric/IVMode.class.asasm:374: pushstring "an IV must be set before calling decrypt()"
AtresPlayer-1/com/hurlant/crypto/symmetric/OFBMode.class.asasm:63: trait method QName(PackageNamespace(""), "decrypt")
AtresPlayer-1/com/hurlant/crypto/symmetric/OFBMode.class.asasm:65: refid "com.hurlant.crypto.symmetric:OFBMode/decrypt"
AtresPlayer-1/com/hurlant/crypto/symmetric/SimpleIVMode.class.asasm:143: trait method QName(PackageNamespace(""), "decrypt")
AtresPlayer-1/com/hurlant/crypto/symmetric/SimpleIVMode.class.asasm:145: refid "com.hurlant.crypto.symmetric:SimpleIVMode/decrypt"
AtresPlayer-1/com/hurlant/crypto/symmetric/SimpleIVMode.class.asasm:188: callpropvoid QName(Namespace("com.hurlant.crypto.symmetric:ICip her"), "decrypt"), 1
AtresPlayer-1/com/hurlant/crypto/symmetric/TripleDESKey.class.asasm:301: trait method QName(PackageNamespace(""), "decrypt") flag OVERRIDE
AtresPlayer-1/com/hurlant/crypto/symmetric/TripleDESKey.class.asasm:303: refid "com.hurlant.crypto.symmetric:TripleDESKey/decrypt"
AtresPlayer-1/com/hurlant/crypto/symmetric/XTeaKey.class.asasm:202: trait method QName(PackageNamespace(""), "decrypt")
AtresPlayer-1/com/hurlant/crypto/symmetric/XTeaKey.class.asasm:204: refid "com.hurlant.crypto.symmetric:XTeaKey/decrypt"
=====================================

I think only KSV and few others on this forum may be able to help!

I couldn't even record it using RTMPDumpHelper Probably due ton the proxy!

Good Luck!

Last edited by peterpan : 10-30-2013 at 12:42 AM.
Reply With Quote
  #5  
Old 11-11-2013, 12:19 AM
chap chap is offline
Senior Member
 
Join Date: Feb 2011
Location: Ukraine
Posts: 1,165
chap is on a distinguished road
Default

Re: Decrypting ts files from m3u8


Reply With Quote
  #6  
Old 11-12-2013, 05:45 PM
No_Miaus No_Miaus is offline
Junior Member
 
Join Date: Aug 2011
Posts: 11
No_Miaus is on a distinguished road
Default

Re: Decrypting ts files from m3u8


How did you do it? Explain it please!
Reply With Quote
  #7  
Old 11-13-2013, 12:20 AM
chap chap is offline
Senior Member
 
Join Date: Feb 2011
Location: Ukraine
Posts: 1,165
chap is on a distinguished road
Default

Re: Decrypting ts files from m3u8


Code:
ffmpeg -i "http://geodeswowa3player.antena3.com/vcg/_definst_/smil:assets2/2013/10/25/08D874B3-4B0D-4DB8-844B-1C29D70B1B31/free_es.smil/chunklist_b1348000.m3u8?pulse=assets2%2F2013%2F10%2F25%2F08D874B3-4B0D-4DB8-844B-1C29D70B1B31%2F%7C1384334301%7C4047eaf34d8f8b54a2f3277cc8f4ff44 " -c copy t.ts
Reply With Quote
  #8  
Old 11-14-2013, 12:22 AM
hallucinogen hallucinogen is offline
Junior Member
 
Join Date: Jan 2013
Posts: 19
hallucinogen is on a distinguished road
Default

Re: Decrypting ts files from m3u8


Quote:
Originally Posted by chap View Post
Code:
ffmpeg -i "http://geodeswowa3player.antena3.com/vcg/_definst_/smil:assets2/2013/10/25/08D874B3-4B0D-4DB8-844B-1C29D70B1B31/free_es.smil/chunklist_b1348000.m3u8?pulse=assets2%2F2013%2F10%2F25%2F08D874B3-4B0D-4DB8-844B-1C29D70B1B31%2F%7C1384334301%7C4047eaf34d8f8b54a2f3277cc8f4ff44 " -c copy t.ts
Chap, how do you get that syntax? How to properly use ffmpeg dumping?
Reply With Quote
  #9  
Old 05-20-2014, 07:26 PM
skyDude14 skyDude14 is offline
Junior Member
 
Join Date: Aug 2012
Posts: 20
skyDude14 is on a distinguished road
Default

Re: Decrypting ts files from m3u8


chap thanks for your useful post. can you tell me instead of merging all those decrypted .ts to one big ts we just decrypt each ts file and copy the decrypted ts to diffrent folder ? in another word i want to all those .ts decrypted one by one without joining them .

furthermore after you merged the .ts to one big file why there is not duration shown while playing those .ts ?how to add duration to it?

Hope you help me with it.Thanks



Quote:
Originally Posted by chap View Post
Code:
ffmpeg -i "http://geodeswowa3player.antena3.com/vcg/_definst_/smil:assets2/2013/10/25/08D874B3-4B0D-4DB8-844B-1C29D70B1B31/free_es.smil/chunklist_b1348000.m3u8?pulse=assets2%2F2013%2F10%2F25%2F08D874B3-4B0D-4DB8-844B-1C29D70B1B31%2F%7C1384334301%7C4047eaf34d8f8b54a2f3277cc8f4ff44 " -c copy t.ts
Reply With Quote
  #10  
Old 05-20-2014, 11:26 PM
surya987 surya987 is offline
Senior Member
 
Join Date: May 2014
Location: India
Posts: 280
surya987 is on a distinguished road
Default

Re: Decrypting ts files from m3u8


SKY... why you want to decrypt one by one.... its useless and really time consuming....FFMPEG download all ts files and than join auto to one ts playable file.....
Reply With Quote
Reply Post New Thread


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT -6. The time now is 07:44 AM.


Powered by All-streaming-media.com; 2006-2011
vB forum hacked with Zoints add-ons