분류 전체보기 242

[이메일 보안] S/MIME

개요PGP방법이 아닌 S/MIME에 대해 알아보자S/MIME는 MIME에 보안기능을 추가한 것이다.S/MIME에 대해 알아보자 Overview MIME란  초기의 이메일은 단순히 텍스트만 지원했다.MIME는 여러 콘텐츠 (텍스트, 이미지)등을 포함할 수 있게 하기 위해 개발이 되었다.  S/MIME S/MIME의 다양한 유형과 보안 적용 방식 이중 목적에 따라 하나를 사용하거나 여러 개를 결합하여 사용가능하다. 1. Enveloped data암호화된 메시지 + (메시지를 복호화할 수 있는 키) 암호화2. Signed data인코딩 된 메시지 + 디지털 서명 해시 값(signed digest를 포함한다.)3. Clear-signed data원본 메시지 +인코딩 된 디지털 서명 해시 값4. signed & ..

보안 2024.12.20

[프로그래머스] 퍼즐 게임 챌린지 (C++)

출처 : https://school.programmers.co.kr/learn/courses/30/lessons/340212 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr풀이 방법통과할 수 있는 level 중에 가장 작은 level을 선택해야 한다. 해당 부분을 통해 이분 탐색을 이용한 완전 탐색으로 풀이해야 겠다고 생각했다.문제에서 해결을 못하는 경우는 없다고 했으므로 가장 최댓값을 limit으로 최솟값을 1로 설정하고 이분 탐색을 진행했다.이때 해당 level로 통과를 할 수 있다면 right = mid -1로 하여 작은 level에 대한 시도를 하며통과를 하지 못한다면 left = mid + 1을..

Algorithm 2024.12.20

블록체인

블록체인 Introduction기존의 중앙 집중형 DB1. 단일 서버에 저장된다.2. 쉬운 관리와 유지보수를 할 수 있다.3. 무결성과, 일관성을 보장하기 쉽다.4. 데이터가 한곳에 집중되어 있으므로 보안이 좋다. 분산 DB상태가 공유되어야 한다.A에서의 변경이 B, C, D에 적용이 되어야 한다. What is BlockChain?상태의 변화에 대한 기록이다 (트랜젝션을 기록)해시 값을 통해 다른 블록들과 연결한다.Hash = 이전 트랜젝션에 대한 요약 블록체인에서 값을 변경할 수 있지만, 탐지가 된다. 탐지를 하면 변경된 것을 원복 한다. 블록체인은 완전히 분산된 p2p 소프트웨어 네트워크이다.무결성만 보장해 준다. 기밀성, 가용성은 보장하지 않는다. (퍼블릭 블록체인인 경우 모든 데이터 완전히 공개..

카테고리 없음 2024.12.19

[프로그래머스] 충돌위험 찾기 (C++)

출처 : https://school.programmers.co.kr/learn/courses/30/lessons/340211?language=cpp 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 풀이 방법시뮬레이션 문제이다. 적절한 자료구조 선택과, 시뮬레이션 방법을 선택한 후 구현하면 된다. 자료구조 선택 로봇을 stuct 자료구조를 이용해서 설정했다. 이유 1. 하나의 로봇이 가져야 할 정보가 많다.2. 여러 로봇을 헷갈리지 않게 제어하기 위해 여러 자료구조를 사용하는 거보다 구조체가 제어하기 쉬울 거 같다. 시뮬레이션 방법 선택 큐를 사용한 bfs로 시뮬레이션 이유 1. 먼저 도착한 로봇을 시뮬레..

Algorithm 2024.12.19

[SSL, HTTPS] HTTP over SSL

SSLTCP기반으로 연결되며, 클라이언트와 서버 간의 안전한 통신을 보장하기 위한 프로토콜이다. 서버 인증사용자가 서버를 신뢰할 수 있는지 확인사용자가 서버의 ID를 검증한다.서버 인증서의 발급기관 (CA)가 신뢰할 수 있는 CA의 목록에 포함되어 있는지 확인한다. 클라이언트 인증서버가 클라이언트의 신원을 확인클라이언트의 ID를 검증클라이언트의 CA 발급 기관이 신뢰할 수 있는 CA의 목록에 포함되어 있는지 확인 암호화된 SSL 연결클라이언트와 서버 간의 전송되는 모든 데이터는 암호화되어 전송된다. SSL Architecture  SSL은 주로 4개의 프로토콜 계층으로 구성되어 있다. Handshake Protocol서버와 클라이언트의 상호 인증키 교환 방법, 대칭 키 암호화 방법, HMAC Method..

보안 2024.12.18

DoS and DDoS

DoS서버가 처리할 수 있는 능력을 넘어서게 요청을 보내 정상적으로 작동하지 못하게 한다. Dos 종류1. Destruction : Disks, Data System 파괴2. System resource depletion : cpu, memory, 디스크 용량을 고갈3. Network resource depletion : 가바지 데이터를 보내서 밴드 width를 꽉 채운다.Ping of Death ICMP 패킷을 정상보다 크게 보내서 마비시킨다.큰 패킷은 라우터팅 되며 공격 네트워크에 도달하는 동안 작은 여러 개의 패킷으로 분할된다.공격 대상은 많은 패킷을 처리해야 하므로 많은 부하가 된다. 패킷은 왜 작게 나누어져야할까? 1. 네트워크를 통과할 때 네트워크의 MTU가 다 다르다.2. 라우터에서는 재조립..

보안 2024.12.17

[Wireless Security] 무선 보안 (IEEE 802.11 Wireless LAN)

개요무선 환경에서의 네트워크 연결 방법과 이에 따른 보안 방법에 대해 공부해 보자 무선  통신  특징  base station = 기지국backbone link = 네트워크에서 고속, 고용량 데이터 전송을 지원하는 핵심적인 연결  무선 링크의 특징1. 무선링크는 일반적으로 모바일과 base station을 연결하는 데 사용된다.2. backbond link로도 사용된다.3. MAC 프로토콜을 이용해 무선 링크의 접속을 관리한다. (여려 디바이스가 하나의 무선 채널을 공유하려고 할 때 충돌 방지)4. 무선 링크는 환경과 기술에 따라 전송 속도와, 거리가 달라질 수 있다. base station의 특징1. 모바일이 유선망으로 바로 연결을 못하기 때문에 패킷릴레이 역할을 한다. infrastructure mo..

보안 2024.12.16

Firewall

Firewall모든 트래픽을 막아 놓고 허용된 트래픽만 허용한다. 내부에서 외부로, 외부에서 내부로 이동하는 모든 트래픽은 방화벽을 통과해야 한다.오직 권한이 있는 트래픽만 통과한다. 방화벽의 접근 제어 및 보안 정책 적용 기법Service Control (서비스 제어)접근 가능한 인터넷 서비스 유형을 제어한다.ex) HTTP, FTP Direction Control (방향 제어)특정 서비스 요청이 어떤 방향으로 흐를 수 있을지 제어한다.ex) 내부, 외부User Control (사용자 제어)특정 사용자가 접근하려고 할 때 사용자의 권한에 따라 제어한다.Behavior Control (행동 제어)특정 서비스가 어떻게 사용되는지 제어한다.ex) 초당 트래픽을 몇 개까지 허용할지  Firewall 한계 1...

