RAV file format - entropia/tip-toi-reveng GitHub Wiki

This page is meant to collect information about the RAV file format that is being used by the new tiptoy with audio player (Ravensburger 00700 - tiptoi Stift mit Player) for music and audio books.

Rav file samples can be downloaded from the ravensburger website for free. If you do not have an account, you can deduct the download path from the public sample paths like this:

Bla_Bla-Blub-Hoerprobe.mp3 becomes Bla_Bla-Blub.rav (for books) or Bla_Bla-Blub.zip (for music)

There is a free sample available here

This can be downloaded without a pen but you only get a valid (non-empty) keyfile after entering a pen serial number.

Please feel free to add any relevant information you come across to this page.

I am starting with a collection of information I found in the tiptoi mailing list archive so far (Thanks to Jens, Carsten, Tobi and Uli for sharing their experiences. The information is translated to english and rephrased):

Encryption

apparently, the audio files are dongled to the pens. This seems to be done via a separate keyfile that is being created individually for each pen. The rav files themselves are likely encrypted with a generic key which the pen gets by decrypting the keyfile. see also the ubuntu wiki entry for the tiptoy.

Keyfiles

The keyfiles likely contain the key needed to decrypt the rav file. The key files content is completely different for each download (even when entering the same pen serial number) hinting at some encryption technique that uses a list of salts or something similar. In addition to the list of salts the key somehow also uses the pen serial number which you need to enter for the download.

As long as the rav file is not connected to a pen, only empty key files are offered for download.

File format

The rav files always start with "Ravensburgerv03" followed by a null byte. This string is not found in the firmware (of the old pens). Looking at the statistics of the following bytes, they seem to be relatively evenly distributed (hinting at a strong encryption method). Only 0x00 und 0xFF appear slightly more often than average. This means these bytes could be treated slightly differently by the xor variant used.