[안드로이드 스튜디오] 키스토어 생성 / 앱에 서명 / 서명된 apk 획득
- 안드로이드
- 2020. 6. 21. 23:00
앱을 배포하기 위해선 (플레이스토어에 등록하기 위해선) apk 에 꼭 서명을 해야한다. 키스토어를 생성, 앱에 서명을 해 서명된 apk와 jks 파일을 획득하는 과정과 keytool을 사용해 서명된 앱과 키스토어 파일에서 서명값을 확인하는 방법을 알아본다.
키스토어 생성 / 앱에 서명 / 서명된 apk 획득
안드로이드 스튜디오의 Build>Generate Signed Bundle / APK... 를 클릭한다.
그리고 APK를 체크한 후 Next를 클릭한다.
키스토어를 생성하기 위해 Create new를 클릭한다. 키스토어 파일은 인증서라고 생각하면 된다.
Key store path에서 아래 네모박스의 열기버튼을 클릭한다.
키스토어를 생성할 경로를 선택한 뒤 FileName에 파일명을 입력해준다.
그리고 나머지 항목들을 채워준 후 OK를 눌러준다. 특히 키스토어 파일도 마찬가지이긴 하지만 비밀번호는 절대 잊어버리면 안되므로 꼭 기억해둔다.
그럼 아래와 같이 이전 화면으로 돌아오고 필요한 항목들은 자동으로 다 채워진다. Next를 클릭한다.
realse를 선택한 후 Signature Versions에서 V1과 V2를 전부 체크해 Jar와 APK에 전부 서명할 것임을 명시하고 Finish를 눌러준다.
몇분정도 지나면 'Generate Signed APK' 창이 뜬다.
그리고 아래와 같이 서명된 app-relase apk 파일을 볼 수 있다.
앱 서명 / 키 서명 확인
앱에 서명하는 과정을 진행해보았는데, 반대로 서명된 앱을 구했을 때 앱의 서명을 확인하고 싶을 수도 있을 것이다. (자바 jdk가 설치되어 있고 자바 환경변수도 등록되어 있다는 가정 하에 진행하자면) %JAVA_HOME%bin 에 keytool.exe가 있다.
앱의 서명값을 확인하려면 아래와 같이 keytool을 사용한다.
keytool.exe -printcert -jarfile [apk]
키의 서명값을 확인하려면 아래와 같이 keytool을 사용한다.
keytool.exe -list -v -keystore [jks]
'안드로이드' 카테고리의 다른 글
[인시큐어뱅크] 앱 위변조, 리패키징 (Repackaging) 취약점 (0) | 2020.04.20 |
---|---|
[인시큐어뱅크] 안드로이드 메모리 덤프 취약점 (0) | 2020.04.19 |
[인시큐어뱅크] 안드로이드 SD 카드 저장 취약점 (0) | 2020.04.18 |
[인시큐어뱅크] 개발자 백도어 (Developer Backdoors) 취약점 (0) | 2020.04.18 |
[인시큐어뱅크] HTTP 통신 및 파라미터 조작 취약점 (0) | 2020.04.18 |