정보보호 - 1

박승현·2023년 9월 9일
0

정보보호

목록 보기
1/11
post-thumbnail

Introduction


Security Goals

  • C.I.A
    • Confidentality(기밀성) : 지정된 사람만 읽을 수 있어야 함
      • end-to-end : 암호화를 풀기 위한 key를 전송자와 수신자만 알고있는 경우
    • Integrity(무결성) : 정보 전달 과정에서 변조, 변동이 없어야 함
      • 비트코인, 가상화폐가 무결성을 보장해주는 기술임
    • Availability(가용성) : 정보 시스템, 서비스가 필요한 시점에서 사용 가능한 성질

Tools for confidentality

Encryption

  • key : sender, receiver만 공유 통상적으로 256비트를 최소로 필요

Access control

  • 권한있는 사용자만 접속을 허용
  • 권한있는 사용자 판별 방법 : Authentication(인증)
Authentication
  • somethong the poerson knows : 비밀번호
  • somethong the poerson has : otp, 집의 열쇠같은 것
  • somethong the poerson is : 지문과 같은 생체 인증

Integrity

  • Checksums
  • Backups
  • Data correcting codes

Availability

  • Physical protection : 물리적 보호, 안전한 시설 및 건물 전원 공급
  • Computational redundancies : 서버 데이터의 수를 늘려 서버가 다운되는 현상을 막음

Other Security Concepts(A,A,A)

  • Anonymity

  • Authenticity

  • Assurance(보증)


Threats and Attacks

  • Eavesdropping(도청) :
  • Alteration(변경) : 전송되는 내용을 중간에 가로채 변경하는 방식
    • man-in-the-middle attack(중간자 공격), man in the ~~로 공격자 위치를 표현하기도 함
  • Denial-of-service(DOS) : 한 사람이 공격해 서비스를 마비 시키는 공격, 분산된 곳에서 공격하는 경우가 DDOS(Distributed)
  • Maspuerading(신분 위조) : 사회공학적 공격(이메일)
  • Repudiation

The Ten Security Principles


Economy of mechanism
  • 필요 이상의 보안을 위해 오히려 경제적으로 더 손해를 볼 수도 있음
Fail-safe defaults
  • 보안적인 문제가 일어 났을때 서비스를 멈추게 하여 막을 것인가 - 경제적 손실
open design
  • 오픈 소스를 활용하여 디자인 할 것인지 내부에서 자체적으로 개발할지
Separation of privilege
  • 개발하는 사람과 서버에서 운영 하는 사람은 분리해야한다
Least privilege
  • 권한은 업무를 수행할 수 있을만큼만 부여해야함

Access Control

  • Role-based Access Control

    • 사람이 아닌 역할(학부장, 서버 관리자 등)에 권한을 부여함

Encryption and Decryption

  • 암호화가 안된 메세지 : plaintext(M)
  • 암호화 후 : ciphertext(C)
    • E,D는 각각의 알고리즘, 알고리즘을 활용하기 위해선 센더 리시버만 아는 KEY가 필요함

Symmetric Key Distribution

  • 관계 마다 private key가 존재(키가 많이 필요함)
    • 비효율적임

Public-Key Crypthgraphy

  • 키의 개수를 줄여 효율적으로 만든 알고리즘
  • 사용자는 공개키와 비밀키를 보유
    • 공개키는 암호화, 비밀키는 복호화 하는데 사용 됨
  • A가 B에게 메세지를 보내는 과정
    • A가 모두에게 공개된 B의 공개 키를 활용해 암호화된 메세지를 B에게 전송
    • B는 B의 비밀 키를 활용하여 받은 메세지를 복호화

Cryptographic Hash Functions


Mwssage Authentication CODES(MAC)

  • 메세지를 누가 생성했는지와 변경된 부분이 있는 체크(INTEGRITY)

Password의 저장

  • 해쉬 알고리즘 사용
    • password -> h(password) : 굉장히 빠르게 됨
    • h(password) -> password : 불가능함
    • password1 = password2 일때 반드시 h(password1) = h(password2)를 만족
    • password1 != password2 이면 매우 높은 확률로 h(password1) != h(password2)
  • 서버에 저장되는 파일에는 회원가입시 입력한 ID, password로 생성한 해쉬 함수의 매핑으로 저장됨

로그인시 패스워드간의 비교가 아닌 입력한 패스워드를 기반으로 생성한 해쉬함수와 기존에 저장되어 있던 아이디에 매핑되어있는 해쉬 함수를 비교함


profile
KMU SW

0개의 댓글