Development/Java

Development/Java

Java 에서 RSA 복호화 시 Decryption error

Android에서 RSA 암호화 후 암호화한 데이터를 서버로 보내서 복호화를 하려고 하는데 계속해서 오류가 났다,,, BadPaddingException: Decryption error 나 같은 경우에는 클라이언트에서 RSA 키 쌍 생성 후에 공개 키(Public Key)는 서버에 저장, 개인 키(Private Key) 는 암호화 후 클라이언트에 저장을 했다. 공개 키나 암호화 한 데이터를 전달할 때 인코딩하면서 문제가 생긴건가 싶어서 Android 와 서버에서의 값을 모두 비교해봤지만 전부 동일했고, 심지어 Android 에서 바로 복호화 했을 때는 정상적으로 복호화가 되었다...! [Android] public static String encrypt(String plainText, String st..

Development/Java

Java Base64 Decode 시 "illegal base64 character a"

RSA 암호화를 이용한 모바일 앱과의 인증절차 기능 개발 도중 Android 앱에서 넘긴 Base64 인코딩 문자열을 Java 에서 Base64.getDecoder().decode() 를 사용하여 디코딩하려는데 Exception 이 발생했다. java.lang.IllegalArgumentException: Illegal base64 character a 찾아보니까 Base64로 디코딩 하려는 문자열에 개행(줄 바꿈)이 되어 있어서 나는 오류라더라... String.replaceAll("\\r\\n|\\r|\\n","") replaceAll() 메서드를 이용해서 개행 특수 문자를 빈 값으로 변경해 주면 해결된다.