정보 보안 - Introduction

김상엽·2022년 9월 7일
0

ssu-information-security

목록 보기
1/2
post-thumbnail

TODO: 암호의 필수조건 마저 정리해야함!

정보보안의 정의

  • "Preservation of confidentiality, integrity and availability of information. Note: In addition, other properties, such as authenticity, accountability, non-repudiation and reliability can also be involved." (ISO/IEC 27000:2009)
    • 정보에 대한 Confidentiality(기밀성), Integrity(무결성), Availability(가용성)을 제공하는 것을 정보 보안이라고 한다. 추가적으로 다른 목적에 의해서 정보에 대한 Authenticity(인증), Accountability(책임), Non-repudiation(부인봉쇄), Reliability(신뢰성)을 제공할 수도 있다.
    • CIA(confidentiality, integrity, availability)를 꼭 기억하자

  • "The protection of information and information systems from unauthorized access, use, disclosure, disruption, modification, or destruction in order to provide confidentiality, integrity, and availability."
    (CNSS, 2010)

암호의 목적

  • 여러 위협에 대처하여 그에 대한 적절한 대응을 하는 게 목적이다.

1. Confidentiality

  • 기밀성: 정보를

6. Authorization (Access Control)

  • Resource에 접근할 올바른 권한이 있는지 확인하는 것!
    • Access Control과 Authorization은 다른 내용이다!
    • Authorization을 통해 User를 인식하고 이후 해당 유저가 올바른 권한을 가지고 있고 접근하게 해주는 것까지가 Access Control의 역할이다!

7. Availability

  • 가용성: 인증되지 않은 Entity가 Resource를 사용할 수 없게 만드는 걸 막는 것을 의미한다.
  • 대표적으로 Denial of Service(DoS) Attack을 통해 가용성이 망가진다.

Basic Tools for Information Security

1. Cryptology

  • Cryptology는 Cryptography와 Cryptanalysis를 총칭하는 말이다.

Cryptography

  • 암호를 만드는 연구분야이다.
    • Plaintext를 Cipher 함수를 통해 CipherText로 변환하는 것을 Encrypt라 한다.
      • 단 이때의 변환은 역으로 변환이 가능해야 한다.
    • CipherText를 PlainText로 변환하는 것을 Decrypt라 한다.

Cryptanalysis

  • 암호를 깨는 연구분야이다.
    • CipherText를 이용하여 PlainText를 유추해내는 과정을 연구함

Encryption / Decryption

  • Encryption: C = E(M,K)
    • Encrypt는 plain message M을 unique key K를 이용하여 cipher text C를 만들어 내는 함수 E를 의미함.
  • Decryption : M = D(C,K)
    • Dencrypt는 Encrypt의 역과정으로 cipher text에서 unique key K를 이용하여 plain text를 뽑아내는 함수를 의미한다.
  • Kerckhoffs Principle
    • Attacker는 Encryption algorithm과 Decryption algorithm, 그리고 CipherText를 알고 있을 가능성이 농후하다.
      • 암호화 알고리즘은 그 수가 매우 한정적이고, cipher text는 packet capture로 충분히 얻어 낼 수 있기 때문!
    • 그렇기에 Security는 Key에 대한 Confidentiality(기밀성)이다!
      • 얼마나 Key를 감출 수 있느냐가 관건!
  • Symmetric Encryption
    • 암호화 Key와 복호화 Key가 동일한 암호화 방식
  • Asymmetric Encryption
    • 암호화 Key와 복호화 Key가 다른 암호화 방식
      • key를 공개하는 특성때문에 Public-key encryption이라고 불리기도 한다.

Hashing

  • plainText의 변경을 감지하는 기술이다. (Integrity를 보장해주는 기술)
  • 대표적으로 Hashing, Message Authentication Code(MAC) 참고자료가 있다.
  • Hash Function의 Requirements
    1. Easy to compute
    2. preimage Resistance (원상 저항)
      • 여기서는 plain text가 원상이기에 plain text를 유추할 수 없게 하는 특성을 의미한다.
    3. Collision Resistance
      • (약) 주어진 두 plain text M1과 M2의 Hash 값이 달라야만한다
      • (강) 모든 palin text 중 임의의 두 원소 M1과 M2의 Hash 값이 달라야한다.
    4. Avalanche Effect
      • plain text의 수정이 있을때 hashing 결과는 대략 50%는 달라져야한다.
profile
개발로 생각을 표현하는 여행자

0개의 댓글