닫기
보안대책

데이터 암호화

포스팅 뷰1125

데이터 암호화의 정의

데이터는 크게 저장 데이터 암호화(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) 등 기술적으로 검증된 표준을 사용하지 않고 개별적으로 개발할 때에는 위 세 가지 방식이 안전한지 검증하여야 한다.