공부 31

네트워크 보안(11) - 인증서

인증서  : 공개키의 위장을 방지하기 위해 사용자의 공개키를 인증하기 위한 것.   : 제 3자 기관인 CA(Certificate Authority)에서 발급해주며, 소유자 ID, 공개키, CA의 서명으로 구성된다. 공인 인증기관  - 국제 기관 > DIgiCert / Sectigo / GlobalSign  - 국내 기관 > 금융결제원 / 코스콤 / 한국전자인증 / 한국무역정보통신 / 한국정보인증      : 최상위 인증기관인 한국인터넷진흥원(KISA)에서 인증 기관 운영 감독 및 표준안 마련.      : 현재는 2020년 공인인증 제도가 폐지되어 위 기관에서 발급 받은 공동 인증서를 사용하며, 각종 민간인증서(금융기관, 카카오, 네이버 등) 또한 금융 거래에 사용이 가능해졌다. 공인 인증서 종류   ..

네트워크 보안(10) - 디지털 서명

디지털 서명  : 메시지 무결성 및 송신자 검증을 위한 수단.  : 서명 복제 및 원본 문서로부터의 분리가 가능하다. 디지털 서명과 공개키 암호 비교  - 디지털 서명: 개인 키로 서명하며 공개 키로 서명을 검증한다.  - 공개키 암호: 개인 키를 복호화에, 공개 키를 암호화에 사용한다. 디지털 서명 관련 이슈기밀성  : 기밀성과 무관하므로 이를 위해서는 추가적인 암호화가 필요하다.재사용 공격  : 다른 메시지에 그대로 재사용하면 값이 달라지기 때문에 불가하다.부인 방지 원리  : 개인 키를 가지고 있는 자만 서명이 가능하기에 부인이 불가하다.종이서명 대체   : 1999년 전자서명법이 제정되어 종이 서명과 같은 취급 가능.디지털 서명 방법암호화 대상   1. 메시지 자체를 개인 키로 암호화  2. 메시..

네트워크 보안(9) - 메시지 인증 코드

메시지 인증 코드(MAC)  : 메시지의 무결성 및 송신자 확인을 위한 코드  : 해시 함수만 이용할 시 송신자 확인은 불가하다. 증명(Prove)와 검증(Verify)증명: 송신자가 메시지를 인증받는 것.검증: 수신자가 메시지를 검사하는 것.사용 예시  : SWIFT(Society for Worldwide Internet Financial Telecommunication, 금융 기관을 위한 국제 협력 네트워크)  : IPSec(Internet Protocol + Security)      *대부분 메시지 인증 후 암호화하는데 이 경우 암호화 후 메시지 인증 수행  : SSL/TLS MAC 의 기본 구조입력: 메시지, 공유하는 키출력: 고정 길이의 코드 프로세스 공유 키 K, 해시 함수 H, 메시지 M에..

클라우드 시스템(4) - Virtualization

가상화  : 컴퓨터 리소스의 추상화. 실제 존재하지 않는 컴퓨터 리소스를 가상적으로 제공하는 기술.  : 클라이언트 요청에 의한 게스트 시스템의 상태 변이를 호스트 시스템의 상태 변이로 매핑 시키는 함수와 같은 관계이다.가상화의 형태ABI 레벨 시스템  : 프로세스 가상머신(process virtual machine)  / 런타임 환경(runtime)  : 애플리케이션 관점에서의 시스템 가상화로, 운영체제와 무관하게 소프트웨어를 수행할 수 있도록 한다.  : 운영체제 위에서 동작한다.    ex) JVM(Java Virtual Machine)  ISA 레벨 시스템  : 시스템 가상머신(system virtual machine)  : 하드웨어 명령어 집합의 가상화로, 하드웨어와 무관하게 소프트웨어를 수행할..

공부/클라우드 2024.10.23

네트워크 보안(8) - 일방향 해시 함수

데이터의 무결성  : 데이터가 위/변조되지 않았다는 것을 증명하는 성질일방향 해시 함수  : 데이터의 무결성을 위한 방법.     *데이터의 복사본을 저장하는 방법도 있지만 두배의 용량이 필요하다는 단점이 있다. 해시 함수  : 입력 값 x에 상관없이 함수 값 y의 길이가 항상 일정한 함수.  성질   : 입력 값으로는 크기에 제약 없이 모든 디지털 데이터가 가능해야 한다.   : 계산이 용이하며 구현이 가능해야한다.    ex) 입력 값을 23으로 나누었을 때 그 결괏값의 소수점 이하 7번째-10번째 자리 수 장/단점  : 원본 데이터를 몰라도 변경 여부 확인 가능  : 매우 작은 사이즈   : 서로 다른 입력 값이 같은 함수 값을 갖는 충돌(collision)이 발생한다.      -> 정의역은 무한..

