Commit Graph
136 Commits
Author SHA1 Message Date
blacktop 4f23763438 feat(extract): auto-decrypt remote kernelcaches via wiki keys
`ipsw download ipsw --kernel` now fetches firmware keys from
theapplewiki and decrypts encrypted kernelcaches inline. Unencrypted
members in the same IPSW pass through unchanged.

- pkg/img4: DecryptPayload reuses Payload.GetData for decompression,
  removing the duplicate LZSS/LZFSE branches.
- pkg/kernelcache: ParseImg4Data switches to img4.ParsePayload and
  exports ErrEncryptedKernelCache so callers can detect the missing-key
  case via errors.Is.
- internal/commands/extract: new keyed remote path with all-or-nothing
  preflight; the encryption-status peek lets unencrypted variants
  succeed even when the wiki has no entry for them.

  closes #1193
2026-04-27 15:57:23 -06:00
blacktop e3dee5a361 chore(info): remove unused embedded firmware key databases 2026-04-05 17:25:47 -06:00
blacktop 41513202aa chore: update ipsw DB + procs 2026-03-04 18:05:00 -07:00
blacktop fa960d7a22 chore(deps): bump deps 2026-02-25 12:34:30 -07:00
blacktop 545db3d35e chore(deps): bump deps 2026-02-18 17:13:07 -07:00
blacktop 8e6f2c554b chore: modernize to 1.26
Refactor string concatenation to use strings.Builder for improved performance in multiple files
2026-02-12 10:02:01 -07:00
blacktop f64f267ff0 feat(extract): add 'ident' flag for selecting specific RestoreRamDisk and update DMG extraction options 2025-12-22 16:25:55 -07:00
blacktop 04f7fe7627 feat(symbolicate): enhance kernelcache extraction for specific devices and improve logging 2025-12-05 14:58:58 -07:00
blacktop 9a91d03bf6 chore(procs): update procs 2025-12-05 10:38:20 -07:00
blacktop 6e4e15f9b0 chore: update IPSW DB 2025-11-06 14:55:30 -07:00
blacktop cbd5632738 fix: iPhone17,3 board ID in IPSW DB #929 2025-11-06 14:45:29 -07:00
blacktop d77dffa3d0 chore: add new devices to ipsw DB 2025-10-19 13:15:07 -06:00
blacktop 6e31eb5d0b feat: add support for 'rdisk' to ipsw mount cmd 🇬🇧 2025-09-23 11:12:38 -06:00
blacktop f9e7104aae fix: ipsw ota info not parsing Info.plist properly due to .Name() not being full path 2025-09-10 17:38:39 -06:00
blacktop 29648b6597 fix: ipsw ota ls and ipsw ota extract cmds 2025-09-09 16:52:42 -06:00
blacktop 0be6300079 chore: add public beta OTA audiences + watches to ipsw DB 2025-09-09 15:06:12 -06:00
blacktop 21b55ec573 chore: add NEW iPhone 17 models to ipsw DB 2025-09-09 13:35:08 -06:00
blacktop 7400ccd270 chore: json_mini sort keys (more idempotent w/ Github Action CI for fcs-keys) 2025-07-14 17:48:23 -06:00
blacktop af7b1b6d92 chore: add regex to ipsw device-info cmd 2025-07-14 01:10:31 -06:00
blacktop c2cdf2656f fix: ipsw download tss cmd, now correctly checking signed status and downloading SHSH blobs 2025-07-03 11:17:20 -06:00
blacktop 4e59708601 fix: handle older device-trees that don't have a time-stamp #772 2025-06-19 10:45:12 -06:00
blacktop d1f5ac85a1 feat: add ipsw img3 cmd to parse/decrypt img3 files 2025-06-18 23:09:34 -06:00
blacktop 399d296d02 feat: add support for extracting SimulatorRuntime encrypted .aar files downloaded via ipsw dl ota #700 2025-06-04 23:37:34 -06:00
blacktop 5da7c6f384 Update info.go 2025-04-07 17:22:37 -06:00
blacktop dfff4270b4 fix: add support for older iOS 2.0 IPSWs to ipsw mount cmd 2025-04-07 17:17:42 -06:00
blacktop 2912c44c9c chore: update ipsw_db 2025-02-20 22:42:57 -07:00
blacktop 4dff6efae7 chore(deps): bump deps 2025-02-19 15:39:20 -07:00
blacktop ede3ed66dd chore(deps): bump deps 2024-10-23 14:32:02 -06:00
blacktop 1ad2498023 chore: add new iPad mini 2024-10-21 12:37:33 -06:00
blacktop 657d0639c2 chore: add watches too to device DBs 2024-09-09 14:57:27 -06:00
blacktop f7d1ade8f4 feat: update internal DBs with new device info 2024-09-09 14:31:31 -06:00
blacktop 35366ddf5f feat: add new 'hidden' ipsw dinfo cmd 2024-08-04 14:43:43 -06:00
blacktop 61ff9dbd86 chore: add ability to get OTA Info from AEA OTAs 2024-08-02 14:35:02 -06:00
blacktop af0beee80c chore: add future CPU placeholders 2024-07-25 13:05:29 -06:00
blacktop f13e3553e6 fix: iPad16,3 2024-07-25 10:52:57 -06:00
blacktop 35a64e7715 chore: add M4 and new iPad16,(3-6) #519 2024-07-25 10:46:47 -06:00
blacktop 3cdb8028d9 chore: detect macOS IPSWs when running ipsw diff 2024-07-18 17:35:15 -06:00
blacktop 2d2d2b447b fix: ipsw extract --kernel for macOS IPSWs file naming 🐛 2024-06-27 11:43:58 -06:00
blacktop ec3f22890b feat: add support for 🆕 ExclaveOS DMG 2024-05-28 18:36:50 -06:00
blacktop d3f1097f98 fix: more edge cases where no BuildManifest.plist would cause crash 2024-04-04 10:59:24 -06:00
Mischan Toosarani-HausbergerandGitHub e674b06615 fix: prevent panic in Info.GetFolder() (#428) 2024-04-04 10:39:35 -06:00
blacktop 58445e7978 chore: ipsw extract on macOS IPSW made annoyingly long folder names (no more 😉) 2024-03-30 13:55:36 -06:00
blacktop b656255005 fix: ipsw extract --dyld for visionOS 2024-01-31 12:40:36 -07:00
blacktop 980f67b245 fix: add error if detected encrypted device-tree #389 2024-01-21 16:32:56 -07:00
blacktop 66fb8588b5 fix: info caching in extract cmds 2024-01-06 23:18:29 -07:00
blacktop 1673ee487a feat: add ability to filter the extracted kernelcaches to a single device 2024-01-06 23:07:58 -07:00
blacktop f2b334a3f0 fix: finding FS dmg in Watch IPSW 2024-01-05 14:16:49 -07:00
blacktop 5a59345ec2 fix: ipsw info and ipsw ota info commands for RSRs 2023-11-16 17:11:08 -07:00
blacktop 6345ac95b1 chore: update databases 2023-09-12 14:38:06 -06:00
blacktop 577f24930b feat: add ability to mount personalized DDIs w/ ipsw idev img mount command 2023-08-20 18:52:07 -06:00