이 포스트는 데어 프로그래밍님의 유튜브 강의를 듣고 나서 정리한 글입니다. CIA CIA(Confidentiality Integrity Availability) Confidentiality(기밀성) 개인정보, 민감한 정보 등을 인가된 사용자에게만 허가 Integrity(무결성) 내용의 변경이나, 훼손없이 정확하게 보존 Availability(가용성) 항상 정상적으로 신뢰성 있는 서비스를 할 수 있는 상태 예를 들어, A나라, B나라, C나라가 있다고 가정해봅시다. A나라가 B나라에게 문서를 전달하는데, 중간에서 C나라가 그 문서를 탈취했습니다. -> 기밀성이 깨짐 A나라가 B나라에게 문서를 전달하는데, 이번에는 C나라가 위조된 문서를 전달시켰습니다. -> 무결성이 깨짐 B나라는 A나라가 보내준 문서를 잘..
이 포스트는 데어 프로그래밍님의 유튜브 강의를 듣고 나서 정리한 글입니다. OSI 7 계층과 TCP에 대해서 간략하게 이해해보는 시간을 가져보겠습니다. OSI 7 계층 통신에는 OSI 7 계층이 있습니다. 예를 들어, 내가 어떤 게임에서 A 스킬을 쓴다고 했을 때, 해당 게임회사 서버까지의 전송을 예로 들어보겠습니다. Application: 해당 게임 프로그램을 의미합니다. Presentation: 내가 A 스킬을 쓴다는 내용을 암호화해서 보냅니다. (또는, 사진 같은 것들을 보낼 때 압축을 해서 보내기도 합니다.) Session: 인증 체크 (내가 보낼 수 있는지에 대한 체크 : 상대방 컴퓨터가 켜져있는지, 내가 상대방 컴퓨터에 접근을 할 수 있는지 등) Transport: TCP/UDP 통신 여부 결..
이 포스트는 데어 프로그래밍님의 유튜브 강의를 듣고 나서 정리한 글입니다. 클라이언트가 서버에 최초 접근한 경우 요청 헤더에 세션 ID를 들고 접근한 경우 그럼 이 세션만 있으면 계속 접근이 가능한가? 아니다. 세션이 날라가는 시점이 있다. 1. 서버에서 강제로 Session을 날린다. 2. 사용자가 브라우저를 종료할 때 3. Session 만료 시간이 됐을 때 (보통 30분으로 둔다) 세션 로그인 요청 / 인증 로직 처음 로그인 요청을 합니다. 사용자 ID, PW를 확인하여 사용자가 맞는지 확인합니다. 세션ID를 생성합니다. 사용자에게 응답 헤더에 세션ID를 담아서 응답합니다. 세션ID를 웹 브라우저에 저장합니다. 이제 세션ID를 헤더에 담아서 요청을 합니다. 서버에서는 세션ID가 있으니, 세션 저장소..
문제 : Security 로그인에 성공을 하면 내가 설정해둔 url로 redirect가 되지 않고 .css 파일이나 image파일로 이동한다. 문제점: Security config에서 js 또는 css 폴더를 허용해주지 않았기 때문에 문제의 원래 코드 @Override protected void configure(HttpSecurity http) throws Exception { http .authorizeRequests() .anyRequest().authenticated() .and() .formLogin() .loginPage("/login") .permitAll() .defaultSuccessUrl("/") .and() .logout() .logoutSuccessUrl("/") .and() .cs..
https://www.acmicpc.net/problem/9465 9465번: 스티커 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스의 첫째 줄에는 n (1 ≤ n ≤ 100,000)이 주어진다. 다음 두 줄에는 n개의 정수가 주어지며, 각 정수는 그 위치에 해당하는 스티커의 www.acmicpc.net ✏️ 문제 🔐 문제 해결 해당 문제는 2xN 스티커가 주어졌을 때, 스티커를 골라 가장 높은 점수의 합을 구하는 문제입니다. 이때 고른 스티커의 좌,우,상,하 스티커는 선택할 수 없게 됩니다. 원래 이 문제는 가로로 arr[0][0] -> arr[0][1] ... -> arr[1][N] 이런 식으로 진행하면서 계산하려 했더니 실패하여서 세로 (arr[0][1] -> arr[1][1] -..
https://www.acmicpc.net/problem/15486 15486번: 퇴사 2 첫째 줄에 N (1 ≤ N ≤ 1,500,000)이 주어진다. 둘째 줄부터 N개의 줄에 Ti와 Pi가 공백으로 구분되어서 주어지며, 1일부터 N일까지 순서대로 주어진다. (1 ≤ Ti ≤ 50, 1 ≤ Pi ≤ 1,000) www.acmicpc.net ✏️ 문제 해당 문제는 백준 14501번 (DFS) - 퇴사 문제와 같지만, 시간 복잡도가 O(N) 으로 해결을 해야 통과할 수 있는 문제입니다. 14501번: 퇴사 첫째 줄에 백준이가 얻을 수 있는 최대 이익을 출력한다. www.acmicpc.net 🔐 문제 해결 이번에는 DP로 문제를 풀어야합니다. 차근차근 함께 살펴보겠습니다. 1. 테이블 정의 먼저 dp[i]를..