네트워크 보안(7) - 하이브리드 암호 시스템

하이브리드 암호 시스템  : 대칭키 암호와 공개키 암호의 장점만을 이용하기 위한 시스템 대칭키 암호  : 효율적인 메시지 암호화 / 키 배송 문제 해결이 필요 공개키 암호  : 키 배송 문제 해결 가능 / 대칭키 암호화에 비해 느리며 중간자 공격에 취약 하이브리드 암호화 절차  송신자는 대칭키를 의사 난수 생성기로 생성한다. 이는 세션키가 된다.  송신자는 세션키로 메시지를 암호화한다.  송신자는 세션키를 수신자의 공개키로 암호화하여 암호문과 전송한다.  수신자는 본인의 비밀키로 세션키를 복호화하여 해당 키로 메시지를 복호화한다. 사용 예시  : SSL/TLS, SSH, S/MIME, PGP

네트워크 보안(6) - 공개 키 암호

키의 배송 문제  : 대칭 암호를 통한 메시지 전송을 위해 대칭키를 사전에 공유해야 하는 문제가 있다.키의 사전 공유에 의한 해결  : 사전에 공유해놓은 키(Master Key)를 이용해 새로운 키(Session Key)를 공유하는 방식 문제점  : 준비해야 하는 사전 공유 키의 수가 폭발적으로 증가 > 사용자 n명에 대해 nC2개 필요  : 사전에 실제로 만나야 함 / 노출 시 다시 공유... 키 배포 센터(KDC, Key Distrivution Center)에 의한 해결연결 절차연결 요청 메시지를 KDC에 전송 *KDC와 각 사용자는 사전에 공유된 키가 있다.KDC가 일회용 세션키를 생성한 뒤 사전 공유키를 통해 각 사용자에게 전송.세션 키를 통해 사용자끼리 통신한다.문제점  : KDC의 부하 증가 ..

네트워크 보안(5) - 블록 암호 모드

블록 암호    : 평문을 블록 단위로 암호화하는 기법    : 블록의 크기는 암호 알고리즘에 따라 결정된다.       ex) DES / 3DES: 64bit, AES : 128bit   스트림 암호  : 데이터 흐름을 순차적으로 처리해가는 암호 알고리즘  : 통상적으로 1비트, 8비트, 32비트 등의 단위로 암호화블록 암호의 분류전자 코드북 모드(ECB)  : 각 블록을 동일한 키로 암호화하는 기법. 가장 단순하다.  : 마지막 평문 블록이 블록 길이에 미치지 못할 경우 블록 길이가 되도록 추가한다. 취약점  : 평문 블록과 암호문 블록 간 일대일 대응하기 때문에 암호문으로 패턴을 파악할 가능성이 있다.  : 평문을 해독하지 않고도 암호문 조작이 가능하다. ex) 블록의 순서 변경  암호 블록 체인 ..

네트워크 보안(4) - 대칭 암호

주요 용어대치(Substitution): 구성 알파벳을 정해진 다른 것으로 대치재배열(Permutation): 평문의 구성 문자를 재배치하는 것.블록 암호(Block Cipher): 블록 단위 암호화스트림 암호(Stream Cipher): 평문 전체 암호화대칭키 암호의 예시Caesar's CipherSubstitution CipherVigenere CipherDES / 3DES / AESRC4일회용 패드(One-Time Pad)원리평문의 아스키코드 값과 무작위 비트열을 XOR함으로써 암호화를 수행하는 기술.같은 키로 한 번 더 XOR 연산하면 복호화 된다.송/수신자가 같은 키를 가져야 하므로 미리 키 생성기를 공유해야 한다.ex) midnight을 암호화 할 때, 해당 평문이 8byte이므로 8byte짜..

네트워크 보안(3) - 암호의 역사

암호의 역사  : 시대별 암호  : 요즘 주로 사용하는 대칭 암호 기술은 Substitution Cipher과 Permutation Cipher을 기반으로 만들어짐. Caesar Cipher (Shift Cipher)  : 기원전 100년 경 로마 장군 Julius Caesar이 사용한 암호 원리  : 26개의 알파벳에 대해 k칸 뒤에 있는 알파벳으로 변환k = 2일 때, abc => cde보안성  : 가능한 k의 수가 적기 때문에 Brute force attack에 취약하다.      * Brute force attack: 키에 모든 값을 대입해보는 해독 공격 방식  Substitution Cipher원리  : 치환 표를 따라 알파벳을 다른 알파벳으로 치환하는 암호 보안성  : known plainte..