1P by GN⁺ 1일전 | ★ favorite | 댓글 1개
  • EU 디지털시장법(DMA) 이 기술 대기업의 시장 지배를 완화하고 기기 중립성을 보장하려는 가운데, 애플의 앱 ‘공증(notarisation)’ 절차가 이 목표에 정면으로 배치됨
  • 모든 iOS 앱은 애플 서버를 거쳐 검사·승인·암호 재서명을 받아야 하며, 이는 애플이 앱 설치와 배포를 완전히 통제하는 게이트키핑 구조로 작동
  • 제3자 앱스토어를 운영하려면 100만 유로의 신용장 또는 연속 2년간 100만 회 이상 설치 실적을 요구해 비영리·스타트업·개인 개발자의 진입을 사실상 차단
  • 이러한 공증 체계는 자유소프트웨어의 검증·재배포 권리를 침해하고, 경쟁과 상호운용성을 약화시킴
  • 시민단체들은 유럽위원회에 제재와 대안적 분산형 소프트웨어 큐레이션 모델 도입을 촉구하며, 이는 DMA가 지향하는 투명성과 사용자 선택권을 구현하는 핵심 과제로 제시됨

EU 디지털시장법(DMA)과 애플의 대응

  • DMA는 디지털 시장의 구조적 권력 재편을 목표로 하며, 사용자가 자신의 기기에서 어떤 소프트웨어를 실행할지 결정할 권리를 보장하는 기기 중립성(device neutrality) 을 핵심으로 함
  • 이 법은 iOS 같은 폐쇄적 생태계를 개방해 자유소프트웨어(Free Software) 대안을 허용할 기회를 제공
  • 애플은 이에 반발해 규제 당국을 상대로 소송을 제기하고, 사이드로딩 금지·대체 앱스토어 차단·상호운용성 제한을 통해 자유소프트웨어를 배제

시민단체의 불복종 신고

  • ARTICLE 19GFF(Gesellschaft für Freiheitsrechte) 가 2025년 10월 22일 애플의 DMA 불이행을 이유로 유럽위원회에 공식 불만 제기
  • 신고 내용은 다음 세 가지 행위를 DMA 위반으로 지적
    • 제3자 소프트웨어의 자유로운 설치(사이드로딩) 금지
    • 제3자 앱스토어의 실질적 운영 차단
    • iOS·iPadOS 기능과의 무상 상호운용성 미제공

애플의 ‘공증(notarisation)’ 절차

  • 모든 앱은 애플의 서버에 제출되어 스캔·승인·암호 재서명을 거쳐야 설치 가능
  • 이 과정은 앱스토어 외부 배포 앱에도 동일하게 적용되어, 애플이 모든 앱 설치를 통제
  • 결과적으로 보안 심사라는 명목의 중앙집중적 검열 구조가 형성되어, 개발자와 사용자가 애플 생태계에 종속됨

제3자 앱스토어에 대한 과도한 요구 조건

  • 애플은 제3자 앱스토어를 허용하기 위해 다음 중 하나를 요구
    1. A등급 이상 금융기관의 100만 유로 신용장 제출
    2. 2년 이상 개발자 프로그램 회원이면서 EU 내 연간 100만 회 이상 설치 실적 보유
  • 이러한 조건은 비영리 단체, 중소기업, 스타트업, 개인 개발자에게 불공정하며 시장 진입을 봉쇄
  • 맥OS에서는 사이드로딩이 허용되는 반면, iOS·iPadOS에서는 동일한 자유가 차단되어 모바일 기기에서만 독점적 통제가 유지됨

자유소프트웨어에 미치는 영향

  • 공증 절차는 유료 개발자 계정 가입, 제한적 법적 조건 수락, 폐쇄적 심사 과정 참여를 강제
  • 승인된 바이너리는 DRM으로 재서명되어, 사용자가 소스코드와 실행 파일의 일치 여부를 검증하거나 자유롭게 재배포할 수 없음
  • 이는 사용자 검증권과 개발자 자율성을 침해하며, 대체 앱스토어 운영자조차 애플의 승인 없이 앱을 배포할 수 없는 구조를 초래

DMA와의 충돌

  • DMA는 게이트키퍼가 제3자 앱스토어 설치를 허용하고 불필요한 기술적 제한을 두지 말 것을 명시
  • 그러나 애플의 공증은 모든 앱을 자사 승인 절차에 종속시켜 DMA가 금지한 의존 구조를 강화
  • 이로 인해 경쟁 저해, 독립 개발자 위축, 비영리 프로젝트 배제가 발생

분산형 소프트웨어 큐레이션의 대안

  • 시민단체는 유럽위원회에 제재 부과와 대체 구조 마련을 요구
  • 분산형 큐레이션(decentralised curation) 은 이미 F-Droid 같은 저장소에서 검증된 모델로, 보안과 자유소프트웨어의 공존을 입증
    • 신뢰를 단일 기업이 아닌 투명한 검증 파이프라인, 재현 가능한 빌드, 커뮤니티 감사를 통해 분산
    • 사용자는 신뢰할 대상을 직접 선택하고, 큐레이터는 공공에 책임지는 구조
  • 이 모델은 상호운용성·투명성·사용자 선택권을 구현하며, 기업 비밀이 아닌 다양성과 검증 가능한 무결성으로 보안을 확보

