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도 인증서 비용을 내야 하므로 비슷한 상황임