본문 바로가기

푸로그래밍/JAVA

[JAVA, Kotlin] OkHttp3 인증서 신뢰 문제가 생겼다. javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: 인증서 악수에 실패했다고 한다. Java환경에서 OKHttp3를 사용할 때 여러가지 사유로 인하여 인증서를 신뢰시켜줘야 하는 경우가 있다. 해당 경우에 사용할 수 있는 전체 인증서에 대해서 true를 줘버리는 무지막지한 코드이다. Kotlin에 대해서는 맨 마지막에 작성하였다. // x509 "신뢰" 관리자 선언 및 implement X509TrustManager x509 = new X509TrustManager() { @Override public void checkClientTrusted(X509.. 더보기
[JAVA] File MD5 checksum File의 무결성을 검증하기 위하여 MD5 checksum을 사용할 일이 있을 수 있다. 인터넷의 어딘가에서 줏어다가 썼는데, 앞자리가 0인 경우에 0이 사라지고 31글자로 처리되는 경우가 있어서 이 부분을 String.format %032x를 사용하는 방식으로 처리하여 정리해 놓는다. byte[] data = Files.readAllBytes(file.toPath()); byte[] hash = MessageDigest.getInstance("MD5").digest(data); String checksum = String.format("%032x", new BigInteger(1, hash)); 더보기
[JAVA] 정규표현식 사용 방법 - 2 (Pattern, Matcher) 이 글은 [JAVA] 정규표현식 사용 방법 - 1 에서 이어지는 글이다. Method 유효성 검사 가능 여부 문자열 재조합 가능 여부 기타 String.match 가능 불가능 일치 여부에 따라서 boolean값 반환 String.replaceAll 가능 가능 해당 표현식에 부합하는 부분을 치환(교체) String.replaceFirst 가능(replaceAll과 동일) 제한적(replaceAll 하위호환) 해당 표현식에 부합하는 부분을 치환(교체), 첫번째만 String.split 가능 가능 해당 표현식에 부합하는 부분을 기준으로 배열로 나눈다. Pattern & Matcher 가능 가능 다됨 String.match, String.replaceAll, String.replaceFirst, String.s.. 더보기
[JAVA] 정규표현식 사용 방법 - 1 (String.match, String.replaceAll, String.replaceFirst, String.split) 이번 글에서는 Java에서 정규표현식을 사용하는 방법에 대해서 이야기하려고한다. 사실 정규표현식은 대부분의 여러 프로그래밍 언어에서 사용할 수 있도록 되어있다. 그래서 이름도 정규표현식이다. 사실 정규표현식은 대부분의 여러 프로그래밍 언어에서 사용할 수 있도록 되어있다. 그래서 이름도 정규표현식, Regular Expression인것이다. 이 글에선 Java에서의 사용에 대해 정리한다. 웹이든 앱이든 어플리케이션을 제작할 때 사용자 입력으로부터 유효성 검증을 받을 때 정규표현식을 사용한다. ["Java 정규표현식 사용법", "PHP 정규표현식 사용법"] 이런식으로 검색해서 찾으면, 아주 많은 다른사람들이 써놓은 글들이 나타난다. 그런데 사람사람마다 사용한 매소드, 함수들이 다르고 구현 방식들이 달라서 처.. 더보기