요새 보안이슈 때문에 회사 시스템을 모두 수정하고 있다.
개인정보란 개인정보는 모두 마스킹을 하고 있다.
DB에 암호화 되어 있는 휴대폰 정보를 평문으로 복호화 한 후 뷰페이지에 뿌리기 전에 휴대폰 번호를 마스킹 처리 해야 한다.
프로젝트의 Util.java에 넣어서 사용하면 좋을듯 하다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | /** * 휴대폰 번호 마스킹(010****1234 / 011***1234) * @param phoneNumber * @return */ public static String maskPhoneNumber(String phoneNumber){ String maskedPhoneNum = phoneNumber; // 공백제거 maskedPhoneNum = maskedPhoneNum.replaceAll(" ", ""); // '-'가 포함되어있으면 모두 삭제 if(maskedPhoneNum.contains("-")){ maskedPhoneNum = maskedPhoneNum.replaceAll("[^0-9]", ""); } // 11자리 또는 10자리가 되지 않으면 공백 "" if(maskedPhoneNum.length() > 11 || maskedPhoneNum.length() < 10){ maskedPhoneNum = ""; }else{ // 11자리 휴대폰 번호 마스킹 처리 if(maskedPhoneNum.length() == 11){ String num1 = maskedPhoneNum.substring(0, 3); String num3 = maskedPhoneNum.substring(7); maskedPhoneNum = num1 + "****" + num3; // 10자리 휴대폰 번호 마스킹 처리 }else if(maskedPhoneNum.length() == 10){ String num1 = maskedPhoneNum.substring(0, 3); String num3 = maskedPhoneNum.substring(6); maskedPhoneNum = num1 + "***" + num3; } } return maskedPhoneNum; } | cs |
'Java' 카테고리의 다른 글
[Lombok] 반복되는 코드작업을 해결해주는 코드 다이어터 롬복 (0) | 2020.06.09 |
---|---|
[Java]java.lang.UnsupportedClassVersionError... Unsupported major.minor version 52.0 (0) | 2018.02.09 |
[Java]이름 마스킹 처리 (0) | 2018.02.08 |