- KindleTool md [ <input> ] [ <output> ]
Obfuscates data using Amazon's update algorithm.
If no input is provided, input from stdin
If no output is provided, output to stdout
- KindleTool dm [ <input> ] [ <output> ]
Deobfuscates data using Amazon's update algorithm.
If no input is provided, input from stdin
If no output is provided, output to stdout
- KindleTool convert [options] <input>...
Converts a Kindle update package to a gzipped TAR file, and delete input
Options:
-c, --stdout Write to standard output, keeping original files unchanged
-i, --info Just print the package information, no conversion done
-s, --sig OTA V2 updates only. Extract the package signature.
-k, --keep Don't delete the input package.
-u, --unsigned Assume input is an unsigned package
- KindleTool extract <input> <output>
Extracts a Kindle update package to a directory
- KindleTool create <type> <devices> [options] <dir|file>... [ <output> ]
Creates a Kindle update package
You should be able to throw a mix of files & directories as input without trouble.
Just keep in mind that if you feed it absolute paths, it will archive absolute paths, which usually isn't what you want!
If input is a single tarball (".tgz" or ".tar.gz") file, we assume it is properly packaged (bundlefile & sigfile), and will only convert it to an update.
Output should be a file with the extension ".bin", if it is not provided, or if it's a single dash, output to stdout.
In case of OTA updates, all files with the extension ".ffs" or ".sh" will be treated as update scripts.
Type:
ota OTA V1 update package. Works on Kindle 3 and older.
ota2 OTA V2 signed update package. Works on Kindle 4 and newer.
recovery Recovery package for restoring partitions.
Devices:
OTA V1 packages only support one device. OTA V2 packages can support multiple devices.
-d, --device k1 Kindle 1
-d, --device k2 Kindle 2 US
-d, --device k2i Kindle 2 International
-d, --device dx Kindle DX US
-d, --device dxi Kindle DX International
-d, --device dxg Kindle DX Graphite
-d, --device k3w Kindle 3 Wifi
-d, --device k3g Kindle 3 Wifi+3G
-d, --device k3gb Kindle 3 Wifi+3G Europe
-d, --device k4 Kindle 4 (No Touch)
-d, --device k5w Kindle 5 (Kindle Touch) Wifi
-d, --device k5g Kindle 5 (Kindle Touch) Wifi+3G
-d, --device k5gb Kindle 5 (Kindle Touch) Wifi+3G Europe (Spain, at least)
-d, --device k5u Kindle 5 (Kindle Touch) Unknown (4th device code found in Touch official updates)
Options:
All the following options are optional and advanced.
-k, --key <file> PEM file containing RSA private key to sign update. Default is popular jailbreak key.
-b, --bundle <type> Manually specify package magic number. Overrides "type". Valid bundle versions:
FB01, FB02 = recovery; FC02, FD03 = ota; FC04, FD04, FL01 = ota2
-s, --srcrev <ulong|uint> OTA updates only. Source revision. OTA V1 uses uint, OTA V2 uses ulong.
Lowest version of device that package supports. Default is 0.
-t, --tgtrev <ulong|uint> OTA updates only. Target revision. OTA V1 uses uint, OTA V2 uses ulong.
Highest version of device that package supports. Default is ulong/uint max value.
-1, --magic1 <uint> Recovery updates only. Magic number 1. Default is 0.
-2, --magic2 <uint> Recovery updates only. Magic number 2. Default is 0.
-m, --minor <uint> Recovery updates only. Minor number. Default is 0.
-c, --cert <ushort> OTA V2 updates only. The number of the certificate to use (found in /etc/uks on device). Default is 0.
0 = pubdevkey01.pem, 1 = pubprodkey01.pem, 2 = pubprodkey02.pem
-o, --opt <uchar> OTA V1 updates only. One byte optional data expressed as a number. Default is 0.
-r, --crit <uchar> OTA V2 updates only. One byte optional data expressed as a number. Default is 0.
-x, --meta <str> OTA V2 updates only. An optional string to add. Multiple "--meta" options supported.
Format of metastring must be: key=value
-a, --archive Keep the intermediate archive.
-u, --unsigned Build an unsigned package.
- KindleTool info <serialno>
Get the default root password
Unless you changed your password manually, the first password shown will be the right one.
(The Kindle defaults to DES hashed passwords, which are truncated to 8 characters.)
- KindleTool version
Show some info about this KindleTool build
- KindleTool help
Show this help screen
- Kindle 4.0+ has a known bug that prevents some updates with meta-strings to run.
- Currently, even though OTA V2 supports updates that run on multiple devices, it is not possible to create an update package that will run on both the Kindle 4 (No Touch) and Kindle 5 (Kindle Touch).
// kate: indent-mode cstyle; indent-width 4; replace-tabs on; remove-trailing-space off; replace-trailing-space-save off;