From 8cc6f775db4f0e36d5e183c3fdf65cb4dfb2fea2 Mon Sep 17 00:00:00 2001 From: Rinjae Date: Wed, 24 Jun 2026 16:55:59 +0900 Subject: [PATCH] =?UTF-8?q?DB=20=EB=B3=B5=ED=98=B8=ED=99=94=20=EB=A1=9C?= =?UTF-8?q?=EC=A7=81=20=EA=B0=9C=EC=84=A0:=20=EB=94=94=EB=B2=84=EA=B7=B8?= =?UTF-8?q?=20=EB=A1=9C=EA=B7=B8=EC=97=90=20=ED=99=80=EC=88=98=20=EA=B8=80?= =?UTF-8?q?=EC=9E=90=20=EB=A7=88=EC=8A=A4=ED=82=B9=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jpa/PersonalDataEncryptConverter.java | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/eactive/apim/portal/jpa/PersonalDataEncryptConverter.java b/src/main/java/com/eactive/apim/portal/jpa/PersonalDataEncryptConverter.java index 7561545..1824d24 100644 --- a/src/main/java/com/eactive/apim/portal/jpa/PersonalDataEncryptConverter.java +++ b/src/main/java/com/eactive/apim/portal/jpa/PersonalDataEncryptConverter.java @@ -68,7 +68,22 @@ public class PersonalDataEncryptConverter implements AttributeConverter {}", dbDataOriginal, dbData); + if (log.isDebugEnabled()) { + // 복호화 결과(평문) 홀수 글자 마스킹 + String maskedDbData = dbData; + if (StringUtils.isNotEmpty(dbData)) { + StringBuilder sb = new StringBuilder(); + for (int i = 0; i < dbData.length(); i++) { + if (i % 2 == 0) { + sb.append(dbData.charAt(i)); + } else { + sb.append("*"); + } + } + maskedDbData = sb.toString(); + } + log.debug("DB 복호화 : {} -> {}", dbDataOriginal, maskedDbData); + } return dbData; }