iPhone 11 QEMU 에뮬레이션 구현
(github.com/ChefKissInc)- ChefKiss Inferno는 QEMU 파생 프로젝트로, Apple ARM 기기 게스트 지원을 제공함
- 프로젝트 정보와 사용법은 별도 문서인 chefkiss.dev/applehax/inferno에서 확인하도록 안내함
- 소프트웨어는 있는 그대로(as is) 제공되며, 사용자는 사용 방식과 법률·라이선스·계약 준수에 대해 스스로 책임져야 함
- 프로젝트는 GNU GPL v3로 배포되고, 자체 코드는 GNU AGPL v3로 라이선스됨
- QEMU와 iOS는 각각 Fabrice Bellard와 Apple, Inc.의 저작권·상표이며, 이 프로젝트와는 제휴 관계가 없음
ChefKiss Inferno 개요
- ChefKiss Inferno는 QEMU 프로젝트의 파생 프로젝트임
- 목적은 Apple ARM device guest support를 제공하는 것임
- README 본문은 프로젝트의 자세한 정보와 사용법을 chefkiss.dev/applehax/inferno에서 확인하라고 안내함
개발 지원 요청
- 프로젝트는 무료·오픈소스로 유지하기 위해 기부와 팁을 요청함
- 기부 수단으로 Ko-fi, BTC, SOL, ETH 주소를 제시함
법적 고지와 사용자 책임
- ChefKiss Inferno는 명시적·묵시적 보증 없이 “있는 그대로” 제공됨
- 사용자는 소프트웨어 사용 방식에 대해 전적으로 책임짐
- 프로젝트 팀은 사용으로 인해 발생하는 손해, 법적 문제, 데이터 손실, 기타 결과에 책임지지 않음
- 프로젝트는 합법적 목적만을 의도함
- 사용자는 관련 법률, 라이선스, 계약, 저작권, 상표, EULA를 준수해야 함
- 프로젝트 팀은 불법 복제, 저작권 침해, 기타 불법 행위를 용인하거나 지원하지 않음
라이선스 구조
- 파생 프로젝트인 ChefKiss Inferno는 GNU General Public License version 3로 라이선스됨
- 프로젝트의 자체 코드는 GNU Affero General Public License version 3로 라이선스됨
- 자세한 내용은
LICENSE파일을 확인해야 함 - 이러한 라이선스 선택은 다른 주체들이 이 프로젝트를 거의 그대로 기반으로 한 독점·유료 솔루션으로 프로젝트를 가리는 상황 때문에 이루어짐
QEMU 코드와 상표 관련 조건
- QEMU의 “version 2 or later” 조항으로 라이선스된 부분은 원래의 라이선스 제한과 저작권자를 유지함
- “or later” 조항이 없는 GNU GPL version 2 전용 부분은 이후 커밋에서 제거될 예정임
- 원하는 경우 코드의 조기 또는 더 빠른 제거를 위해 프로젝트 팀에 명시적으로 연락할 수 있음
- ChefKiss Inferno 브랜딩에는 별도 제한이 적용됨
- QEMU는 Fabrice Bellard의 저작권·상표이며 이 프로젝트와 제휴하지 않음
- iOS는 Apple, Inc.의 저작권·상표이며 이 프로젝트와 제휴하지 않음
댓글과 토론
Hacker News 의견들
-
업스트림 저장소 논의: Discussion on upstream repo (356 points, 2022, 144 comments) https://news.ycombinator.com/item?id=30545425
관련 글: Related (mentions this repo): Emulating an iPhone in QEMU (268 points, 2 months ago, 64 comments) https://news.ycombinator.com/item?id=43592409- 이슈 트래커를 보면 그 이후로 상당한 진전이 있었던 것처럼 보임
-
이건 단연 최고 수준의 에뮬레이션 해킹이고, 참여한 모두에게 축하할 일임
Hackintosh 프로젝트에도 좋은 신호로 보임. 아직 갈 길은 멀지만 더 이상 막다른 길은 아닐 수 있고, ARM PC가 보편화되면 언젠가 효율적인 에뮬레이션도 볼 수 있을 듯함- ARM은 IBM PC처럼 열린 플랫폼이 아님
Android 폰과 문서화되지 않은 부분이 들어간 맞춤형 Linux 커널들을 보면 알 수 있음 - 2019년에 출시되고 2022년에 단종된 무언가를 겨우 에뮬레이션하는 단계인데 궁극적이라고 부르긴 어려움
게다가 해당 하드웨어 업체는 순전히 방해하려고 계속 장애물을 추가할 가능성이 큼
- ARM은 IBM PC처럼 열린 플랫폼이 아님
-
와, 적어도 Springboard까지 부팅되는 것 같음
이건 꽤 큰 성과임 -
QEMU에서 iPhone 11을 Springboard까지 부팅시키는 건 정말 인상적이고 결코 쉬운 일이 아님
여기까지 끌고 온 ChefKissInc 팀과 기여자들에게 박수를 보냄 -
TrollStore를 지원하고 IPA 복호화도 가능함?
- 잘 모르는 입장에서, 이게 무슨 뜻임?
- 나도 바로 이걸 물어보려고 왔음
가능하다면 정말 강력할 듯함
-
중요한 부분은 보안 관련 난잡한 것들을 에뮬레이션해서 이해하고 우회할 수 있게 만드는 데 있어 보임
그쪽은 어디까지 왔는지 궁금함. 은행 앱이나 DMV 같은 걸 에뮬레이터에서 돌릴 수 있으면 킬러 기능이 될 듯함 -
적어도 일부라도 업스트림에 반영하려고 시도해야 함
그렇지 않으면 이전 시도들처럼 사라질 운명임 -
그런데 Classic Mac용 QEMU m68k는 어떻게 돌아감?
- 동작함
QEMU m68k로 classic Macintosh를 실행하는 기술 논의는 여기 있음: Qemu-system-m68k to run Mac OS 7-8 - https://www.emaculation.com/forum/viewforum.php?f=37&sid=6a9... - 별로 좋지 않음
대신 Mini vMac을 쓰는 게 나음. 다만 PPC 에뮬레이션은 잘 동작함
- 동작함
-
이게 iOS 자체를 에뮬레이션하는 건가, 아니면 iOS 바이너리만 실행하는 건가?
왜 구체적으로 iPhone 11이라고 하는지도 궁금함- iPhone 11 하드웨어를 에뮬레이션하는 것임
그 위에서 iOS 14와 sepOS, 즉 Apple Secure Enclave 펌웨어를 실행함 - 아마 iPhone 11 바이너리라서 그런 듯함
- iPhone 11 하드웨어를 에뮬레이션하는 것임
-
Windows 호스트에서 QEMU 사용법에 대한 제대로 된 문서가 아직 없음
옵션과 인자 같은 걸 찾으려면 인터넷에 흩어진 정보와 아이디어를 구글링하거나, Linux 쪽 대응 방식을 참고해서 해법을 만들어야 함- 공정하게 보자면 QEMU를 만지는 사람 대부분은 아마 Unix 계열에서 돌릴 것임
Windows에는 VirtualBox, VMware, Hyper-V 같은 사용자 친화적 가상화 옵션도 많고 WSL도 있음. 그래서 Windows 사용자가 QEMU를 직접 돌리는 경우는 이런 식의 아주 특수한 사례일 가능성이 큼
- 공정하게 보자면 QEMU를 만지는 사람 대부분은 아마 Unix 계열에서 돌릴 것임