Skip to content

Commit

Permalink
#33 [feat] : 해시 유틸 추가
Browse files Browse the repository at this point in the history
  • Loading branch information
bbbang105 committed Jun 17, 2024
1 parent 0c1eac0 commit e98ac51
Showing 1 changed file with 30 additions and 0 deletions.
30 changes: 30 additions & 0 deletions backend/src/main/java/org/dgu/backend/util/HashUtil.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
package org.dgu.backend.util;

import java.io.UnsupportedEncodingException;
import java.math.BigInteger;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.List;
import java.util.Map;
import java.util.ArrayList;

public class HashUtil {
public static String buildQueryString(Map<String, String> params) {
List<String> queryElements = new ArrayList<>();
for (Map.Entry<String, String> entry : params.entrySet()) {
queryElements.add(entry.getKey() + "=" + entry.getValue());
}
return String.join("&", queryElements);
}

public static String generateQueryHash(String queryString) {
try {
MessageDigest md = MessageDigest.getInstance("SHA-512");
md.update(queryString.getBytes("UTF-8"));
byte[] hashBytes = md.digest();
return String.format("%0128x", new BigInteger(1, hashBytes));
} catch (NoSuchAlgorithmException | UnsupportedEncodingException e) {
throw new RuntimeException("SHA-512 해시 생성 실패: " + e.getMessage(), e);
}
}
}

0 comments on commit e98ac51

Please sign in to comment.