본문 바로가기
반응형

dev88

[프로젝트] S3 + CloudFront + Route53 1. AccessToken 탈취 시 RefreshToken을 이용한 재발급 과정 및 관리 전략 사용자가 로그인하면 AccessToken과 RefreshToken을 서버에서 발급한다.AccessToken은 HttpOnly 쿠키에 저장하여 XSS 공격을 방지하는 것이 바람직하다고 한다.RefreshToken도 HttpOnly 쿠키에 저장할 수 있지만, 보안상 세션 저장소(Redis, DB)에서 관리하는 방식도 고려 가능하다.RefreshToken이 클라이언트에 저장될 경우 CSRF 공격 위험이 존재하므로 SameSite 설정 등을 고려해야 한다.  AccessToken이 탈취되었다면 RefreshToken을 이용해 새로운 AccessToken을 발급해야 한다.하지만 RefreshToken도 탈취될 가능성이 .. 2025. 2. 9.
[Softeer - Lv3] 징검다리 문제남북으로 흐르는 개울에 동서로 징검다리가 놓여져 있다.이 징검다리의 돌은 들쑥날쑥하여 높이가 모두 다르다. 철수는 개울의 서쪽에서 동쪽으로 높이가 점점 높은 돌을 밟으면서 개울을 지나가려고 한다.돌의 높이가 서쪽의 돌부터 동쪽방향으로 주어졌을 때 철수가 밟을 수 있는 돌의 최대 개수는? 풀이이 문제는 간단한 DP문제로 arr 배열을 쭉 받은 이후에 기본적으로 밟는 횟수인 1로 설정을 한다.이후에 DP[i]와 DP[j]를 비교해서 arr[i]=dp[j]이면 Dp[j]=DP[i]+1로 갱신한다. 코드#include#include using namespace std;int arr[3001], dp[3001];int main(int argc, char** argv){ int n; cin >> n;.. 2025. 2. 7.
[Softeer - Lv3] 성적 평균 문제N명의 학생들의 성적이 학번순서대로 주어졌다.학번 구간 [A, B]가 주어졌을 때 이 학생들 성적의 평균을 구하는 프로그램을 작성하라. 풀이내가 눈이 침침한가 몇 자리수인지 눈이 안 보여서 배열을 잘 못 선언했더니 런타임 에러가 났다.간단하게 sum 배열 만들어주고 i 부터 j까지 합을 j-i+1로 나눠주면 된다.대신 %.2f로 두 자리 수까지 출력해주자. 코드#include using namespace std;int score[1010010];int sum[1010010];int main() { ios::sync_with_stdio(false); cin.tie(0); int n, k; cin >> n >> k; sum[0] = 0; for (int i = 1.. 2025. 2. 7.
[Softeer - Lv2] 바이러스 문제바이러스가 숙주의 몸속에서 1초당 P배씩 증가한다.처음에 바이러스 K마리가 있었다면 N초 후에는 총 몇 마리의 바이러스로 불어날까? N초 동안 죽는 바이러스는 없다고 가정한다. 풀이문제만 잘 읽어주면 된다.pow(p, n) 쓰고 싶지만 나눠줘야 해서 while로 풀었다. 코드#include#includeusing namespace std;int main(int argc, char** argv){ ios::sync_with_stdio(false); cin.tie(0); long long k, p, n; cin >> k >> p >> n; while(n--){ k*=p; k%=1000000007; } cout 2025. 2. 7.
[Softeer - Lv2] 8단 변속기 문제현대자동차에서는 부드럽고 빠른 변속이 가능한 8단 습식 DCT 변속기를 개발하여 N라인 고성능차에 적용하였다. 관련하여 SW 엔지니어인 당신에게 연속적으로 변속이 가능한지 점검할 수 있는 프로그램을 만들라는 임무가 내려왔다.당신은 변속기가 1단에서 8단으로 연속적으로 변속을 한다면 ascending, 8단에서 1단으로 연속적으로 변속한다면 descending, 둘다 아니라면 mixed 라고 정의했다.변속한 순서가 주어졌을 때 이것이 ascending인지, descending인지, 아니면 mixed인지 출력하는 프로그램을 작성하시오. 풀이간단하게 1 2 3 4 5 ... 냐 8 7 6 5 ...냐 물어보는 문제이다. 코드#includeusing namespace std;int arr[8];int mai.. 2025. 2. 7.
[프로젝트] 프론트엔드(React & Redux) 적용 1. NodeJS 설치먼저 프론트엔드에 앞서 NodeJS를 설치하여주자.나의 경우에는 Window11에서 nodeJS를 설치하였는데 링크를 클릭해서 다운받아주자.그리고 다운 받은 파일을 실행하고 설치 후 node -v 명령어를 통해서 노드 버전을 확인하면 끝이다. 하지만 여기서 끝이 아니다. react init 하는데 이래도 저래도 에러 발생하기 시작..그래서 결국 제어판으로 지우고  새로 다운 받기로 했다.이것저것 찾아보면서 삭제했다 다운받았다 반복했는데 아래 방법으로 하니까 잘 되었다. 링크에서 nvm-setup.exe 를 다운로드 하고 설치한 후 관리자 권한으로 아래 명령어를 입력해주자.nvm install 18.17.1nvm use 18.17.1 이후에 npx create-react-app tes.. 2025. 2. 7.
반응형