본문 바로가기

내가 마주치는 Error들/JAVA

sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target 해결기(1)

카카오 간편 로그인을 구현하면서 마주쳤던 error에 대해 정리하면서 다시 상기시키기 위해 작성한다.

발생 상황

메인 시스템에서 https://kaip.kakao.com으로 로 시작하는 API를 호출할때 마주쳤다.

해결 실마리 찾기

분명 같은 error을 마주쳤던 다양한 사람들이 존재할것이라 생각했고 kakao developer에서 해당 에러를 기반으로 검색한후 다음과 같은 글을 발견했다. 

https://devtalk.kakao.com/t/rest-api-pkix-path-building-failed/120588

 

카카오 로그인, (REST API) , PKIX path building failed

로그인 토큰 정보를 가져오려고 하는데 다음과 같은 오류 메세지가 나옵니다. sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid c

devtalk.kakao.com

해결법

결국 여러가지 요인을 고려했을때, Root CA인증서를 직접 추가하기로 결정하였습니다.

해결을 위해 알아야 하는 내용들

Root CA인증서를 추가하기 위해서는 다음과 같이 알아야 하는 내용이 있다고 생각했습니다.

  • SSL인증서란 무엇일까?
  • Root CA란 무엇일까?
  • Java CA 인증서란?
  • JAVA CA인증서에 Root CA인증서 추가
  • Java Ca 인증서 추가하기

Root CA란 무엇일까?

알기 위해서 보았던 자료 : https://brunch.co.kr/@sangjinkang/47

 

ROOT CA 인증서는 무엇인가?

SSL 인증서 체인의 최상단, ROOT CA | 중요한 데이터를 다루는 대부분의 웹 사이트들은 HTTPS(HTTP Secure)를 사용하고 있습니다. SSL 인증서는 HTTPS 통신을 통해 웹 사이트의 콘텐츠가 브라우저에 전송되

brunch.co.kr

Java Ca인증서란?

https://blog.voidmainvoid.net/372

 

인증서란? openJDK의 cacerts 설명

인증서(Certificate) 디지털 인증서라고도 부른다. 유저 -> 브라우저 또는 서버 -> 서버 간에 암호화된 연결을 수립하는데 사용된다. 인증되지 않는 사용자의 네트워크 데이터 탈취를 막기 위한 용도

blog.voidmainvoid.net

JAVA CA인증서에 Root CA인증서 추가

https://cert.crosscert.com/ssl%EC%9D%B8%EC%A6%9D%EC%84%9C-java-ca%EC%9D%B8%EC%A6%9D%EC%84%9C%EC%97%90-%EB%A3%A8%ED%8A%B8-%EC%9D%B8%EC%A6%9D%EC%84%9C-%EC%B6%94%EA%B0%80%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95/

 

SSL인증서 JAVA CA인증서에 루트 인증서 추가하는 방법 - SSL 인증서 발급,종류,가격비교 | 한국전자

안녕하세요 한국전자인증 입니다. ​ JAVA CA인증서에 루트 인증서 추가하는 방법을 알려드립니다. 서버는 클라이언트에게 인증서를 전달해주며, 클라이언트는 서버로부터 전달받은 인증서를 루

cert.crosscert.com

Java Ca 인증서 추가하기

https://www.sslcert.co.kr/guides/kb/47

 

Java 환경의 루트 인증서 보유 확인 및 추가 방법 - SecureSign

Java 환경의 루트 인증서 보유 확인 및 추가 방법 - SecureSign

www.sslcert.co.kr

보았던 자료를 기반으로 정리한 블로그 글 :