APK 서명 체계 v3는 키 순환을 지원합니다.

APK 서명 체계 v3이 Android 오픈 소스 프로젝트에서 발견되었으며 키 순환을 지원하는 것으로 보입니다.

개발자이거나 수정된 ​​APK 파일을 디컴파일, 수정 및/또는 설치하는 데 어떤 방식으로든 익숙하다면 아마도 애플리케이션 서명에 익숙할 것입니다. 간단히 말해서 Android에서는 앱이 ~ 해야 하다 시스템에서 문제의 앱 업데이트를 허용하려면 동일한 키로 서명해야 합니다. Android는 APK 서명을 확인하여 이를 확인합니다.

APK 서명 이전에 이야기한 Android의 매우 기본적인 보안 조치입니다. 기본적으로 모든 서명은 특정 개발자 또는 개발자 그룹에 고유하므로 APK의 서명/인증서가 유효하지 않거나 원래 앱과 일치하지 않으면 설치가 실패하므로 Android에 변조되거나 가짜 APK 파일이 설치되는 것을 방지할 수 있습니다. 장치. 서명 키는 앱 업데이트를 확인하고 최종적으로 푸시하는 데 필수적이므로 개발자가 안전하게 보관해야 합니다. 다행스럽게도 APK 서명을 위한 서명 체계가 또 다른 개정판인 v3를 받고 있습니다. 이는 높은 보안 표준을 유지하면서 편리한 기능을 추가하는 것으로 보입니다.


APK 서명 체계 v1 및 v2

현재 APK 서명 체계 버전 v2가 출시된 지 그리 오래되지 않았습니다. 개발자용으로 출시되었습니다. 결국 2016년 말 Android 7.0 Nougat가 출시되면서 우리에게 거의 소개되지 않았습니다. Android 7.0+ 앱에서 v2 서명 체계를 사용하는 것은 일련의 필수 패치와 업데이트를 제공하므로 적극 권장됩니다. 보안 개선: v1은 JAR에만 서명했지만 v2는 전체의 무결성을 보호하기 위한 추가 조치를 취합니다. 파일. 그러나 서명 체계는 이전 버전과 호환되지 않으며 Android Marshmallow 이하에서는 앱에 v1 서명이 필요합니다.

APK 검증 프로세스. 출처: 구글.

구체적으로 Nougat 이상의 사용자를 대상으로 하는 것이 아니라면 v1로 먼저 서명한 다음 v2로 사임하여 두 서명 체계를 나란히 사용하는 것이 이상적인 시나리오입니다. 이런 방식으로 Nougat 이상에서는 v2 서명을 인식하고 Marshmallow 이하에서는 v1 서명을 인식합니다.

그러나 v1만 사용하는 것은 일련의 취약점과 기타 보안 문제로 인해 크게 권장되지 않습니다. 그 중 가장 주목할만한 것은 야누스 취약점이를 통해 공격자는 서명에 영향을 주지 않고 APK를 직접 공격하고 수정할 수 있습니다. Instagram이나 Snapchat과 같이 업데이트가 자주 발생하지 않는 인기 앱은 v1 서명으로만 서명되므로 이러한 문제에 취약합니다.

인기 있는 소셜 미디어/결제 앱의 APK 서명 버전을 확인합니다.

APK 서명 체계 v3

v2의 개정판인 v3의 가장 큰 헤드라인 기능은 다음과 같습니다. 키 순환 지원. 그만큼 v3 서명 체계 APK 서명자 계보를 소개합니다. 커밋 중 하나, "에는 후손의 유효성을 증명하는 각 조상과 인증서에 서명 한 이력이 포함되어 있습니다. 각 추가 하위 항목은 APK에 서명하는 데 사용할 수 있는 새로운 ID를 나타냅니다. 이러한 방식으로 계보에는 이를 포함하는 APK가 다른 사용자에게 보여줄 수 있는 회전 증명이 포함되어 있습니다. 마치 이전 인증서 중 하나가 서명한 것처럼 현재 서명 인증서로 신뢰할 수 있는 능력 것들."

키 순환은 여러 면에서 개발자에게 훌륭한 기능입니다. 우선, 이는 단일 앱을 위해 작업하는 팀의 개발자에게 유용할 수 있으므로 개발자는 서명 키를 팀과 공유할 필요가 없습니다. 앱을 업데이트하려면 동일한 서명이 필요하므로 현재 모든 앱은 동일한 개발자 또는 그룹에 의해 컴파일되어야 합니다. 개발자가 동일한 키를 사용하여 작업하면 안전성이 떨어지고(키가 도난당할 확률이 높아짐) 개발 속도가 느려집니다.

또한 개발자가 서명 키를 도난/분실한 경우에도 유용할 수 있습니다. 이는 일반적으로 앱을 다른 패키지로 Play 스토어에 다시 업로드해야 함을 의미합니다. 이름. 이는 전혀 드문 경우가 아닙니다. 오래 전에 Google조차도 Google Authenticator 앱의 서명 키를 잃어버려서 다른 패키지 이름으로 다시 게시하게 되었기 때문입니다. 그 이후로 Google은 서명 키를 클라우드에 안전하게 저장할 수 있는 수단을 제공했습니다. Google Play 앱 서명, 그러나 키 순환을 사용하면 가상의 문제가 발생하는 경우에도 앱을 계속 업데이트할 수 있습니다.

언제 출시되나요?

추가적인 편의성을 위해 시험해 보고 싶을 수도 있지만 v3 서명 체계가 AOSP 주변에 떠다니는 것이 발견되었습니다. Gerrit Code Review 사이트와 커밋 자체가 현재 메인 브랜치에 병합되지 않았으므로 아직 준비가 되지 않았습니다. 아직. Android Nougat의 이전 v2 릴리스에서 알 수 있는 내용이 있다면 다가오는 Android P 릴리스에서 v3 서명 체계가 개발자의 손에 들어갈 것으로 예상해야 합니다.

또한 v2와의 유일한 차이점은 키 순환이 아닐 가능성이 높다는 점에 유의해야 합니다. APK 서명 체계 v3은 아직 진행 중인 작업이므로 향후 전체 문서가 나올 때 v3 서명 체계의 실제 개선 사항을 확인하게 될 것입니다.