On this fascinating Wiki, a group of hackers are meticulously reverse-engineering the TiVoToGo DRM and finding ways of subverting it. They've put together a command-line app that breaks the DRM, which means that an easy-to-use graphic tool can't be far behind.
TiVo owners, rejoice! These folks are about to make your TiVo way more useful than it was yesterday.
TiVoToGo is the feature TiVo added in software release 7.1. It enables transferring video off the TiVo unit to a PC over a HTTP connection. You can access a rudimentary web interface at https://tivo:MediaAccessKey@your_tivo/. TiVo's official TiVoToGo website is here http://www.tivo.com/togo.Link(via Engadget)
It looks like MPEG I frames are the only thing that isn't encrypted in the tivo file. It looks like a combination of Blowfish and ElGammal encryption (what's the evidence for this?). Is it a block cipher, or a stream cipher? Clearly everything we need to decrypt it exists. I would guess the "fingerprint", "salt", and MediaAccessKey are needed? Is the MediaAccessKey the public key, the fingerprint the private key, and the salt is used to maybe XOR the stream first? Or is there a nonce that gets used to initialize the cipher?