AppSuitSign 재서명 도구
iOS / macOS 통합 재서명 자동화 도구 AppSuitSign 을 4년째 운영하며 기능을 확장해 온 트랙
언어
- Python3
- Shell
- Objective-C
기술
- Code Signing
보안 솔루션을 적용하면 앱의 코드 서명이 깨져 그대로는 배포할 수 없다. 이 문제를 해결하는 iOS / macOS 통합 재서명 자동화 도구 AppSuitSign 을 2022년 4월부터 4년째 주도적으로 운영하고 있다.
배경·과제
-
보안 솔루션 적용 후 코드 서명이 손상되어 정상 배포·실행이 불가능했다. 고객 SE 가 직접 처리할 수 있는 재서명 자동화 도구가 필요했다.
-
iOS .ipa, macOS .pkg, macOS .app 은 재서명 절차가 제각각이라 하나의 도구로 묶어야 했다.
수행·기여
-
입력 파일의 포맷을 자동으로 감지해 iOS .ipa, macOS .pkg, .app 을 한 도구 안에서 처리하도록 만들었다.
-
iOS .ipa 는 codesign, entitlement 조정, 프로비저닝 프로파일 교체, 재압축까지 자동화했다.
-
macOS .pkg 는 productbuild 산출물을 분해해 내부 앱을 codesign 으로 재서명하고, productsign 으로 패키지를 다시 서명해 재조립한다. 앱스토어 배포와 비-앱스토어 배포도 나눠 처리한다.
-
Objective-C 레거시 코드를 Swift·SwiftUI 로 리팩토링하면서 UI / UX 를 함께 개선했다.
-
Apple Developer ID Application 서명 키 운영을 맡았다.
-
인증서 등록·IPA 검증 같은 고객 입력 UI 를 담당하는 Toolbox 앞단과 결합해 단일 macOS 통합 도구로 확장했다.
성과
-
고객 SE 가 GUI 한 번으로 재서명을 끝내는 단일 워크플로우가 자리 잡았다.
-
2022년 4월부터 4년째 도구를 운영하며, 2023년 11월 릴리즈 이후로도 기능 확장과 업데이트를 이어 가고 있다.