Commit Graph
48 Commits
Author SHA1 Message Date
blacktop 1d59db2a51 chore(dl): tune remote zip reads 2026-05-24 16:27:52 -06:00
vnescapeandGitHub a3dc3ecf26 perf: increase remote ZIP block size from 128KiB to 8MiB for firmware extraction (#1230) 2026-05-24 11:28:19 -06:00
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 8567290715 fix: fcs-keys generation + better error handling 2026-02-24 13:09:02 -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 5b92508e5b fix(dmg): improve handling of AEA-encrypted DMGs and cleanup logic 2026-02-11 21:01:30 -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 739f4f2293 feat(keys): add lookup option for decryption keys from theapplewiki.com and refactor key retrieval logic 2025-12-21 12:20:56 -07:00
blacktop 2215a0cd1e fix(decrypt): add fallback to pure Go implementation if 'aea' binary fails #999 2025-12-20 15:40:52 -07:00
Sam CollinsonandGitHub d35f0ebdff fix: add proxy support for downloading FCS keys 🥝 (#914) 2025-11-09 11:38:09 -07:00
blacktop f521f3f17c feat: add support for --remote to ipsw extract --dmg cmd #888 2025-10-19 20:29:39 -06:00
blacktop 478a569c74 fix: add partial --insecure support to fcs key pem download in AEA commands 2025-07-29 15:11:53 -06:00
blacktop 727cd3f53e fix: extract BUND with kernel/apps in ipsw fw exc command 🇮🇹 2025-07-03 15:41:11 -06:00
blacktop a9a305f897 fix: ipsw fw exc cmd's IPSW auto folder generation 2025-07-01 12:50:49 -06:00
blacktop d50004edeb chore: move more cmds/code over to using the NEW img4 APIs 2025-07-01 12:15:38 -06:00
blacktopandGitHub 3cded00f59 feat: revamp ipsw img4 commands to bring inline with tools like img4lib (#784) 2025-06-28 01:54:40 -06:00
blacktop d1f5ac85a1 feat: add ipsw img3 cmd to parse/decrypt img3 files 2025-06-18 23:09:34 -06:00
blacktop a223d4c095 feat: add --remote flag to ipsw fw exc cmd 2025-03-15 12:08:53 -06:00
blacktop 53379710b7 fix: support x86_64 DSC extraction from local/remote OTAs 👶 2025-01-21 00:17:55 -07:00
blacktop d294086e56 fix: ipsw extract --dyld --remote cmd #604 2024-12-23 17:34:01 -07:00
blacktop fc1e2c519a fix: ability to remotely extract visionOS fcs-keys 2024-09-03 13:02:53 -06:00
blacktop 36d0eef0bf chore: add error message about using ipsw dl ota --kernel etc on AEA OTAs 2024-07-28 10:12:02 -06:00
blacktop 81535249b4 chore: add AEA key in ipsw dl ota filename 2024-07-25 13:50:08 -06:00
blacktop b71f77f7ae feat: add support for --pem-db everywhere it's needed to allow for external AEA pem key JSON databases to be used 2024-07-08 22:14:10 -06:00
blacktop 8229d8e5d9 fix: many fixes to symbolication and the symbol server 2024-07-04 00:26:55 -06:00
blacktop dfe5565a3b fix: symbol server database code 2024-07-02 20:44:21 -06:00
blacktop 38c5916810 fix: macOS 15.0 beta2 fcs-key 2024-06-27 12:11:13 -06:00
blacktop d37708ea46 feat: add ability to extract AEA private keys as JSON from remote IPSWs in ipsw dl appledb and ipsw dl ipsw cmds 2024-06-11 14:21:56 -06:00
blacktop 3c5e3b02a5 feat: add ability to partial-partialzip AEA1 private-key .pem files from remote/local IPSWs 2024-06-11 12:42:44 -06:00
blacktop a3f8762d6a feat: add --dyld flag to ipsw dl ota --type ota command 2024-05-30 12:08:37 -06:00
blacktop ec3f22890b feat: add support for 🆕 ExclaveOS DMG 2024-05-28 18:36:50 -06:00
blacktop 82fa323f25 fix: exclavecore bundle file extraction 2024-05-28 10:34:42 -06:00
blacktop b0fa17f7b9 feat: add 🆕 --exclave flag to ipsw extract cmd (shout-out to @justtryingthingsout) 2024-05-27 08:13:40 -06:00
blacktop 338b203d32 fix: DSC extraction from systemOS cryptex on older IPSWs that only have an OS dmg #393 2024-02-08 14:09:29 -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 4477a23ca9 feat: add ability to out ipsw extract --kbag --json to stdout 2023-12-31 17:47:18 -07:00
blacktop c19d85180c fix: add support for fat machos to ipsw ent and ipsw diff cmds 2023-12-12 17:47:27 -07:00
blacktop 76a0217433 fix: add support for remote OTA --dyld extraction in ipsw extract command (users should use ipsw ota extract though) 2023-09-23 20:22:11 -06:00
blacktop 172025f25f fix: ipsw extract --kernel --json output to include devices 🥝 2023-08-03 17:54:19 +12:00
blacktop f63e6c9017 feat: add ipsw extract --sys-ver flag to extract the info in the SystemVersion.plist 2023-07-27 17:15:15 -06:00
blacktop 17f4356b32 feat: add TXM firmware to ipsw extract --sptm output 🥝 2023-06-12 16:55:38 -06:00
blacktop 726b5a926c feat: add ability to extract SPTM firmware via ipsw extract --sptm 2023-06-08 21:58:28 -06:00
blacktop 1cd9e953a2 feat: add ability to extract DriverKit DSCs via ipsw extract --dyld --driverkit 2023-05-31 19:40:31 -06:00
blacktop 8219f0e3a4 docs: trying to improve some swag docs 2023-04-16 23:00:53 -06:00
blacktop 5a47bfddf8 feat: add NEW /ipsw/fs/launchd route to ipswd 2023-04-13 21:01:39 -06:00
blacktop ab70f436d9 fix: ipsw extract --pattern regression 2023-04-13 20:32:26 -06:00
blacktopandGitHub f85daa1ac3 feat: ipsw daemon (API) (#219) 2023-04-12 20:00:05 -06:00