데이터베이스 암호화
IT 위키
더 많은 작업
- 상위 문서: 데이터베이스 보안
- Database Encryption
- 데이터베이스에 저장된 데이터를 암호 알고리즘으로 암호화하여, 저장 매체나 파일이 유출되어도 내용을 알 수 없게 하는 보호 기법
| 방식 | 암·복호화 위치 | 장점 | 단점 |
|---|---|---|---|
| API 방식 | 애플리케이션 서버. 응용 프로그램이 암호화 모듈(API)을 호출 | DB 서버에 부하가 없다 | 응용 프로그램 소스를 수정해야 한다 |
| 플러그인(Plug-in) 방식 | DB 서버. DB에 설치한 암호화 모듈을 함수·프로시저 형태로 호출 | 응용 프로그램 수정이 적다 | DB 서버에 부하가 생기고, 일부 쿼리 수정이 필요하다 |
| TDE 방식 | DBMS 커널. 데이터를 디스크에 쓸 때 암호화, 읽을 때 복호화 | 응용 프로그램 수정이 없고 성능 저하가 적다 | 해당 DBMS 제품에 종속된다. DB에 접속한 사용자에게는 평문으로 보인다 |
| 파일 암호화 방식 | 운영체제. 데이터 파일 단위로 입출력 시 암·복호화 | 응용 프로그램과 DBMS 수정이 없고 비정형 데이터도 암호화 가능 | 컬럼 단위 적용이 어렵고 OS 부하가 생긴다 |
| 하이브리드 방식 | API 방식과 플러그인 방식을 함께 사용 | 두 방식의 부하·수정 부담을 나눈다 | 구성과 관리가 복잡하다 |
- 암호화 적용 단위에 따라 컬럼(칼럼) 단위 암호화와 테이블스페이스·파일 단위 암호화로도 나눈다.
- TDE는 Transparent Data Encryption의 약어로, 응용 프로그램이 암호화를 의식하지 않는다는 뜻에서 '투명'이라 부른다.
「개인정보 보호법」 제24조제3항은 고유식별정보를 처리할 때 암호화 등 안전성 확보에 필요한 조치를 하도록 하고, 제24조의2제2항은 주민등록번호를 암호화 조치를 통하여 안전하게 보관하도록 한다. 고유식별정보는 같은 법 시행령 제19조의 주민등록번호, 여권번호, 운전면허의 면허번호, 외국인등록번호다.
세부 기준은 「개인정보의 안전성 확보조치 기준」 제7조(개인정보의 암호화)가 정한다.
| 대상 | 조치 |
|---|---|
| 비밀번호, 생체인식정보 등 인증정보 | 저장·송수신 시 안전한 암호 알고리즘으로 암호화. 비밀번호는 일방향 암호화하여 저장 |
| 이용자의 주민등록번호, 여권번호, 운전면허번호, 외국인등록번호, 신용카드번호, 계좌번호, 생체인식정보 | 안전한 암호 알고리즘으로 암호화하여 저장 |
| 이용자가 아닌 정보주체의 고유식별정보 | 인터넷 구간·DMZ에 저장하면 암호화. 내부망에 저장하면 암호화하되, 주민등록번호 외의 고유식별정보는 영향평가나 위험도 분석 결과에 따라 적용 여부를 정할 수 있음 |
| 인터넷망 구간으로 송수신하는 개인정보 | 안전한 암호 알고리즘으로 암호화 |
| 개인정보취급자의 PC, 모바일 기기, 보조저장매체에 저장하는 이용자의 개인정보 등 | 암호화한 후 저장 |
- 위 내용은 개인정보보호위원회 고시 제2026-9호(2026. 7. 1. 시행) 기준이다.
- 필기: DB 암호화 방식(API, 플러그인, TDE, 하이브리드)의 암·복호화 위치와 장단점 구분
- 실기 단답형: "DBMS 커널 수준에서 응용 프로그램 수정 없이 암호화하는 방식"의 명칭(TDE)
- 비밀번호는 일방향 암호화(해시), 복호화가 필요한 개인정보는 양방향(대칭키) 암호화