기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
암호화
암호화에는 두 가지 중점 영역이 있습니다.
-
전송 중 암호화
-
저장 시 암호화
Db2 기본 암호화는 Db2에 내장되어 디스크에 기록될 때 데이터를 암호화하여 저장 데이터를 보호합니다. Db2 네이티브 암호화는 표준 2계층 모델을 사용합니다. 실제 데이터는 Db2 데이터 암호화 키(DEK)로 암호화되고 DEK는 Db2 마스터 키(MK)로 암호화됩니다. DEK는 데이터베이스 내에서 관리되는 반면 MK는 키 스토어에 외부에 저장됩니다.
저장 시 암호화를 달성하기 위해 Amazon Elastic Block Store(Amazon EBS) 볼륨 암호화가의 Db2 네이티브 암호화보다 선호됩니다. 설정 및 조정에 클라우드 네이티브 솔루션을 사용할 수 AWS 있기 때문입니다. 또한 EBS 볼륨 암호화를 사용하면 여러 데이터베이스 서버를 마이그레이션하면서 네이티브 암호화를 설정하는 데 소요되는 불필요한 운영 오버헤드와 시간을 없앨 수 있습니다. 자세한 내용은 블로그 게시물 Architecting for database encryption on AWS
전송 중 암호화는 다음 데이터 통신과 관련이 있습니다.
-
클라이언트와 서버 사이
-
기본 및 대기 고가용성 재해 복구(HADR) 서버 간
-
데이터베이스 서버와 외부 서비스 사이
전송되는 데이터는 TLS를 사용하여 암호화됩니다. 또한 Db2는 서버 측 파라미터를 사용하여 사용자 ID 및 암호의 내부 암호화를 지원합니다AUTHENTICATION
.
TLS는 전송되는 데이터에 대한 보안 터널을 제공하고 인증서를 키 스토어 내에 안전하게 저장하는 IBM Global Security Kit(GSKit)의 라이브러리를 사용합니다.
다음 다이어그램은 클라이언트와 서버 간의 TLS 핸드셰이크를 보여줍니다.

-
클라이언트가 TLS 연결을 요청하고 지원되는 암호 제품군을 나열합니다.
-
서버는 선택한 암호 제품군과 퍼블릭 키가 포함된 디지털 인증서 사본으로 응답합니다.
-
클라이언트는 인증서의 유효성을 확인합니다. 인증서가 유효하면 세션 키와 메시지 인증 코드(MAC)가 퍼블릭 키로 암호화되어 서버로 다시 전송됩니다.
-
서버는 세션 키와 MAC를 복호화합니다. 그런 다음 서버는 클라이언트와 암호화된 세션을 시작하기 위한 승인을 보냅니다.
-
서버와 클라이언트는 세션 키와 MAC를 사용하여 데이터를 안전하게 교환합니다.
인증서가 만료되면 인증서를 갱신하고 키 스토어에서 업데이트해야 합니다.
Db2 버전 11.5.6부터 TLS를 구성하는 동안 호스트 이름 검증을 포함할 수 있습니다. 호스트 이름 검증은 클라이언트 연결이 서버 인증서의 호스트 이름이 클라이언트의 호스트 이름과 일치하는지 검증하는 데 도움이 됩니다. 이 검증은 person-in-the-middle 공격을 방지하는 데 도움이 될 수 있습니다. 이 외에도 클라이언트에서 TLSVersion
파라미터를 구성할 수 있습니다. Db2 버전 11.5.8부터 TLS 1.3이 지원됩니다.