본문 바로가기
CODE/Flutter

[Flutter] Kakao key hash 등록하기

by Nuridal_class 2023. 12. 27.
728x90
728x90

 Flutter에서 Kakao key hash 사용해 보기

개발을 할 때 카카오 인증, 카카오 로그인, 카카오 네비, 카카오 지도 등..
카카오와 관련된 기능을 사용하기 위해서는 kakao 키 해시를 등록해 주어야기능들의 API를 호출할 수 있는데
이번 포스팅으로 kakao 키 해시를 등록하는 방법에 대해 간략히 설명해 보겠습니다
💡 이번 포스팅에서는 카카오 개발자에서 애플리케이션을 등록하고 있는 상태라고 가정하겠습니다

 

키 해시 등록하기

애플리케이션 등록에서 API를 호출하기 위해서는 키 해시를 등록해주어야 하는데
디버그 키 해시릴리즈 키 해시로 나뉘게 됩니다

 

 터미널에서 디버그 키 해시 등록하기

디버그 키 해시는 아래와 같이 Window 터미널에서 명령어를 입력해 줍니다
keytool -exportcert -alias androiddebugkey -keystore %USERPROFILE%\.android\debug.keystore -storepass android -keypass android | openssl sha1 -binary | openssl base64
✍ 여기에서 % USERPROFILE% 부분C:\Users\사용자명이 되겠습니다
androiddebugkey는 alias이므로 바꾸셔도 됩니다
openssl은 openssl.exe가 설치된 경로를 적어주시면 됩니다
      ex) C:\OpenSSL-Win64\bin

💡 예시문으로 하나 만들면 아래와 같습니다
keytool -exportcert -alias androiddebugkey -keystore C:\Users\사용자명\.android\debug.keystore -storepass android -keypass android | C:\OpenSSL-Win64\bin\openssl sha1 -binary | C:\OpenSSL-Win64\bin\openssl base64
그런데 만약 openssl은... 하면서 오류가 발생했다면 openssl을 설치해주셔야 합니다
아래의 링크에서 적절한 OpenSSL을 설치해 주시면 됩니다
 

Win32/Win64 OpenSSL Installer for Windows - Shining Light Productions

Minimum system requirements: Windows XP or later 32MB RAM 200MHz CPU 30MB hard drive space Recommended system requirements: Windows XP or later 128MB RAM 500MHz CPU 300MB hard drive space November 30, 2023 - OpenSSL 3.2 is available. Users should currently

slproweb.com

정상적으로 키 해시가 만들어졌으면 아래와 같이 나올 것입니다
이젠 만들어진 디버그 키 해시를 내 애플리케이션 > 앱 설정 > 플랫폼 > 키 해시 란에 기입해 주면 됩니다

 

 터미널에서 릴리즈 키 해시 등록하기

릴리즈 키 해시를 만드는 명령어는 아래와 같습니다
keytool -exportcert -alias <RELEASE_KEY_ALIAS> -keystore <RELEASE_KEY_PATH> | openssl sha1 -binary | PATH_TO_OPENSSL_LIBRARY\bin\openssl base64
<RELEASE_KEY_ALIAS> 부분은 별칭입니다
<RELEASE_KEY_PATH>jks 파일이 있는 경로입니다
✍ opensslPATH_TO_OPENSSL_LIBRARY\bin\opensslopenssl.exe가 설치된 경로를 적어주시면 됩니다
      ex) C:\OpenSSL-Win64\bin

릴리즈 키 해시 등록하기 👉 jks 파일 만들기

💡 그런데 여기에서 jks 파일은 뭐지?
    정의는 Java 기반의 독자 인증서 바이너리 포맷이다 (이 안에 개인키, 서버인증서 등.. 모두 담을 수 있다)
    하지만 복잡하니 릴리즈 키를 만들기 위해선 jks 파일을 먼저 만들어야 한다는 것만 알고 있으십시다

✍ jks 파일 만드는 방법
      터미널 창에서 아래와 같이 명령어를 입력하면 됩니다
keytool -genkey -v -keystore 사용자지정.jks -keyalg RSA -keysize 2048 -validity 1000 -alias 사용자별칭

✍ 옵션 설명
- genkey : Keystore 파일을 생성하는 명령
- v : 상세한 정보를 표시
- keystore : Keystore 파일의 이름을 지정
- keyalg : Keystore 파일에 사용할 암호화 알고리즘을 지정
- keysize : Keystore 파일에 사용할 키의 크기를 지정 ( 단위는 바이트 )
- validity : Keystore 파일의 유효 기간을 지정하는 옵션 ( 단위는 일 )
- alias : Keystore 파일에서 사용할 키의 별칭을 지정
위의 명령어를 토대로 입력하면 비밀번호와 함께 여러 질문을 하는데 기입해 주면 됩니다
여기에서는 비밀번호를 까먹지 않도록 조심합시다!
그리고 다 만들면 저장하는 중 하고 해당 경로로 가면 만들어져 있는 것을 확인할 수 있습니다

만들었다면 위에 릴리즈 키 해시 명령어를 사용하여 만들어 줍니다
마찬가지로 만들어진 릴리즈 키 해시내 애플리케이션 > 앱 설정 > 플랫폼 > 키 해시 란에 기입해 주면 됩니다

릴리즈 키 해시 등록하기 👉 구글 스토어 마켓에 등록했을 경우

💡 그런데 여기서 만약!!
     구글 스토어 마켓에 등록을 했다면 변환된 새로운 릴리즈 키를 사용해야 한다     
     그때에는 구글 플레이 콘솔에 접속해서 본인이 만든 앱 > 설정 > 앱 서명으로 들어갑니다
     SHA-1 인증서 지문이 보일 것입니다
     복사한 뒤에 아래와 같은 코드로 변환을 해줍니다
echo <SHA-1 인증서 지문> | xxd -r -p | openssl base64​

 


변환을 해주면 마찬가지로 변환된 릴리즈 키 해시내 애플리케이션 > 앱 설정 > 플랫폼 > 키 해시 란에 기입 


이번 포스팅으로 kakao 개발자 기능들을 사용하기 위해서

키 해시를 등록하는 방법에 대해서 알아보았습니다

그럼 쭉쭉 카카오 개발자 기능들을 사용하기 위해 달려보겠습니다

코딩이 쉬워지는 그날까지!!

728x90
300x250