보안 2024.12.13

[IDS] 침입 탐시 시스템

IDS침입 사용자의 행동이 일반적인 합법 사용자와 다르다는 가정하에 동작한다.침입자의 행동을 수치화하여 비정상적인 활동을 실시간으로 감지한다. 정상적인 사용자와 비정상적인 사용자의 분포도를 통해 판별한다.서로 겹치는 부분을 최소화하는 것이 가장 중요하다. IDS의 탐지 기법통계 기반합법 사용자의 정상적인 행동 패턴 데이터를 수집하고 관찰된 행동에 대한 통계적 테스트를 적용하여 해당 행동이 합법적인 사용자 행동이 아닌지 확인한다.임계값 탐지사용자와 독립적으로 이벤트 발생 빈도를 기준으로 임계값을 설정하여 탐지한다.Profile based각 사용자의 활동 프로파일을 만들어 개인 계정의 행동 변화를 탐지한다.  2. 규칙 기반공격 패턴을 미리 정의해 두고 이를 기준으로 정한다. (이미 알려진 공격 패턴으로 ..

보안 2024.12.09

[이메일 보안] PGP

PGP  (Pretty Good Privacy)사실상 이메일 암호화 표준인 PGP에 대해 학습해 보자  Authentication 인증    Source1. 발신자는 메시지원본을 생성한다 M2. 메시지를 해시 알고리즘을 사용하여 해시 값을 생성한다. H3. 생성된 해시 값을 자신의 비밀키(RSA)를 사용해서 암호화한 후 메시지에 추가해 준다. Z Destination1. 수신자는 발신자의 RSA공개키를 사용해서 복호화 한다.2. 수신자는 메시지원본과 메시지의 해시값을 비교하여 메시지가 변경이 되었는지 확인한다. Confidentiality 기밀성   Z: 압축 Source1. 랜덤 세션 키를 생성한다. (대칭키 알고리즘 ex(AES))2. 세션 키를 사용해 메시지를 암호화한 후 메시지에 추가한다.3. 세..

보안 2024.12.01