본문 바로가기

Computer Science3

암호화 개념 - 비대칭,대칭,SEED 외부 API와 통신할 때는 개인 정보를 보호하기 위해 암호화가 필요합니다. 진행한 프로젝트는 개인 정보 암호화를 위해 SEED 암호화를 사용하기로 했습니다. "SEED"는 블록 암호화를 지원하는 대칭 암호화 알고리즘 중 하나입니다. 이 알고리즘은 암복호화에 동일한 비밀키를 사용하므로, 양 측 간에 비밀키를 안전하게 전달하는 방법이 필요합니다. 이에 비밀키를 전달하는 방법으로 API통신을 통한 비대칭 암호화를 활용하기로 했습니다. API 요청에는 공개키를 전송하고, 상대측은 전달 받은 공개키로 SEED 공유키를 암호화하여 API 응답값으로 전달합니다. 이렇게 전달받은 암호화된 공유키를 공개키/비밀키 쌍의 비밀키로 복호화하여 최종적으로 공유하고자 하는 SEED 공유키(비밀키)를 얻어 개인정보 암호화에 사용합.. 2024. 2. 26.
HTTP 개관 HTTP 개관 웹 브라우저와 웹 서버가 기본적인 트랜잭션(요청 명령과 응답 결과)을 구현하기 위해 어떻게 메세지를 주고 받는지 알아본다. 학습목표 얼마나 많은 클라이언트가 서버와 통신하는지 리소스가 어디서 오는지 웹 트랜잭션이 어떻게 동작하는지 HTTP 통신을 위해 사용하는 메세지의 형식 HTTP 기저의 TCP 네트워크 전송 여러 종류의 HTTP 프로토콜 인터넷 곳곳에 설치된 다양한 HTTP 구성요소 리소스 웹 리소스 : 웹에 콘텐츠를 제공하는 모든 것 정적 파일 동적 파일 : 요청에 따라 콘텐츠를 생산하는 프로그램 통해 생산 미디어 타입(MIME 타입) 웹서버는 모든 HTTP객체 데이터에 MIME 타입을 붙인다. 웹브라우저는 서버에서 객체를 받을 때 다룰 수 있는 객체인지 MIME 타입을 통해 확인 구.. 2022. 3. 28.
자료구조 수업 정리 데이터구조 아래 2가지는 프로그램의 중요한 축 값을 어떤 구조로 보여줄꺼냐 그것을 어떤 식으로 처리할꺼냐 : 알고리즘 컴공에서 1년정도 공부하는 내용 필수적인 것 List, Array, Stack, Queue 장점/단점 파악해서 선택 공간복잡도 : 메모리를 얼마나 쓰냐 시간복잡도 : CPU를 얼마나 쓰냐 위 둘 중에 하나를 선택해야 한다. 코드를 보고 공간을 많이 쓰는지, 시간을 많이 쓰는지 파악할 수 있어야 한다. 알고리즘은 시간을 많이 쓰고, 데이터구조는 공간을 많이쓴다. 핵심적인 로직 리스트를 구현하는 거... 추천한 공부꺼리 LinkedList가 Array랑 다른 점이 뭔지, 스택,큐랑은 다른 점이 뭔지도 찾아 보아라 LRU cache를 공부해보면 좋다. 인접 학습 : hashmap, tree, .. 2022. 2. 14.