HeadlinesBriefing favicon HeadlinesBriefing.com

Inside Apple's ASIF Sparse Disk Format: A Reverse Engineering Deep Dive

Hacker News •
×

Apple introduced ASIF (Apple Sparse Image Format) at WWDC 2025 as part of macOS 26 Tahoe, targeting virtual machine disk images. The format borrows concepts from established sparse formats like VMDK, VHDX, and QCOW2, allowing large virtual disks to occupy minimal physical storage. Developer schamper undertook reverse engineering to understand ASIF's internal structure, creating test images and analyzing binary layouts to map out the format's header fields and metadata organization.

The investigation revealed ASIF uses magic bytes 'shdw' and big-endian integers throughout its header. Initial analysis showed sector size indicators at 0x200 (512 bytes) and potential offset fields for data mapping. By examining hexdumps with patterns of numbered 1 MiB blocks, the researcher identified virtual disk size calculations and header field purposes. The approach demonstrates practical techniques for parsing unknown binary formats through systematic byte inspection and cross-referencing observed values against expected structures.

Further examination uncovered metadata sections containing XML plist data at offset 0x00200200, alongside what appears to be shadow data structures. The author located relevant binaries in DiskImages2.framework's diskimagescontroller component for deeper analysis. This reverse engineering effort provides valuable insights into Apple's virtual disk implementation and offers a methodology others can apply when dissecting proprietary file formats.

The work illustrates how developers can approach unfamiliar binary structures methodically, from initial hexdump analysis through field identification to binary discovery. Practical takeaways include using predictable test patterns for verification and leveraging system framework searches for implementation clues. This kind of format exploration helps the community understand platform capabilities and build compatible tools.