데이터베이스의 암호화를 통해 중요 데이터 보호하고, 정보유출시에도 데이터 기밀성 보장
주요 데이터에 대하여 컬럼 단위로 암/복호화 수행 |
키관리 서버 별도 구착하여 안전하게 암호키 관리 |
응용서버와정책서버,DB서버와 정책서버간의 암호통신으로 안전하게 암호키 전송 |
암/복호화 수행시 접근통제, DB계정/IP/어플리케이션명/시간 등 암호화 컬럼별접근제어 |
API, Plub_In, Hybrid방식지원/MySQL,Oracle 국산DBMS등 상용DBMS지원 |
국가정보원 검증필 암호묘듈을 통해 안전한 암호알고리즘 사용 |
웹기반의 Admin제공, 정책서버의 접근기록 및 통계관리 |
구분 | API방식 | Plug-In방식 |
---|---|---|
보안 |
* Application에서 암호화하여 DB에 전달 * WAS에서 DB계정과 비밀번호가 탈취되어도 안전 |
* Application에서 평문으로 DB에 전달 * WAS에서 DB계정이 탈취되는 경우 평문 데이터 유출 |
성능 |
* 암복호화 연산 처리에 최적화 모듈을 사용하며 Application을 통한 분산 효과 * 방식 중 가장 고 성능 |
* 모든 암복호화 연산과 외부 암복호화 모듈 사용 시 DBMS 자원 사용 * 다량의 트랜잭션 처리와 배치 작업 처리 불가 |
가용성 |
* 암복호화 장애시 다른 Application 및 DB에 영향 없음 |
* 암복호화 장애 시 암호화 사용 업무 장애 발생 가능 |
변경성 |
* Application의 암복호화 호출을 기존 로직에 반영 필요 |
* Application의 수정 최소화 * DB테이블 구조 및 스키마 변경 필요(View 사용시) |
사용성 |
* SQL툴을 사용하여 암복호화 사용불가(Hybrid 구성 시 가능) * SQL툴 사용 가능 |
* Application에서 평문으로 DB에 전달 * WAS에서 DB계정이 탈취되는 경우 평문 데이터 유출 |
적용기준 |
* 해킹 위험과 취약점의 위협에 보안강화가 필요한 업무 * 높은 성능이 요구되고 트랜잭션이 많은 업무 (업무 수정 필수) |
* 소스 일부의 변경이 불가하고 업무의 트랜잭션이 적은 업무 * 성능 개선을 위해 쿼리 수정을 동반 할 수 있음 |
관리성 |
* 암호화 컬럼 추가시 관리자 툴을 사용하여 간단한 적용 |
* 암호화 컬럼 추가시 관리자 툴을 사용하여 간단한 적용 * 신규테이블 생성시 Object 추가에 따른 DB구조 변경 발생(View 사용시) |
유지보수 |
* 대부분 인력투입 발생이 없으나 대형 고객사는 암호모듈 재 적용에 따른 인력투입 발생 가능 |
* OS 업그레이드 및 소프트웨어 패치시 인력투입 발생 가능 |
구분 | 보안 요구사항 | 요구 기능 | 설명 |
---|---|---|---|
암호 지원 | * 안정성이 검증된 암호모듈·알고리즘 등 사용 |
* ARIA 120/192/256, SEED * SHA 256 이상, HAS-160 |
[국가정보원 암호모듈 검증필] |
암호키 관리 | * 암호키 생성·접근·갱신·파기 등의 안전성 확보 |
* 암호키 유도는 검증된 국제 표준 알고리즘 * 공유메모리에 로드된 암호키는 평문 불가 |
|
DB 데이터 암복호화 | * 암복호화 암호문·인덱스 등 중요 데이터의 안전성 확보 |
* 안전한 암호모듈을 통하여 암/복호화 * 원본데이터는 암호화 후 삭제 |
[국가정보원 암호모듈 검증필] |
접근제어 | * 암호키·암호문 등에 대한 비인가자의 접근 차단 |
* DB계정, IP, 애플리케이션, 접속기간 등 위 조건별 제한 |
|
암호통신 | * 전송 데이터의 기밀성·무결성 유지 |
* 제품 구성 요소간 안전한 전송 |
|
식별 및 인증 | * 인증 제품 사용자의 신원확인 및 검증 |
* 사용자의 연속된 인증 실패 후 초기화 * 인증데이터 재사용 공격 방지 |
|
보안 감사 | * 제품관련 중요 이벤트에 대한 감사기록 |
* 감사 데이터는 인증된 사용자만 접근 * DB 테이블명, DB 컬럼명, 쿼리 유형에 따라 검토 |
|
보안관리 | * 보안정책·감사기록 등의 효율적인 관리 |
* 암호키 및 보안정책 등 중요 데이터에 대한 백업 및 복구 기능 제공 |