[정보보안] PGP(Pretty Good Privacy)란?

[정보보안] PGP(Pretty Good Privacy)란?

온라인 통신 시스템의 개인 정보 보호, 보안 및 인증 서비스를 제공하도록 설계된 암호화 소프트웨어

PGP는 공개 키 암호 방식을 구현하기 위해 널리 사용되는 최초의 소프트웨어 중 하나입니다.
이 시스템은 대칭 암호화비대칭 암호화를 모두 사용해 높은 수준의 보안을 가능하게 하는 하이브리드 암호화 시스템입니다.

문자 암호화의 기본 과정에서, 평문(분명하게 이해될 수 있는 데이터)은 암호화(읽을 수 없는 데이터)로 전환됩니다.
그러나 암호화 과정 이전에, 대부분의 PGP 시스템은 데이터 압축을 진행합니다.
PGP는 평문 파일을 전송하기 전에 압축함으로써, 저장 공간과 전송 시간을 절약하는 동시에 보안을 강화합니다.

파일을 압축한 다음에는, 실제 암호화 과정이 진행됩니다. 이 단계에서 압축된 평문 파일은 단일 사용키로 암호화되며, 이는 세션 키로 알려져 있습니다. 해당 키는 대칭 암호 방식을 통해 임의로 생성되며, 각 PGP 통신 세션은 고유한 세션 키를 갖고 있습니다.




다음으로 세션 키(1)는 비대칭 암호화를 통해 자체 암호화됩니다. 예정된 수신자(밥)는 그의 공개 키(2)를 메시지의 전송자(엘리스)에게 제공하고, 이를 통해 그녀는 세션 키를 암호화 할 수 있습니다. 이 과정은 보안 환경에 상관없이 인터넷을 통해 앨리스가 안전하게 밥과 세션 키를 공유할 수 있게 합니다.
세션 키의 비대칭 암호화는 보통 RSA 알고리즘을 통해 이뤄집니다. 인터넷 보안의 많은 부분을 차지하고 있는 TLS(Transport Layer Security) 프로토콜을 포함해서 많은 암호화 시스템이 RSA를 사용합니다.

메시지의 암호문과 암호화된 세션키가 전송된 다음, 밥은 자신의 개인 키(3)를 사용해 세션 키를 해독할 수 있으며, 이는 암호문을 본래의 평문으로 해독하는데 사용됩니다.
PGP는 암호화와 해독이라는 기본적인 처리 외에도 디지털 서명도 지원하고 있으며, 이는 다음 세 가지 이상의 기능을 포함합니다.
  • 증명 : 밥은 앨리스가 보낸 메시지를 검증할 수 있습니다.
  • 무결성 : 밥은 메시지가 변경되지 않았음을 확인할 수 있습니다.
  • 부인 방지 : 메시지에 디지털 서명이 된 이후, 앨리스는 메시지를 보내지 않았다고 주장할 수 없습니다.

출처

댓글

이 블로그의 인기 게시물

[Python] # -*- coding: utf-8 -*-를 쓰는 이유

[소프트웨어공학] NS(Nassi-Schneiderman) 차트

[컴퓨터네트워크] Telnet이란?