본문 바로가기

보안

(106)
DiD (Defense in Depth) DiD (Defense in Depth) 군대용어이고 직역하면 중심방어, 다계층, 다단계 방어를 의미한다. 아래와 같이 다계층 방식의 방어 방법을 사용한다. 간단히 성을 보호하는 예제를 통해 쉽게 이해할 수 있다. 위키피디아 설명 castle approach라고도 알려진 Defense in Depth는 정보 보증 개념이다. 이때 보안 컨트롤(방어)의 다수의 계층은 정보 기술(IT) 시스템 전반에 배치되어있다. Defense in Depth는 몇가지의 독립적인 방법을 사용하여 특정 시스템의 공격에 대한 방어를 목적으로 한다. 이것은 전자, 정보 보안을 위한 포괄적인 접근으로서 National Security Agency (NSA)으로 부터 고안되었다. 이 방어기법은 본래 시간을 벌기 위해 공간을 제공함으로..
공개키 (Public Key) 1. 대칭키의 문제점 1) 키 분배 문제2) 서로 모르는 사이의 경우 보안 커뮤니케이션이 불가능하다.3) 키 관리 문제점 2. 공개키 암호 시스템 - x는 개인키이고 y는 공개키이다. - 누군가가 모두 공개키를 알 수 있도록 등록을 해놓는다. - 이것을 관리하는 방법은 이 카테고리 마지막 게시글에서 설명한다. - A 는 B와 모르는 사이라고 가정한다. - A는 B의 공개키를 가지고 암호화 해서 B에게 보낸다. - A는 B에게 안전하게 메시지를 보낼 수 있고 - B는 본인만 그 내용을 확인할 수 있다. 3. 일방향 함수 - 해쉬 함수와 같이 - x --> f(x) 는 쉽지만 - f(x) --> x 는 어려워야 한다. - 단 private key를 가지고 있을 경우 쉽게 f(x) --> x 가 가능해진다. ..
IDS (Intrusion Detection System) 와 IPS (Intrusion Prevention System) IDS (Intrusion Detection System) 0. 침입 탐지 모델 구분 종류 설명 침입 탐지 모델에 의한 구분 오용탐지(misuse detection) 이미 알려진 패턴을 이용 -> 침입 탐지 알람이 규칙화 -> 이해하기 쉽고 오탐이 적음 새로운 패턴 탐지X -> 지속적인 관리 요구 변칙 탐지(Anomaly Detection) 사용자 패턴 수집 및 분석 -> 통계분석을 이용 새로운 패턴 탐지O -> 관리 용이 오탐 上 사용자의 패턴이 불규칙이면 구현이 어려움 데이터 소스에 따른 구분 호스트기반 침입 탐지 해당 시스템 파일들에 대한 무결성을 점검 네트워크 환경 구애X 시스템 별로 호환성의 문제 발생 네트워크 기반 침입 탐지 네트워크의 모든 패킷 검사 및 분석 호스트 공격 전에 탐지를 지원 대..
방화벽 (FireWall) 방화벽 1. 내부 시스템과 외부 시스템 간 필터링 기능을 수행하는 프로세스 2. 보안 정책 구현 1) 외부에서 내부로의 접근 통제 2) 내부에서 외부로의 접근 통제(허용) 3) 외부의 특정사이트로만, 특정사이트에서 접근만 허용 4) 인터넷 서비스를 선별적으로 지원 등 통제 3. 요구사항 1) 접근 통제 : - 사내넷으로부터 모든 인터넷 접속은 방화벽에 있는 프록시를 통해 발생- 디폴트로 명시되지 않은 모든 서비스는 금지 2) 보증 :- 방화벽과 프록시는 민감한 호스트로 설치- 사용자의 직접적인 로그인 방지- 정책과 구성은 정확하게 문서화, 정기적인 모니터링 3) 로깅 :- 상세 로그를 보존- 치명적 에러는 경고음 4) 가용성- 가용성을 제공하면서 이에 필요한 일(백업/복원) 수행 4. 기능 1) 접근 통..
기출 문제 풀이 1. Z16, Z16* ? 2. p가 prime number일때 Z*p는? justify! 3. Z55*에서 7-1를 extended euclidean algorithm을 이용해서 구하라 4. 3100 mod 7은? 5. mono-alphabetic cipher에서 frequency analysis에 대해 설명하라 6. COA, KPA, CPA, CCA의 차이는? 7. Affine cipher에서 (plaintext, ciphertext) 2개의 쌍이 주어졌을 때, Known plaintext attack에 안전하지 않음을 보여라.
Hash Functions @ Hash Function @ Cryptographic Hash Functions - 암호학적으로 의미있는 해쉬함수가 되려면? - MDC (Modification Detection Code) : m || H(m) - 일단 여기선 키가 없고 에러가 있는지만 확인한다. - MAC (Message Authentication Code) : m || MACk(m)- 여기서 k는 key를 의미한다.- 키를 모르면 메시지 m에 대한 MAC값을 만들 수 없다. 알고 있을 때만 만들 수 있다.- 메세지를 누가 보냈는지 알 수 있다.(인증) @ MDC - 요구사항 1) Pre-image Resistance 2) Second Pre-image Resistance 3) Collision Resistance - MDC의 구조..
Bock Cipher Modes @ Block Cipher => 블록단위로 끊어서 암호화 만약 n이 128비트라면 1byte를 암호화할 수 있다.안전한 스킴을 만들려면? (디퓨전, 컨퓨전)n-bit 암호문으로 어떠한 평문 정보도 이끌어내서는 안된다. 관계가 없는 것처럼 보여야 한다. 조건 1) 어떠한 정보도 이끌어낼 수 없다조건2) 키와 암호문의 관계를 숨겨야 한다. @ Nation of Security - Diffusion : The idea of diffusion is to hide the relationship between the ciphertext and the plaintext - Confusion : The ieda of confusion is to hide the relationship between the ciphert..
암호화를 위한 보안 모델 @ One-time pad 공격자가 여러가지 정보, 시간이 존재할 때(공격자의 파워가 셀 경우) 과연 안전한 방법, 암호 스캔이 존재할까? -> 양자 암호를 사용하지 않을 경우 암호문이 깨지지 않으려면 키가 무한해야 한다.-> 키 공간에 속한 모든 키들은 전사 공격을 수행하면 어떤 암호든 반드시 언젠가는 해독할 수 있다.-> 단! One-time pad는 예외이다. 즉 공격자가 무한 파워를 가지고 있어도 안전하다. Shannon의 연구에 따르면 완벽한 암호는 평문 심볼이 어떤 키 도메인으로 부터 랜덤하게 선택된 키로 암호화 되었을 경우에만 달성될 수 있다고 했다. @ Kerckoff's principle 암호 알고리즘을 숨기는 것은 좋지 않다. 오히려 알고리즘을 공개하는 것이 더 좋다. 우리는 적이 암호..