앱 서명 키 관리

Google Play 앱 서명을 통해 새로운 앱이나 기존 앱의 앱 서명 키를 안전하게 관리할 수 있습니다. 서명 키는 Google에서 자체 키를 저장하는 데 사용하는 인프라와 동일한 보안 인프라에 저장됩니다.

Google Play 앱 서명 작동원리

Android App Bundle을 사용하는 앱

App Bundle을 사용하는 앱에는 Google Play 앱 서명이 필요합니다. 앱 서명을 선택한 후 다음 단계에 따르세요.

  1. App Bundle에 서명하고 Play Console에 업로드합니다.
  2. Google에서 서명을 확인 및 제거한 뒤 App Bundle을 처리하여 기본 APK, 구성 APK 및 동적 기능 APK(해당하는 경우)를 생성합니다. 자세한 내용은 Android 개발자 사이트를 참조하세요.
  3. Google에서 내가 제공한 원래 앱 서명 키로 앱에 다시 서명하고 사용자에게 앱을 제공합니다.

Google에서는 앱 서명 키로 서명된 어떤 기존 또는 신규 APK도 재서명하지 않습니다. 이를 통해 Google Play에서 앱 번들을 변경하지 않아도 프로덕션 단계에 있는 기존의 APK를 계속해서 출시하면서 공개, 비공개, 내부 테스트 트랙에 있는 App Bundle을 테스트할 수 있습니다. 

업로드 키로 APK를 업로드하고 서명하면 Google에서 개발 키로 APK에 다시 서명합니다.

APK 사용 앱

APK를 업로드하면 Google Play 앱 서명이 선택 프로그램으로 제공됩니다. 원한다면 계속해서 자신의 키를 직접 관리할 수 있습니다.

키 저장소를 분실했거나 도용당했다고 생각되면 Google Play 앱 서명에서 업로드 키 재설정을 요청할 수 있습니다. Google Play 앱 서명에 등록되어 있지 않고 키 저장소를 분실했다면 새로운 패키지 이름으로 새 앱을 게시해야 합니다.

권한 및 액세스

Play Console 계정 소유자거나 전체 '프로덕션 버전 관리' 권한이 있는 사용자라면 Google Play 앱 서명을 선택할 수 있습니다. 개발자 계정당 한 번씩 서비스 약관에 동의해야 합니다. 서비스 약관에 동의하면 개별 앱을 프로그램에 등록할 수 있습니다.

참고: 서비스 약관에 동의해도 개발자 계정에 연결된 모든 앱이 자동으로 앱 서명에 등록되지는 않습니다.

키 유형 및 주요 정의

  • 앱 서명 키: 사용자 기기의 APK를 서명하는 데 사용되는 키입니다. 사용자는 현재 앱 서명 키를 보유하고 있으며 APK를 서명하는 데 사용합니다. 프로그램 가입 절차가 완료되면 이 키를 Google에 업로드합니다.

  • 업로드 키(기존 앱의 경우 선택사항): 프로그램에 등록할 때 생성하는 새 키입니다. Play Console에 업로드하기 전에 업로드 키를 통해 향후 모든 APK에 서명합니다.
  • 비공개 키: APK 서명의 경우 APK를 서명하는 데 사용되는 키입니다. 비공개 키는 공개해서는 안 됩니다.
  • 공개 키: APK 서명의 경우 APK 서명을 인증하는 데 사용되는 키입니다. 공개 키는 모든 사용자에게 공개할 수 있습니다.
  • 인증서: 인증서에는 공개 키와 함께 키 소유자에 관한 추가 식별 정보가 포함되어 있습니다.
  • PEPK 도구: Play Encrypt Private Key는 Java Keystore에서 비공개 키를 내보내고, Google Play에 전송하는 비공개 키를 암호화하는 데 사용하는 도구입니다.

도움말 및 권장사항

  • 개발자 계정을 보호하려면 Play Console에 액세스할 수 있는 모든 계정에 2단계 인증을 사용하는 것이 좋습니다.
  • 업로드 키로 서명된 APK를 테스트하려면 인증 시 앱의 서명을 사용하는 서비스나 API가 포함된 업로드 키(Google Maps API 또는 Facebook SDK 등)를 등록해야 합니다. Google API를 사용하는 경우, 앱의 Google Cloud Console에 업로드 인증서를 등록하는 것이 좋습니다.

개요

시작하기 전에 Android 개발자 블로그에서 앱 서명 개요 동영상을 시청하세요.

새로운 앱

1단계: 업로드 키 만들기
  1. 새로운 앱에 사용할 업로드 키를 만들려면 앱 서명 안내를 따릅니다.
  2. 업로드 키로 새 APK를 서명합니다.

업로드 키 정보

  • 업로드 키는 Google에만 등록되며 앱 제작자의 신원을 인증하는 데 사용됩니다.
  • 서명은 사용자에게 전송되기 전에 업로드된 모든 APK에서 삭제됩니다.

업로드 키 제한사항

  • 업로드 키는 2048비트 이상의 RSA 키여야 합니다.
  • DSA 키, EC 키 또는 2048비트 미만의 RSA 키는 지원되지 않습니다.
2단계: 버전 준비
  1. Play Console로 이동합니다.
  2. 앱을 선택합니다.
  3. 왼쪽 메뉴에서 출시 관리 > 앱 버전을 선택합니다.
  4. 'Google Play 앱 서명' 옆의 수락을 선택합니다.
