Computer-Sience38 [Security] 제로 트러스트(Zero-Trust) 제로 트러스트(Zero-Trust)란 제로 트러스트 아키텍처는 “무엇이든 신뢰하지 않고 항상 검증하라”는 원칙을 기반으로 신뢰가 완전히 제거된 IT 시스템의 설계 및 구현에 대한 접근 방식을 규정한다. 전통적인 보안 모델은 기업 네트워크 내부의 시스템과 장치는 기본적으로 신뢰할 수 있는 경계 내에 있다고 간주하여 서로 제약이 없이 자유롭게 통신하는 구조였다. 이와 다르게, 제로 트러스트는 전통적인 보안 모델에서 취급했던 신뢰가 보안의 취약점이라 정의하고, 내부와 외부를 구분하지 않고 모든 접근 요청을 철저하게 검증하는 것을 의미한다. 이는 사용자, 디바이스, 애플리케이션을 신뢰하지 않고, 각 요청을 세밀하게 검사하여 보안 위협을 최소화하는 구조다. Nvidia에서는 아래의 원칙을 따라서 제로 .. 2024. 5. 18. [Network] NAT / SNAT / DNAT 일반적으로 가정에서 공유기에 연결된 PC는 사설 IP(Private IP)를 공유기로부터 배정받고, 외부로 패킷이 나갈 때는 공인 IP(Public IP)로 나가게 되어 통신을 하게 되는데, 이러한 IP 변환 과정에는 라우터의 NAT를 사용하게 된다. 통신의 흐름을 보면 아래 사진과 같이 볼 수 있다. 예시 : PC(Private IP) -> 공유기(NAT) -> 구글(Public IP) -> 공유기(NAT) -> PC(Private IP) NAT(Network Address Translator) : NAT는 패킷이 라우터를 지나갈 때 패킷의 IP 헤더에 있는 네트워크 주소 정보를 수정하여 IP 주소를 다른 IP 주소로 매핑하는 방법이다. NAT는 다양한 장점이 존재한다. IPv4는 2 ** 32(40억.. 2023. 12. 21. [Algorithm] 시간 복잡도 (Time Complexity) 1. 시간 복잡도 및 표기법 시간 복잡도는 특정 코드가 있을 때, 해당 코드에서 특정한 입력이 주어졌을 때, 얼마나 많은 연산을 하는지에 대한 개념을 나타낸 것이다. 알고리즘마다 특정 값에 대한 참조, 연산이 많을수록 당연히 복잡도가 다르고, 때에 따라서는 비효율적인 알고리즘이 될 수 있기에 우수한 성능을 낼 수 있는 알고리즘을 구현하기 위해서는 시간 복잡도를 정확하게 이해하고 알고리즘을 설계할 필요가 있다. 시간 복잡도를 표기하는 방법에는 아래의 3가지가 존재한다. 1) 빅 오(Big O) 표기법 빅 오(Big O) 표기법은 알고리즘의 실행 시간을 최악의 경우의 시간 복잡도로 나타내는 데 사용된다. 어떤 알고리즘의 시간 복잡도가 O(f(n))이라면, 해당 알고리즘의 실행 시간은 입력 크기 n이 증가함에.. 2023. 8. 19. [Network] Private(사설) IP / Public(공인) IP 1. Private(사설) IP : 사설 IP 주소는 내부 네트워크에서 사용되며, 주로 가정이나 사무실에서 사용하는 로컬 네트워크에서 장치들을 식별하기 위해 사용된다. 사설 IP 주소는 글로벌 인터넷에서 고유(Unique) 하지 않고, 로컬 네트워크 내에서만 중복 없이 사용되며, 필요에 따라서 배정하여 사용하고, 아래 특징을 가진다. 제한된 범위 : 사설 IP 주소는 특정 범위 내에서 할당 10.0.0.0 ~ 10.255.255.255 172.16.0.0 ~ 172.31.255.255 192.168.0.0 ~ 192.168.255.255 로컬 네트워크 : 사설 IP 주소는 로컬 네트워크에서만 사용되기 때문에 외부 인터넷에서 사설 IP로 직접 접근 불가능 NAT (Network Address Transla.. 2023. 8. 16. [OS] Byte Order 1. Bit(비트) : 컴퓨터가 데이터를 처리하기 위해 사용하는 데이터의 최소 단위 이진(Binary)으로 구성(0과 1의 형태로 저장) 2. Byte(바이트) : 8개의 비트의 묶음을 나타내는 단위 컴퓨터의 기억장치 크기의 기준 문자의 표현을 위한 기본 단위 1 Byte : 확장된 아스키 코드(ASCII) - 7bit 2 Byte : Unicode 3. Byte Order(바이트 오더) : 컴퓨터 메모리에 저장되는 순서를 의미 빅 엔디안 : 낮은 메모리 주소에 데이터의 높은 바이트(MSB : Most Significant Bit)부터 저장하는 방식 IBM, RISC기반의 컴퓨터에서 사용 수의 대소 비교에 빠름 소프트웨어 디버깅에 강함 네트워크 바이트 오더의 가장 흔한 포맷 리틀 엔디안 : 낮은 메모리 .. 2023. 8. 6. [OS] 데드락(Deadlock, 교착 상태) 1. 데드락 두 개 이상의 프로세스나 스레드가 서로 처리할 자원을 이용하지 못해서 다음 작업을 하지 못하는 상태를 나타내며, 상호 간의 작업이 끝나기만을 무한히 대기하는 상태를 일컫는다. 이러한 상태를 데드락(Deadlock)이라고 하며, 교착상태라고도 한다. 2. 데드락 발생 조건 상호 배제(Mutual exclusion) : 자원은 한 번에 한 개의 프로세스만 사용이 가능 점유 대기(Hold and wait) : 하나의 이상의 자원을 점유하며, 다른 프로세스에 할당된 자원을 점유하기 위해서는 대기하는 프로세스가 존재 비선점(No preemption) : 다른 프로세스에 할당된 자원은 사용이 끝날 때까지 탈취가 불가능(대기) 순환 대기(Circular wait) : 프로세스의 집합에서 각 프로세스가 요.. 2023. 8. 4. 이전 1 2 3 4 5 ··· 7 다음