From 808d68c6f49093fef085ab6f0c35b138586490b5 Mon Sep 17 00:00:00 2001 From: bbbang105 <2018111366@dgu.ac.kr> Date: Sun, 16 Jun 2024 15:39:09 +0900 Subject: [PATCH] =?UTF-8?q?#33=20[feat]=20:=20=EC=97=85=EB=B9=84=ED=8A=B8?= =?UTF-8?q?=20=EC=A3=BC=EB=AC=B8=20=EC=9A=94=EC=B2=AD=20Jwt=20=ED=86=A0?= =?UTF-8?q?=ED=81=B0=20=EB=B0=9C=EA=B8=89=20=EA=B8=B0=EB=8A=A5=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/org/dgu/backend/util/JwtUtil.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/backend/src/main/java/org/dgu/backend/util/JwtUtil.java b/backend/src/main/java/org/dgu/backend/util/JwtUtil.java index b8cce07..08854ac 100644 --- a/backend/src/main/java/org/dgu/backend/util/JwtUtil.java +++ b/backend/src/main/java/org/dgu/backend/util/JwtUtil.java @@ -78,6 +78,23 @@ public String generateUpbitToken(UpbitKey upbitKey) { .compact(); } + // 업비트 주문 요청 위한 토큰을 발급하는 메서드 + public String generateUpbitOrderToken(UpbitKey upbitKey, String queryHash) { + PrivateKey privateKey = encryptionUtil.getDecryptedPrivateKey(upbitKey.getPrivateKey()); + String accessKey = encryptionUtil.decryptAndEncode(upbitKey.getAccessKey(), privateKey); + String secretKey = encryptionUtil.decryptAndEncode(upbitKey.getSecretKey(), privateKey); + + log.info("업비트 주문 요청 API 토큰이 발행되었습니다."); + + return Jwts.builder() + .claim("access_key", accessKey) + .claim("nonce", UUID.randomUUID().toString()) + .claim("query_hash", queryHash) + .claim("query_hash_alg", "SHA512") + .signWith(getUpbitSigningKey(secretKey)) + .compact(); + } + // 응답 헤더에서 액세스 토큰을 반환하는 메서드 public String getTokenFromHeader(String authorizationHeader) { return authorizationHeader.substring(7);