유럽의 “연령 확인” “앱”은 모두에게 Android 또는 iOS 사용을 강요함

4 hours ago 3
  • 토론 개설 당시 기술 명세 README에는 Google Play Integrity APIApple App Attestation을 이용한 앱·기기 검증이 적혀 있었으며, 이를 연령 확인의 전제로 삼으면 미국 플랫폼 사업자와 특정 모바일 운영체제에 의존하게 된다는 반대가 제기됨
  • 특정 공급자의 증명을 요구하면 Google·Apple 소프트웨어가 없는 기기, 대체 Android 배포판, 스마트폰이 없는 사용자가 배제되고, 누구나 이용하며 사용자가 통제하고 여러 운영체제·지갑과 연동한다는 접근성·상호운용성 원칙과 충돌함
  • 대안으로 Yivi, 표준 Android 하드웨어 증명, Digital Credentials API 기반 웹 앱, 국가 신원 제공자가 일회용 도전에 서명하는 방식, Unified Attestation 등이 거론됐지만 Yivi와 Unified Attestation도 각각 중앙 발급자·외부 생체 서비스 또는 다른 증명 사업자에 신뢰가 집중된다는 반론이 나옴
  • 이탈리아 디지털 지갑의 Play Integrity 관련 다수 이슈와 Google 계정·정식 ROM 의존 문제가 사례로 제시됐으며, 공격자는 증명을 우회하거나 다른 사람에게 QR 코드를 대신 스캔하게 할 수 있어 정상 사용자만 제한할 수 있다는 실효성 비판도 이어짐
  • 정부 서비스는 특정 기업 기술이 아니라 누구나 구현할 수 있는 개방형 표준을 기반으로 해야 한다는 요구가 중심이며, 제공된 토론에는 Google·Apple 증명 통합 여부에 관한 공식 결정이나 최종 해결 결과가 나타나지 않음

제안된 앱·기기 검증과 핵심 반대

  • 토론 개설 당시 README에는 “Google Play Integrity API와 Apple App Attestation에 기반한 앱 및 기기 검증”이 다음 단계로 적혀 있었음
  • 연령 확인을 이들 서비스에 연결하면 EU의 미국 기술 기업 의존과 미국의 인터넷 통제력이 더 커진다는 우려가 출발점이었음
  • 디지털 주권을 위해 외부 제3자 서비스 의존 자체를 피해야 하며, 의존성이 추가될 때마다 잠재적인 보안 문제의 생태계도 함께 생긴다는 의견이 나옴
  • 이후 한 참여자는 해당 문구가 README에 더는 없다고 답했지만, 변경 경위나 공식 결정은 제공된 본문에 없음
  • 이 토론은 2025년 7월 31일 이슈 #18에서 Discussion으로 전환됐으며, 본문에는 최종 채택·철회 결과가 없음

접근성·사용자 통제·상호운용성

  • 특정 운영체제와 공급자에 묶인 연령 확인은 조직이 내세운 다음 원칙과 충돌한다는 비판을 받음
    • 사용을 원하는 누구에게나 제공할 것
    • 사용자가 통제할 것
  • 기술 명세의 상호운용성 원칙은 다양한 기기 운영체제, 지갑 앱, 온라인 서비스 사이의 원활한 통합을 요구하므로 Android·iOS 공급자별 증명에 의존하는 설계와 맞지 않는다는 지적이 나옴
  • Google이나 Apple 소프트웨어를 쓰지 않는 사용자, 비 Google 휴대전화 이용자가 많은 남유럽 지역, 대체 ROM·microG 사용자, 스마트폰이 없는 사람은 이용이 막힐 수 있음
  • Nokia 3310이나 노트북만 사용하는 사람도 접근할 수 있는지, 스마트폰·Google 계정·충전된 기기를 시민 서비스 이용 조건으로 삼을 수 있는지에 대한 질문이 이어짐
  • 오픈소스로 코드를 공개해도 모든 참여자가 증명을 강제하면 수정한 포크는 실제 서비스에서 인정받지 못해 실질적인 포크 가능성이 사라진다는 비판도 나옴

기존 구현과 Play Integrity 사례

  • Google 의존성 없이 정부 연령 확인에 사용할 수 있는 네덜란드 신원 앱 Yivi가 대안 사례로 거론됨
    • 이전 이름은 IRMA이며 F-Droid 같은 오픈소스 앱 스토어에서도 제공됨
    • 일부 지원 플랫폼에서는 정부 연령 확인에 사용할 수 있으므로 Play Integrity가 필수는 아니라는 근거로 제시됨
  • 다만 Yivi의 NFC 여권 등록도 의존성 없는 구조는 아님
    • 원시 NFC 데이터 그룹을 중앙 발급자 서버로 전송함
    • DG1의 전체 MRZ와 DG2의 얼굴 이미지가 필수이며, 서버가 이름·문서 번호·국적·생년월일·성별을 파싱함
    • 얼굴 일치는 Regula의 제3자 API를 사용함
    • 데이터가 일시적으로 처리되고 발급자를 자체 호스팅할 수 있더라도, 기기 증명과 다른 형태의 중앙 신뢰 집중이라는 반론이 나옴
  • 이탈리아 디지털 지갑에서는 Play Integrity와 관련된 실제 문제가 다수 연결됨
  • EUDI Android 지갑에서도 Google Play Integrity 요구를 없애거나 Google Mobile Services 라이선스를 강제하지 않는 표준 Android 하드웨어 증명 API를 사용하자는 별도 논의가 연결됨