향후 과제

  • DMA의 실효성을 위해 규제 당국은 공증을 ‘보안 기능’이 아닌 ‘통제 수단’으로 인식해야 함
  • 애플의 보안 개념은 투명성과 경쟁, 사용자 자율성을 약화시키며, 소프트웨어 자유를 저해
  • 유럽위원회가 진정한 개방성과 자유로운 설치·공유·검증 권리를 보장해야 DMA의 목적이 실현됨
  • 이는 단순한 기술 문제가 아니라 자유(freedom) 의 문제로 규정됨
Hacker News 의견
  • 나는 여러 도구의 바이너리 배포를 중단했음
    매년 100달러를 내야 하는 것도 싫었고, 서명 없이 실행하는 방법을 계속 설명하는 것도 지쳤음
    그래서 사람들에게 참고하라고 이 글을 올려둠
    • 차라리 소스 코드를 공개하는 게 더 쉽고, 사용자에게도 이득일 것 같음
    • 참고로 제출된 글은 iOS용 공증(notarization) 에 대한 것이고, macOS의 공증과는 거의 관련이 없음
      iOS 쪽은 사실상 앱 심사(app review) 의 축소판임
      관련 문서: Apple Developer 문서
  • Windows에서도 비슷한 상황임
    개발자는 코드 서명을 해야 하고, 내 경험상 더 불편했음
    USB 토큰을 써야 해서 CI/CD 환경에서는 거의 불가능했음
    우리 회사는 mac mini에 Windows VM을 띄워서 서명용 토큰을 꽂아두고 macOS와 Windows 바이너리를 서명했음
    이상적인 해결책은 OS 차원에서 서드파티 인증서 통합을 쉽게 해주는 것임
    사용자가 위험을 이해하면서도 신뢰할 수 있는 방식으로 자체 서명(self-sign) 을 허용해야 함
    • 나도 비슷한 문제를 겪었음
      Linux에서 Windows 바이너리를 서명하려면 osslsigncode를 쓸 수 있음
      결국 우리는 Digicert Keylocker를 사용했음
      CLI 도구로 Linux에서 자동 서명되도록 구성했음
    • 서명되지 않은 프로그램을 실행하면 Windows에서는 UAC 창이 노란색으로 뜨지만 실행은 가능함
      macOS에서는 이런 식으로 간단히 실행할 수 없다는 게 문제임
    • USB 토큰 대신 Azure Key Vault 같은 HSM을 써서 Azure signtool로 서명할 수도 있음
    • 참고로 공증(notarization) 은 코드 서명과 다름
      서명 후에 Apple 서버에 업로드해 승인받는 추가 단계임
      보안상 큰 이득은 없는데 절차만 복잡해졌음
    • Azure Trusted Signing을 CI 환경에서 써보길 추천함
      예전엔 Windows 서명이 악몽이었는데, 지금은 월 10달러 수준으로 꽤 간단해졌음
  • 기사에서 인용된 문장은 오해의 소지가 있음
    Apple의 공증(notarization) 은 완전한 앱 리뷰가 아님
    공식 문서에 따르면, 자동 시스템이 악성 코드와 서명 문제를 검사하는 절차임
    Apple은 DMA(디지털시장법) 제6.7조를 근거로 공증 요구가 허용된다고 주장할 것 같음
    핵심은 이 조치가 ‘엄격히 필요하고 비례적인가’ 여부임
    개인적으로는 ‘필요 최소한(strictly necessary)’이라는 개념이 방어 심층(defense in depth) 전략과 충돌한다고 봄
    법원이 이를 어떻게 판단할지 지켜봐야 함
    • 제출된 글은 iOS 공증에 대한 것이고, macOS 공증과는 완전히 다름
      Apple이 같은 단어를 써서 혼란을 유발한 건 아쉬움
  • Apple이 자사 승인 앱만 실행되는 스마트폰을 만들고, 개발자에게 요금을 받는다는 사실이 새삼 놀랍다는 식의 풍자임
    Nintendo도 자사 승인 게임만 실행되는 콘솔을 만든다는 점을 비유로 듦
    iOS App Store 수익의 70%가 게임에서 나온다는 점을 지적함
  • 나는 오래전에 Apple 생태계에서 벗어남
    이제 더 많은 개발자들이 그 현실을 깨닫는 게 반가움
    • 나도 같은 선택을 했음
      iOS/macOS 개발을 그만둔 건 최고의 커리어 결정이었음
  • FSFE가 Google을 상대로도 비슷한 소송을 제기해, Play Store 외부에서 앱을 설치하려는 개발자 등록 강제를 막아줬으면 함
    그런 시도가 있다면 기부로 지원하고 싶음
  • 예전에 Electron 데스크톱 앱으로 고생했음
    공증과 서명 통합이 엉망이라 첫 제출에 며칠씩 걸렸고, GitHub Actions CI/CD 설정도 너무 복잡했음
    여기에 새 공증 정책까지 더해지면, 결국 Apple은 Apple일 뿐이라는 생각이 듦
  • 이런 공증 절차는 2027년 말 EU Cybersecurity Resiliency Act가 시행되면 더 중요해질 것 같음
  • 나는 iOS 사용자로서 이런 정책이 마음에 듦
    할머니를 사기 앱으로부터 보호할 수 있기 때문임
    예전에 Android 폰을 쓰실 때 전화로 유도당해 가짜 은행 앱을 설치하고 돈을 잃은 적이 있었음
    완벽하진 않지만, 클럽 입장료나 게이트 커뮤니티처럼 최소한의 보안 장벽 역할을 함
    • 하지만 App Store에도 구독 사기 앱이 넘쳐남
      현실적으로는 광고만큼 잘 작동하지 않음
  • 결국 Windows도 인증서 비용을 내야 하므로 비슷한 상황임