[JAVA] com.notnoop.exceptions.InvalidSSLConfig: Given final block not properly padded

[JAVA] com.notnoop.exceptions.InvalidSSLConfig: Given final block not properly padded

자바 APNS(Apple Push Notifications Service) 푸시 연동 코드에서 아래 오류가 발생한 경우

com.notnoop.exceptions.InvalidSSLConfig: java.io.IOException: failed to decrypt safe contents entry: javax.crypto.BadPaddingException: Given final block not properly padded

(중략)

Caused by: java.io.IOException: failed to decrypt safe contents entry: javax.crypto.BadPaddingException: Given final block not properly padded

(중략)

Caused by: javax.crypto.BadPaddingException: Given final block not properly padded

애플 푸시 인증서의 비밀번호가 틀린 경우였다.

맥OS 키체인에서 새로 발급받은(또는 만료가 되지 않은) 푸시 인증서를 .p12  확장자 파일로 내보내기해서 가져올 때 비밀번호를 설정하라는 메시지가 표시되는데, 이때 입력한 메시지와 자바 클래스에서 인증서에 접근할 때 사용하는 비밀번호가 불일치하는 경우였다.

확장자 .p12 인증서를 올바른 비밀번호로 다시 내보내기하고, 기존 자바 클래스가 바라보는 .p12파일을 새로 가져온 .p12 파일로 교체해서 해결했다.