앱 없이 구현하는 대안

  • 별도 네이티브 앱이 필요한지와 현실적인 위협 모델이 무엇인지부터 검토해야 한다는 의견이 나옴
  • Digital Credentials API를 활용한 현대적인 웹 앱으로 구현해 “모든 서비스마다 앱을 설치하는” 구조를 피하자는 방안이 제안됨
  • 국가 신원 제공자가 일회용 무작위 도전에 서명하는 브라우저 기반 방식도 구체적으로 제안됨
    1. 사용자가 연령 제한 웹사이트에 접속함
    2. 웹사이트가 EU 방문자임을 감지함
    3. 무작위 문자열이 든 파일을 내려줌
    4. 사용자를 정부 연령 확인 사이트로 안내함
    5. 사용자가 국가 신원 제공자로 로그인하고 파일을 업로드함
    6. 정부 서비스가 도전에 서명하고 브라우저로 반환함
    7. 사용자가 원래 사이트에 서명된 파일을 업로드함
    8. 웹사이트가 신뢰하는 기관의 서명인지 검증함
  • 도전이 일회용이므로 서명된 결과를 장기적으로 보호할 필요가 없으며, SSH 또는 WebAuthn 인증과 유사한 구조라는 설명이 붙음
  • EU가 통제하는 웹사이트에서 국가 자격 증명을 사용하는 별도 제안 #18도 대안으로 거론됨

Unified Attestation과 신뢰 집중 문제

  • 독일 Volla Systeme GmbH의 Unified Attestation이 Google Play Integrity의 무료 오픈소스 대안으로 제안됨
    • 하나의 백엔드가 수명이 짧은 무결성 토큰을 발급함
    • 앱 서버는 토큰을 오프라인으로 검증함
    • 권한 있는 Android 시스템 서비스가 토큰을 요청함
    • Play Integrity와 병행할 수 있고 앱·서버 양쪽 통합이 단순하다고 소개됨
  • 반론은 Unified Attestation도 Google 대신 다른 기업 집단에 같은 권한을 넘길 뿐이며, 중앙 증명 주체라는 근본 문제를 해결하지 못한다는 것임
  • 특정 기업 기술을 다른 기업 기술로 교체하기보다 누구나 구현하고 통합할 수 있는 개방형 표준을 정부 시스템의 기반으로 삼아야 한다는 요구가 이어짐

하드웨어 증명과 오픈소스의 충돌

  • Play Integrity는 정식 ROM, Google Play Services, 공급자가 승인한 기기를 사실상 요구해 사용자가 소유한 하드웨어와 소프트웨어를 직접 통제할 권리를 약화시킨다는 비판을 받음
  • 앱 소스가 자유롭게 공개돼도 수정된 빌드가 증명을 통과하지 못하면 재현 가능한 빌드와 포크의 실용성이 제한됨
  • 독일 구현이 재현 가능한 빌드를 제공하지 않을 계획으로 보인다는 관련 작업 항목이 공유됨
  • 이런 방향이 OWASP MASVS Resilience 지침의 영향을 받았을 수 있다는 의견과 함께 OWASP/masvs#757의 비판 논의도 연결됨
  • 정부 서비스를 특정 기술·운영체제·앱 스토어에 고정하면 장기간 벗어나기 어려워질 수 있으며, 과거 한국의 IE6 의존과 비슷한 고착을 만들 수 있다는 비교가 나옴

보안 실효성과 우회 가능성

  • 하드웨어 증명이 막으려는 위협이 실제로 현실적인지 불분명하다는 질문이 제기됨
  • 자동 신원 확인 서비스나 공격자를 겨냥하더라도 증명 우회 방식은 패치 뒤 다시 등장할 수 있어 정상 사용자에게만 제약을 줄 수 있다는 비판이 나옴
  • 미성년자가 제한 사이트에 접근하려 한다면 다른 사람에게 QR 코드를 대신 스캔하게 할 수 있으므로 기기 증명이 이를 해결하지 못한다는 사례가 제시됨
  • 검증된 계정의 판매나 대리 인증도 증명 유무와 관계없이 생길 수 있다는 우려가 나옴
  • 기술적으로 우회할 사람은 우회하면서 Google·Apple 기기나 스마트폰을 원하지 않는 합법적 사용자만 차단한다면 해당 보안 조치를 두지 않는 편이 낫다는 의견이 이어짐

연령 확인 자체에 대한 반대

  • 일부 참여자는 Play Integrity 선택을 넘어 엄격한 온라인 연령 확인 자체가 유용하지 않다고 봄
  • 스마트폰에 이미 존재하는 클라이언트 측 필터를 부모가 활용하도록 장려하자는 별도 논의가 연결됨
  • 강제 연령 확인이 청소년을 Tor나 다른 우회 수단으로 이동시킬 수 있다는 우려도 나옴
  • 개인정보·접근성·컴퓨팅 통제에 큰 피해를 주면서 하나의 문제만 해결하려 한다면 아예 구현하지 않아야 한다는 의견이 제시됨
  • 제공된 토론 범위에서는 연령 확인 앱, 기기 증명 방식, Google·Apple 통합 여부에 대한 공식 최종 결론이 확인되지 않음
Read Entire Article