3단계: 서명된 앱 업로드
  1. 버전 준비 및 출시 단계를 따릅니다.
  2. 사용자에게 앱을 제공하기 전에 Google Play에서 업로드 키 서명을 삭제하고 새 키로 다시 서명합니다.
4단계: API 제공업체에 앱 서명 키 등록

앱에서 API를 사용하는 경우, 일반적으로 Google이 앱에 서명하는 데 사용하는 키의 인증서를 등록하여 인증해야 합니다. 이 과정은 보통 인증서 지문을 통해 진행됩니다.

Google에서 전송을 위해 내 APK에 다시 서명하는 데 사용하는 키의 인증서를 찾으려면 다음 단계를 따르세요.

  1. Play Console에 로그인합니다.
  2. 앱을 선택합니다.
  3. 왼쪽 메뉴에서 출시 관리 > 앱 서명을 클릭합니다.
  4. 이 페이지에서 앱 서명 인증서에 사용되는 가장 일반적인 지문(MD5, SHA-1, SHA-256)을 복사할 수 있습니다. API 제공자가 다른 유형의 지문을 요구하면 DER 형식의 원본 인증서를 다운로드하여 API 제공자가 요구하는 변환 도구를 사용하여 변환할 수 있습니다.

기존 앱

1단계: 프로그램에 등록

앱을 프로그램에 등록하려면 다음 단계를 따르세요.

  1. Play Console에 로그인합니다.
  2. 앱을 선택합니다.
  3. 왼쪽 메뉴에서 출시 관리 > 앱 서명을 클릭합니다.
  4. 서비스 약관을 검토하고 동의를 선택합니다.
2단계: Google에 원래 키 전송 및 업로드 키 만들기

Google Play에 원래 키를 업로드하고 업로드 키를 만들려면 다음 단계를 따르세요.

  1. 원래 앱 서명 키를 찾습니다.
  2. Play Console에 로그인합니다.
  3. 앱을 선택합니다.
  4. 왼쪽 메뉴에서 출시 관리 > 앱 서명을 클릭합니다.
  5. 화면의 지시에 따라 원래의 앱 서명 키를 전송합니다. 
    • 선택사항: 업로드 키를 생성하고 Google에 등록할 수도 있습니다.
  6. 다음 화면에 앱 인증서의 지문 파일이 표시됩니다.

업로드 키 정보

  • 업로드 키는 Google에만 등록되며 앱 제작자의 신원을 인증하는 데 사용됩니다.
  • 업로드 키는 사용자에게 전송되기 전에 업로드된 모든 APK에서 삭제됩니다.

업로드 키 제한사항

  • 업로드 키는 2048비트 이상의 RSA 키여야 합니다.
  • DSA 키, EC 키 또는 2048비트 미만의 RSA 키는 지원되지 않습니다.

업로드 키를 만들 때의 선택 단계

3단계: 키 저장소 업데이트

업로드 키를 만든 후 키 저장소를 업데이트합니다. 다음과 같은 위치에 업데이트해야 할 키 저장소가 있는지 확인합니다.

  • 로컬 기기
  • 잠긴 온사이트 서버(다양한 ACL)
  • 클라우드 기기(다양한 ACL)
  • 전용 비밀 관리 서비스
  • (Git) 저장소
4단계: 업로드 키로 다음 앱 업데이트 서명

기존 앱의 모든 업데이트는 이제 업로드 키로 서명되어야 합니다. 이렇게 해야 Google에서 내 신원을 확인할 수 있습니다. Google은 업데이트를 사용자에게 전송하기 전에 APK를 다시 서명합니다. 

앱의 업로드 키를 찾으려면 다음 단계를 따르세요. 

  1. Play Console에 로그인합니다.
  2. 앱을 선택합니다.
  3. 왼쪽 메뉴에서 출시 관리 > 앱 서명을 클릭합니다.

새 업로드 키 만들기

앱 서명에 등록했다면 다음과 같은 경우에 새로운 업로드 키를 만들 수 있습니다.

  • 비공개 키를 분실한 경우
  • 비공개 키가 해킹된 경우
  • 원래부터 기존 앱의 업로드 키를 만들지 않은 경우

참고: 업로드 키를 재설정해도 Google Play에서 APK를 사용자에게 제공하기 전에 다시 서명하는 데 사용하는 앱 서명 키는 영향을 받지 않습니다.

1단계: 새로운 비공개 키 생성 및 인증서 업로드

새 업로드 키를 생성하고 등록하려면 Android 스튜디오 고객센터의 안내를 따르세요. 새 키는 이전 키와 달라야 합니다.

그러고 나서 다음과 같이 새 키의 인증서를 PEM 형식으로 내보냅니다.

keytool -export -rfc -alias <upload> -file <upload_certificate.pem> -keystore <keystore.jks>

2단계: Google 지원팀에 문의

Google 지원팀에서는 Play Console 계정 소유자의 키 재설정 요청만 처리해 드립니다.

Google 지원팀에 문의하려면 계정 소유자가 이 양식을 작성해야 합니다. 이때 upload_certificate.pem 파일을 첨부하세요.

Google에서 새 업로드 키를 등록하면 이메일이 전송됩니다. 그러면 위에 설명된 단계에 따라 키 저장소를 업데이트하고 API 제공자를 등록할 수 있습니다.

이 도움말이 도움이 되었나요?
어떻게 하면 개선할 수 있을까요?