본문 바로가기

분류 전체보기193

대칭키, 비대칭키 암호화 방식 대칭키 암호화와 복호화에 같은 암호 키를 쓰는 알고리즘 암호 키를 가로채면 암호화된 정보가 유출될 수 있다. 다수가 통신을 할때에는 키의 개수가 급증하게 되어 한계가 있다. 속도가 빠르다 비대칭키 암호화와 복호화할 때 키를 서로 다른 키로 사용하는 암호화 알고리즘 공개되어서는 안되는 private key와 공개 가능한 public key를 한쌍으로 이루어진 형태 보안상 개인키가 없다면 복호화가 이루어질 수 가 없다. 속도가 좀 느리다 비대칭키 암호화 방식 예) A가 B의 공개키를 가지고 데이터를 암호화 한다 -> 이걸 B에게 주면 ->B는 개인키로 이걸 복호화 한다. 더쉬운 예로는 B라는 사람에게 A라는 사람이 메세지를 전달할때 A는 B의 열린자물쇠(공개키)를 들고와 상자에 메시지를 넣고 자물쇠로 잠근.. 2023. 12. 20.
TCP와 UDP의 차이점 TCP(Transmission Control Protocol, 전송 제어 프로토콜) 인터넷을 통해 디바이스에서 웹서버로 데이터를 전송하는 네트워크 프로토콜. 연결형 서비스로 3 way handshaking 과정을 통해 연결을 설정하기 떄문에 높은 신뢰성 보장 속도가 비교적 느리다는 단점 ex) 이메일을 보낸다, 온라인 동영상을 본다, 웹을 겁색한다, 친구와 채팅을 한다. UDP(User Datagram Protocol, 사용자 데이터그램 프로토콜) 비연결형 서비스 3 way handshaking을 사용하지 않기 떄문에 신뢰성이 떨어지는 단점 데이터 수신 여부를 확인하지 않기 떄문에 속도가 빠른 장점 ex) 스트리밍, 게임 같이 빠른 속도가 중요한 상황에 쓰임 요즘은 토스가 업그레이드 UDP를 쓴다. 차이.. 2023. 12. 20.
쿠키와 세션의 차이점? 쿠키(Cookie) 사용자의 컴퓨터에 저장하는 작은 기록 정보 파일 http에서 클라이언트의 상태 정보를 pc에 저장했다가 정보를 참조하거나 재사용할 수 있다. ex) 방문 사이트에서 로그인 시 "아이디와 비밀번호를 저장하시겠습니까?" 쇼핑몰의 장바구니 기능, 자동로그인, 팝업에서 "오늘 더 이상 이 창을 보지 않음"체크 세션(Session) 일정 시간동안 같은 사용자(브라우저)로부터 들어오는 일련의 요구를 하나의 상태로 보고, 그 상태를 유지시키는 기술. 방문자가 웹서버에 접속해 있는 상태를 하나의 단위로 보고 그것을 세션이라고 한다. ex) 로그인 같이 보안상 중요한 작업을 수행할 때 사용 차이점 쿠키 세션 속도 빠름 느림(서버의 처리가 필요) 보안 세션보다 취약(클라이언트 로컬에 저장) 좋음 저장위.. 2023. 12. 20.
http와 https의 차이점 http란 데이터를 주고받기 위한 프로토콜이다 https란 http는 보안이 취약해 제 3자가 정보를 조회 할수 있기 때문에 http에서 암호화가 추가된 프로토콜이다. http에서는 tcp로 바로 연결하지만 https에서는 SSL로 연결후 tcp와 연결한다. cf) SSL(Secure Socket Layer) : 인터넷을 통해 전달되는 정보를 보호하기 위해 개발한 통신 규약 차이점 HTTP HTTPS 속도 빠름 느림 보안 취약 안전 비용 적음 설치 및 인증서 유지비용이 든다. cf) 회사 입장에서 보안상 필요한 페이지(로그인, 결제, 개인신상 등등)는 https로 이용하고 그외 서비스에는 http로 이용하면 비용절감할 수 있다. 2023. 12. 19.
http프로토콜의 특징, 장점과 단점 http(Hyper Text Transfer Protocol)프로토콜이란? 데이터를 주고 받기 위한 프로토콜 -> 클라이언트와 서버는 http프로토콜로 서로 통신한다. 특징 Stateless : 서버가 클라이언트의 상태를 보존하지 않는다. 응답과 요청이 독립적. Connectionless : 요청을 주고 받을 때만 연결을 유지하고 응답을 주고 나면 tcp/ip연결을 끊는다. 장점 서버 확장성이 높다->Stateless라서 응답서버를 쉽게 바꿀수도 있고 무한한 서버 증설이 가능하다 트래픽이 많지 않고, 빠른 응답을 제공할 수 있는 경우 효율적이다. 최소한의 자원으로 서버를 유지할 수 있다. 단점 이전 통신의 정보를 모르기 때문에 매번 인증을 해줘야 한다. 이것을 해결하기 위해 쿠키나 세션을 사용해서 데이터.. 2023. 12. 19.
시스템 콜이란 무엇인가? 시스템 콜이란? 대다수의 운영체제들은 커널 모드(Kernel Mode)와 사용자 모드(User Mode)가 구분되어 있다.사용자 모드는 일반 프로그램들이 작동되는 영역으로 컴퓨터 리소스에 제한적으로 접근이 가능하고 프로그램들은 프로세스로 작동한다.일반적인 프로그램들은 사용자 모드에서 실행되므로 커널 모드에 대한 직접적인 접근이 불가능하다. 하지만 커널에 접근할 수 없으면 사용자 모드의 프로세스들이 파일을 쓰거나 불러올 수 없고 그래픽 처리와 같은 거의 모든 작업을 할 수 없다. 따라서 커널에 요청하여 커널 모드에서 처리하고 그 결과를 사용자 모드의 프로그램에게 전달하는 것이 바로 시스템 콜이다. 2023. 12. 19.
PCB(Process Control Block)란 무엇인가? 운영체제가 프로세스를 제어하기 위해 정보를 저장해 놓는 곳. 프로세스의 상태 정보를 저장하는 구조체이다. 프로세스의 상태관리와 문맥 교환(Context Switching)에 필요하다. 프로세스가 생성될 때마다 고유의 PCB가 생성되며, 프로세스가 완료되면 PCB는 제거된다. 2023. 12. 19.
컨텍스트 스위칭(Context Switching)이란 무엇인가? 컨텍스트 스위칭이란? 여러개의 프로세스가 실행되고 있을때 이전에 실행되던 프로세스를 중단하고 다른 프로세스를 실행하는것. CPU에 실행할 프로세스를 교체하는 기술 cf) 인터럽트 : CPU의 정상적인 프로그램 실행을 방해하는 것. 내부 인터럽트 , 외부 인터럽트로 나뉜다. 2023. 12. 19.
프로세스와 쓰레드의 차이점 프로세스 1. 운영체제로부터 자원을 할당받은 작업의 단위. 2. 하드디스크에 있는 프로그램을 실행하면, 실행을 위해 메모리 할당이 이루어지고, 할당된 메모리 공간으로 바이너리 코드가 올라가게 된다. 이 순간부터를 프로세스라 부른다. 3. 독립적이기 때문에 메모리영역을 다른 프로세스와 공유하지 않는다. 4. 최소 1개의 쓰레드를 가지고 있다. 쓰레드 1. 프로세스가 할당받은 자원을 이용하는 실행 흐름의 단위 2.stack만 따로 할당 받는다. 나머지 메모리 영역은 공유해서 사용한다. 3. 다른 쓰레드의 실행 결과를 즉시 확인할 수 있다. 4. 프로세스 내에 존재하여 프로세스가 할당받은 자원을 이용하여 실행된다. 2023. 12. 19.
네트워크란? ip란? 서브넷마스크란? 컴퓨터들이 통신 기술을 이용하여 그물망처럼 연결된 통신 이용 형태 LAN : 근거리 통신망, 로컬 영역 네트워크(영어: local area network, LAN), 구내 정보 통신망은 네트워크 매체를 이용하여 집, 사무실, 학교 등의 건물과 같은 가까운 지역을 한데 묶는 컴퓨터 네트워크이다. 광역 통신망(WAN)은 더 넓은 지역 범위를 아우를뿐 아니라 일반적으로 전용선 또한 동반하기도 한다.이더넷과 와이파이는 근거리 통신망에 사용하기 위해 흔히 쓰이는 기술 2가지이다. 역사적으로는 ARCNET, 토큰링, 애플토크 등의 기술이 사용되었다. 인터넷에 연결된 각 기기를 구별하기 위해 사용되는 고유한 번호 기존 ipv4 에서 ip주소가 모자라서 발전된 형태가 ipv6 ip 주소는 32자리 2진수로 구성되어 있.. 2023. 10. 15.
728x90