암호화

화낼거양's avatar
Dec 04, 2024
암호화
 
 
 
💡
암호화는 데이터의 보안을 강화하기 위해 정보를 변환하는 과정입니다. 이 과정을 통해 데이터는 읽을 수 없게 되며, 인가된 사람이나 시스템만이 정보를 복호화할 수 있습니다. 암호화는 단방향 암호화양방향 암호화로 나뉩니다.
 
 
 

단방향 암호화

 
단방향 암호화는 한번 암호화된 데이터를 복호화할 수 없는 방식을 말합니다. 주로 해시 함수가 사용됩니다.
 
아래는 주로 사용하는 알고리즘 2개입니다.
 
  • SHA-512 (Secure Hash Algorithm 512-bit): SHA-512는 데이터의 고유한 해시 값을 생성하며, 충돌이 적고 보안성이 높은 해시 함수입니다.
  • HMAC (Hash-based Message Authentication Code): HMAC은 키를 사용하여 메시지의 무결성을 확인하는 해시 함수입니다.
 
단방향 암호화는 주로 전자 서명이나 데이터 무결성 확인에 사용됩니다. JWT (JSON Web Token)도 이러한 방식으로 사용됩니다.
 
 
 
 
 

양방향 암호화

 
양방향 암호화는 데이터를 암호화하고 다시 복호화할 수 있는 방식을 말합니다. 이 방식은 두 가지 주요 유형으로 나뉩니다: 대칭키 암호화비대칭키 암호화.
 

대칭키 암호화

 
대칭키 암호화는 동일한 키를 사용하여 데이터를 암호화하고 복호화하는 방식입니다.
 
💡
  • 문제점: 키 전달의 어려움이 있으며, 발행 기관과 검증 주체가 동일해야 합니다.
 

비대칭키 암호화

 
비대칭키 암호화는 서로 다른 두 개의 키(공개키와 개인키)를 사용하는 방식입니다. 주로 RSA 알고리즘이 사용되며, 이는 3세대 암호화 기술로 간주됩니다.
 
  • 공개키 (Public Key): 데이터를 암호화하는 데 사용됩니다.
  • 개인키 (Private Key): 데이터를 복호화하는 데 사용됩니다.
    • 비대칭키 암호화는 보통 CIA 원칙에 따라 사용됩니다:
       
💡
CIA 원칙은 정보 보안의 세 가지 주요 원칙인 기밀성(Confidentiality), 무결성(Integrity), 가용성(Availability)을 의미합니다. 이 원칙들은 정보 보안의 기초를 이루며, 모든 보안 전략과 절차의 핵심 요소로 간주됩니다.
자세한 내용은 본문 최하단 참조.
 
  • 기밀성 (Confidentiality): 정보 접근이 인가된 사용자에게만 허용됨.
  • 무결성 (Integrity): 데이터가 변조되지 않음을 보장함.
  • 가용성 (Availability): 인가된 사용자가 언제든지 정보에 접근할 수 있음.
 
 

예시 (RSA 알고리즘)

 
RSA 알고리즘은 공개키 암호화의 대표적인 예입니다:
  • A(A개인키, A공개키)B(B공개키, B개인키): A와 B가 서로 데이터를 안전하게 주고받을 수 있도록 각각의 키 쌍을 가집니다.
이와 같은 방식으로 암호화 기술은 데이터의 안전한 전송과 저장을 보장합니다.
더 궁금한 사항이나 추가적인 설명이 필요하시면 언제든지 말씀해 주세요! 😊
 
 
 
 

참고 사항 (CIA 원칙)

 

기밀성 (Confidentiality)

기밀성은 인가된 사용자만 특정 정보에 접근할 수 있도록 보호하는 것을 의미합니다. 기밀성을 유지하기 위해 암호화, 접근 제어, 인증과 같은 다양한 기술과 절차가 사용됩니다. 기밀성의 목적은 민감한 정보가 무단으로 접근되거나 노출되지 않도록 하는 것입니다.

무결성 (Integrity)

무결성은 정보가 인가된 사용자에 의해서만 수정될 수 있도록 보장하며, 정보가 손상되거나 변조되지 않도록 보호하는 것을 의미합니다. 무결성을 유지하기 위해 해시 함수, 디지털 서명, 체크섬 등이 사용됩니다. 무결성의 목적은 데이터의 일관성과 신뢰성을 보장하는 것입니다.

가용성 (Availability)

가용성은 인가된 사용자가 필요할 때 언제든지 정보와 시스템에 접근할 수 있도록 보장하는 것을 의미합니다. 가용성을 유지하기 위해 백업, 데이터 복구, 중복성, 부하 분산 등의 기술이 사용됩니다. 가용성의 목적은 서비스가 중단되지 않고 지속적으로 제공될 수 있도록 하는 것입니다.
 

요약

  • 기밀성 (Confidentiality): 정보 접근이 인가된 사용자에게만 허용됨.
  • 무결성 (Integrity): 데이터가 변조되지 않음을 보장.
  • 가용성 (Availability): 인가된 사용자가 언제든지 정보에 접근할 수 있음.
 
 
 
 
 
Share article

moohyun