View Full Version : An idea for a new feature for TyTools
Richie
07-09-2003, 11:34 PM
Perhaps this is for JDiner: I'm new to this extraction stuff (and this site), but I wonder, if video streams can be unscrambled as it is being written to a Tivo HD (using the noscramble tool listed elsewhere in this site), why can't it be unscrambled when extracted to the NIC? Wouldn't the same algorythm be used? I must be missing something no doubt caused by my frustration I have. I have 180 gb of virtually useless files that I can't migrate to SVCD to clear my Tivo HD.
if video streams can be unscrambled actually the video is not scrambled, the dtivo scramble the file prior to saving, so the noscramble module is to stop the dtivo to scramble the file. AFAIK there is no tool to unscramble a file.
Richie
07-10-2003, 09:03 AM
Originally posted by bato
actually the video is not scrambled, the dtivo scramble the file prior to saving, so the noscramble module is to stop the dtivo to scramble the file. AFAIK there is no tool to unscramble a file.
I was afraid you'd say that. Oh well, so much for that idea. Thanks. Now, if only I can find ways to just copy the dang files!
newbie
07-10-2003, 10:29 AM
Save you some searching, if you're using a DTivo and didn't in some way turn off scrambling before recording the show you're out of luck UNLESS YOU ARE THE ONE THAT CRACKS THE SCRAMBLING CODE. Depending on the nature of the show you might be able to set up a "wishlist" to find the next showing.
Richie
07-10-2003, 02:08 PM
Originally posted by newbie
Save you some searching, if you're using a DTivo and didn't in some way turn off scrambling before recording the show you're out of luck UNLESS YOU ARE THE ONE THAT CRACKS THE SCRAMBLING CODE. Depending on the nature of the show you might be able to set up a "wishlist" to find the next showing.
Such a simple idea that I didn't think of it! Thanks I'll do that too. But some of the recordings were live events that were happening and my response was, "quick hit the record button" (I love that about Tivo) ;)
Thanks folks. . .
jdiner
07-10-2003, 02:22 PM
I had some ideas on a way around the scrambling but I never built them.
My tivo never scrambled things as it was hacked before i ever got it.
But if someone has some skill with a compiler and some interest in looking into it I think we could work something out.
Now keep in mind that this is not a "good" work around just something that might work for those that want things off and are kind of stuck.
--jdiner
newbie
07-10-2003, 02:41 PM
The quality isn't the same but you can use analog output from Tivo to some type of capture card in your PC. Probably the easiest way to get the scrambled shows off your Tivo.
AlphaWolf
07-10-2003, 03:57 PM
Originally posted by jdiner
Now keep in mind that this is not a "good" work around just something that might work for those that want things off and are kind of stuck.
I am curious, what kind of work around are you attempting?
jdiner
07-10-2003, 04:27 PM
If you look at the source code for some of the noscramble pieces it is the replacement of a few functions. From the noscramble.c kernel module... There is 1 for setup, 1 for reading and 1 for writing.
There is a key that they use for reading and writing that appears to be the key value for the encryption/decryption service. This appears to be the "struct io_scramble *" in each call.
They now basically just force this value to be a 0 (i.e. NULL) as things get passed back and forth. Hence things are either not scrambled or are all scrambled in the same way and unscrambled in the same way. I have not actually done any testing to be able to tell yet.
When the Tivo plays a show it has to read it. When it goes the other way and is recording it has to write it out.
So we modify this module. We keep a list of all of the pieces that all of the pieces that go by as we play the show. So every read-sector call makes a list that has sector-to-scramble-struct linking.
NOTE: This list could get freaking huge and some form of management will probably be needed but we would need to make sure it works first...
Then when we call readsectors for extraction we will send a null in that field or some form of a flag that will force a lookup from that sector to the scramble struct we last saw... and shazam... We should be able extract scrambled streams.
--jdiner
Richie
07-10-2003, 06:25 PM
Originally posted by jdiner
I had some ideas on a way around the scrambling but I never built them.
My tivo never scrambled things as it was hacked before i ever got it.
But if someone has some skill with a compiler and some interest in looking into it I think we could work something out.
Now keep in mind that this is not a "good" work around just something that might work for those that want things off and are kind of stuck.
--jdiner
I don't have theses skills, but I'll pass this thread on to some friends of mine who work with Linux and have Tivos!
JackCd
07-10-2003, 06:55 PM
Originally posted by jdiner
If you look at the source code for some of the noscramble pieces it is the replacement of a few functions. From the noscramble.c kernel module... There is 1 for setup, 1 for reading and 1 for writing.
There is a key that they use for reading and writing that appears to be the key value for the encryption/decryption service. This appears to be the "struct io_scramble *" in each call.
They now basically just force this value to be a 0 (i.e. NULL) as things get passed back and forth. Hence things are either not scrambled or are all scrambled in the same way and unscrambled in the same way. I have not actually done any testing to be able to tell yet.
Greetings all - I am the sorry soul responsible for getting Richie involved in TiVo. I apologise.
But - I was wondering something. Passing in a 0 to the scrambler sort of might imply some sort of "simple" encryption - something like a simple exclusive-or, wouldn't it? I am NOT sure about this and have NEVER dug into TiVo code, but it is a thought that struck me.
If this might be the case, it may be instructive to try (if possible) having the same show recorded with the key a value of 0 and one with it a 1 - then compare the resulting bit streams. If the binary is an exact opposite (ones for zeros in all cases), then it is POSSIBLE that taking the ORIGINAL TiVo key value and (possibly) repeating it in an exclusive-or fashion (possibly inverted) might just do something.
I have to say here that I HIGLY doubt this would really be the case - but what the heck. I had to say something. Richie made me.
Best of luck in any case!
Jack
AlphaWolf
07-10-2003, 07:20 PM
Originally posted by JackCd
Greetings all - I am the sorry soul responsible for getting Richie involved in TiVo. I apologise.
But - I was wondering something. Passing in a 0 to the scrambler sort of might imply some sort of "simple" encryption - something like a simple exclusive-or, wouldn't it? I am NOT sure about this and have NEVER dug into TiVo code, but it is a thought that struck me.
If this might be the case, it may be instructive to try (if possible) having the same show recorded with the key a value of 0 and one with it a 1 - then compare the resulting bit streams. If the binary is an exact opposite (ones for zeros in all cases), then it is POSSIBLE that taking the ORIGINAL TiVo key value and (possibly) repeating it in an exclusive-or fashion (possibly inverted) might just do something.
I have to say here that I HIGLY doubt this would really be the case - but what the heck. I had to say something. Richie made me.
Best of luck in any case!
Jack
This is what embeem, riley, disconnect and myself were working on last night. So far we can only identify one string of numbers thats random. We do know for certain through testing that this particular string of random numbers is not the only step in the process. We are trying to isolate any other possibilities in MFS as well though.
Richie
07-10-2003, 07:29 PM
Originally posted by AlphaWolf
This is what embeem, riley, disconnect and myself were working on last night. So far we can only identify one string of numbers thats random. We do know for certain through testing that this particular string of random numbers is not the only step in the process. We are trying to isolate any other possibilities in MFS as well though.
I don't do C code, but if you need help with a test here and there, I can do that. . .
jdiner
07-10-2003, 09:34 PM
Originally posted by AlphaWolf
This is what embeem, riley, disconnect and myself were working on last night. So far we can only identify one string of numbers thats random. We do know for certain through testing that this particular string of random numbers is not the only step in the process. We are trying to isolate any other possibilities in MFS as well though.
Ah good work then. I had no idea anyone was working on it.
Will be interesting to see what you find out.
--jdiner
AlphaWolf
07-10-2003, 10:01 PM
Yeah, we are just waiting on our lab rat riley to come around :D
keith721
07-11-2003, 04:52 PM
. . . he was creating a brand new aluminum foil hat using Extra Heavy Duty Reynolds Wrap. Something about DTV sending down unknown information in the DSS stream, and it possibly being mind-erasing code for geeky hacker types. :p :p
[ Just Kidding!! Don't *even* begin to take any of this seriously. ]
Richie
07-16-2003, 11:41 AM
OK. So what's the deal. Any progress being made? Or is there no hope. . .?
vBulletin® v3.7.3, Copyright ©2000-2008, Jelsoft Enterprises Ltd.