Description
pyiosbackup is a utility created in order to parse and decrypt iOS backups.
Installation
Install the last released version using pip:
python3 -m pip install --user -U pyiosbackup
Or install the latest version from sources:
git clone git@github.com:matan1008/pyiosbackup.git
cd pyiosbackup
python3 -m pip install --user -U -e .
Usage
CLI
Before decrypting a backup, you need to create one. You can use the amazing pymobiledevice3 to do that:
pymobiledevice3 backup2 encryption ON 1234 .
pymobiledevice3 backup2 backup --full .
After creating the backup, you can decrypt it:
pyiosbackup extract-all $BACKUP_FOLDER 1234 --target decrypted
You can also extract single files by their domain and relative path:
pyiosbackup extract-domain-path $BACKUP_FOLDER RootDomain Library/Preferences/com.apple.backupd.plist -p 1234
Or by their file id:
pyiosbackup extract-id $BACKUP_FOLDER a8323a1323d9cad416d8b44d87c8049de1adff25 -p 1234
You can also print some metadata about the backup:
pyiosbackup stats $BACKUP_FOLDER -p 1234
Python
Another way to access the functionality of the package is using python code.
For example, iterating over all files in a backup will look like:
from pyiosbackup import Backup
backup_path = 'BACKUP_PATH'
password = '1234'
backup = Backup.from_path(backup_path, password)
for file in backup.iter_files():
print(file.filename)
print(file.last_modified)
You can also access a specific file:
import plistlib
from pyiosbackup import Backup
backup_path = 'BACKUP_PATH'
password = '1234'
backup = Backup.from_path(backup_path, password)
backupd_plist = backup.get_entry_by_domain_and_path(
'RootDomain', 'Library/Preferences/com.apple.backupd.plist'
)
print(plistlib.loads(backupd_plist))
Metadata
Release files for pyiosbackup 0.2.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pyiosbackup-0.2.4.tar.gz | 49.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pyiosbackup-0.2.4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 88.0 kB
Release files / pyiosbackup-0.2.4.tar.gz
| Download URL | pyiosbackup-0.2.4.tar.gz |
|---|---|
| Size | 49.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
10b4d2a11c9bedc93a5467cad3addbe18bc2dc434156920e7223226ed4d0beb7
|
|
BLAKE2b-256 checksum How to use checksums |
46abc7c3caf6785ced43d02c8c37be3c84720c40d6a9b237eb2ff560af4114e1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Feb 2, 2026.
Transparency logRelease files / pyiosbackup-0.2.4-py3-none-any.whl
| Download URL | pyiosbackup-0.2.4-py3-none-any.whl |
|---|---|
| Size | 38.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c71ae67d012c13e01a5139687eb5bfaaa4e7722e6519c3f0a246a87e015f1b9e
|
|
BLAKE2b-256 checksum How to use checksums |
bd5be6e7f343116e9ea067ab1c5c5dbb42b277a6340ad6fd14f692db8ca915b0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Feb 2, 2026.
Transparency log