세상 모든 보안 이야기

보안 백과사전

좌우로 움직여보세요

보안대책

데이터 암호화

포스팅 뷰745

데이터 암호화의 정의

데이터는 크게 저장 데이터 암호화(Data encryption at rest)와 전송 데이터 암호화(Data encryption in transit)로 나뉜다.


저장 데이터 암호화 방법

  • 디스크 암호화
    • 운영체제를 통해 디스크에 저장되는 모든 파일을 암호화한다. 디스크 암호화를 처음 적용할 때 이미 디스크에 저장되어 있는 파일을 모두 암호화하여야 하므로 시간이 많이 든다.
    • 로그인하여 해당 파일에 접근 권한이 있는 사람에게 파일은 복호화되어 보인다. 따라서 컴퓨터 또는 디스크의 도난과 같이 컴퓨터에 로그인할 수 없는 상황에서 컴퓨터의 디스크를 직접 접근해 데이터를 유출하려는 시도에 대해 적합한 방어 방법이다.
    • 운영체제나 디스크에 문제가 발생하면 전체 데이터를 잃어 버릴 수 있다. Mac에서는 별도의 유틸리티 없이 OS에서 이 기능을 제공하고, 안정적으로 작동한다.


  • 폴더 암호화
    • 특정 폴더에 저장되는 파일을 모두 암호화한다. 폴더에 접근할 때 별도의 비밀번호를 걸지 않으면, 보안 수준은 디스크 암호화와 비슷하다.
    • 디스크 암호화보다 효율성이 좋고, OS나 디스크의 문제로 데이터를 잃어 버릴 수 있는 가능성이 적다.


  • 파일 암호화
    • 지정된 파일을 암복호화한다.


  • 문서 중앙화

  • DB 암호화


전송 데이터 암호화 방법

기본적으로 데이터 송신자와 수신자가 상호 인증(또는 일방향 인증)을 통해 데이터를 송수신자를 확인한 뒤 송신자가 데이터를 암호화하고 수신자가 데이터를 복호화한다.

  • 대표적인 것이 SSL(또는 TLS)로 암호화하는 방법이다. https는 웹을 통해 데이터를 전송할 때 TLS를 이용하는 프로토콜이다.
  • 인터넷에서 회사 내부의 중요 시스템에 접속할 때 사용하는 가상사설망(VPN)도 전송 데이터 암호화의 한 방법이다. SSL VPN은 TLS를 이용하여 구현한 VPN이다. 별도의 VPN 클라이언트 없이 웹 브라우저만 있으면 VPN을 이용할 수 있다는 장점이 있다.
  • 클라이언트와 서버 사이에 별도의 암호화 방법을 사용하여 데이터를 암복호화할 수 있다.

전송 시 암호화의 보안성은 (1)송수신자의 인증, (2)안전한 암호 알고리즘의 사용, (3)안전한 키 공유와 관리에 달려 있다. 따라서 PKI 기반의 SSL(TLS) 등 기술적으로 검증된 표준을 사용하지 않고 개별적으로 개발할 때에는 위 세 가지 방식이 안전한지 검증하여야 한다.