Skip to content

A collection of reverse engineered Apple formats

Notifications You must be signed in to change notification settings

dducdat/apple-knowledge

 
 

Repository files navigation

Apple Data Formats and Knowledge

A collection of reverse engineered Apple formats, protocols, or other interesting bits.

Join us on Discord - Discord Rules

Repo inspired by Papers we Love

Contributing and a warning

Linking your Discord and GitHub

We want this collection to be around for new jailbreakers and hobbiests for years to come, so we must say: this collection accepts (with gratitude) pull-requests that improve it, but under no circumstances will a PR based on AppleInternal, or any other copyrighted works protected by the DMCA be accepted. If you need help determining this, tag the PR with license help, join the Discord server, and ask a #Legit or higher role for help.

Violation of the DMCA or Copyright law is the responsibility of the submitter.

Setting up overcommit and the linters

In order to keep the repo, docs and data tidy, we use a tool called overcommit to connect up the git hooks to a set of quality checks. The fastest way to get setup is to run the following to make sure you have all the tools:

brew install hunspell
gem install overcommit bundler
bundle install
overcommit --install

Why not <insert wiki here>

Wiki's best serve prose, and part of the goal here is to leverage machine readable and ingestable information with human augmentation wherever possible. Also GitHub is more conducive to allowing any user to fork and PR the repo lowering the barrier to entry. The core team reviews PRs for quality before merging.

License

The contents of this repo are dual-licensed:

Licensed under the MIT license

Also licensed under the CC-BY-SA

Creative Commons License{style="border-width:0"} {rel=license} Apple Knowledge{:xmlns:dct="http://purl.org/dc/terms/", :property="dct:title"} by Hack Different{:xmlns:cc="http://creativecommons.org/ns#", :property="cc:attributionName", :rel="cc:attributionURL"} is licensed under a [Creative Commons Attribution-ShareAlike 4.0 International License](http://creativecommons.org/ licenses/by-sa/4.0/){:rel="license"}

Primary Data Source

We attempt to derive from machine sources and produce machine readable files (YAML) in this repo under _data. For information about creating and extending data format see Data Format Guidance.

Updates and additions there should automatically be reflected in the documents

hack-different/apple-knowledge/_data

Another authoritative source of information is the open source code released by Apple themselves at one of the following locations:

Tools

Libraries for Binary Analysis and Modification

See docs/Binary_Tooling

Tools for Binary Analysis and Modification

Guides and General

Devices

Kernel General

Protocols / Formats

Bootloader Related

Archive / Disk Formats

Databases / Serialization

Image, Sound and Other Resources

Software Update / Installers

Code and Signature Formats

Sandbox or 'Seatbelt'

Secure Enclave Processor

ARM / x86

Hypervisor / Virtualization

USB / Wired Protocols / Low Level Hardware

Network / Wireless / Transit

System Configuration and State

  • FDR - Factory Data Restore
  • SysCfg - System Configuration - Serial Number and other Device Info
  • APTicket - The root of an authorized version set

Diagnostic Protocols

Jailbreaks

Jailbreak Tooling

X-Plat

Safety / Protection

Hack Different's Knowledge is a product of the entire community and belongs to the community. It is facilitated by the volunteer work of the Hack Different moderation team.

Portions of data and knowledge come from https://theiphonewiki.org, https://libimobiledevice.org and https://checkra.in as well as the individuals who brought you those projects. (And many more!)

Special mention to Jonathan Levin and Amit Singh for taking the time to publish books on these topics.

A list of all projects and their contributors is at CREDITS and is updated by a script. If there are persons not updated due to limitations please PR the CREDITS page and call them out.

Dedication

Here’s to the crazy ones, the misfits, the rebels, the troublemakers

the round pegs in the square holes…

the ones who see things differently — they’re not fond of rules…

You can quote them, disagree with them, glorify or vilify them, but the only thing you can’t do is ignore them because they change things…

They push the human race forward, and while some may see them as the crazy ones,

we see genius,

because the ones who are crazy enough to think that they can change the world,

are the ones who do.

— Steve Jobs, 1997

Also dedicated to the volunteer work of those who use this for good, and deny the shadow to those who seek to harm.

About

A collection of reverse engineered Apple formats

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Ruby 98.5%
  • HTML 1.5%