다음을 통해 공유


SQL Server 인증서 및 비대칭 키

적용 대상: Microsoft Fabric의 SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System(PDW) SQL 데이터베이스

공개 키 암호화는 사용자가 공개 키 및 프라이빗 키를 만드는 메시지 비밀화의 형식입니다. 프라이빗 키는 비밀로 유지되는 반면 공개 키는 다른 사람에게 배포할 수 있습니다. 키는 수학적으로 관련되어 있기는 하지만 공개 키를 사용하여 프라이빗 키를 쉽게 파생시킬 수는 없습니다. 공개 키를 사용하여 상응하는 프라이빗 키로만 해독할 수 있게 데이터를 암호화할 수 있습니다. 이를 사용하여 프라이빗 키의 소유자에게 보내는 메시지를 암호화할 수 있습니다. 마찬가지로 프라이빗 키의 소유자는 공개 키로만 해독할 수 있게 데이터를 암호화할 수 있습니다. 이러한 사용은 인증서에 포함된 정보가 프라이빗 키의 소유자에 의해 암호화되어 콘텐츠 작성자를 보장하는 디지털 인증서의 기초를 형성합니다. 암호화 키와 암호 해독 키는 서로 다르기 때문에 비대칭 키라고 합니다.

인증서 및 비대칭 키 모두 비대칭 암호화를 사용하는 방법입니다. 인증서는 만료일 및 발급자와 같은 추가 정보를 포함할 수 있으므로 비대칭 키의 컨테이너로 자주 사용됩니다. 두 암호화 알고리즘의 메커니즘 간에는 차이가 없으며 키 길이가 동일하다고 감안할 때 강도에 차이가 없습니다. 일반적으로 인증서를 사용하여 데이터베이스에서 다른 유형의 암호화 키를 암호화하거나 코드 모듈을 서명합니다.

인증서 및 비대칭 키는 다른 사용자가 암호화하는 데이터를 해독할 수 있습니다. 일반적으로 비대칭 암호화를 사용하여 대칭 키를 암호화하고 이를 데이터베이스에 저장합니다.

공개 키에는 인증서에 있을 수 있는 특정한 형식이 없고 이 키를 파일로 내보낼 수 없습니다.

참고 항목

SQL Server에는 서버와 데이터베이스에 사용할 인증서와 키를 만들고 관리할 수 있는 기능이 들어 있습니다. SQL Server는 다른 애플리케이션 또는 운영 체제에서 인증서 및 키를 만들고 관리하는 데 사용할 수 없습니다.

인증서

인증서란 SQL Server에 대한 공개(및 필요에 따라 프라이빗) 키를 포함하는 디지털 서명된 보안 개체입니다. 외부에서 생성된 인증서를 사용하거나 SQL Server에서 인증서를 생성할 수 있습니다.

참고 항목

SQL Server 인증서는 IETF X.509v3 인증서 표준을 준수합니다.

인증서는 X.509 인증서 파일로 내보내기와 가져오기 키 모두에 대한 옵션 때문에 유용합니다. 인증서 생성에 대한 구문을 통해 만료 날짜와 같이 인증서의 생성 옵션을 사용할 수 있습니다.

SQL Server에서 인증서 사용하기

인증서를 사용하여 데이터베이스 미러링 시 연결을 보호하거나 패키지 및 기타 개체에 서명하거나 데이터 또는 연결을 암호화할 수 있습니다. 다음 표에는 SQL Server의 인증서에 대한 추가 리소스가 나와 있습니다.

항목 설명
CREATE CERTIFICATE (Transact-SQL) 인증서를 만들기 위한 명령에 대해 설명합니다.
디지털 서명을 사용하여 패키지 원본 확인 인증서를 사용하여 소프트웨어 패키지에 서명하는 방법에 대한 정보를 보여 줍니다.
데이터베이스 미러링 엔드포인트에 대한 인증서 사용(Transact-SQL) 데이터베이스 미러링에 인증서를 사용하는 방법에 대해 설명합니다.

비대칭 키

비대칭 키는 대칭 키를 보호하는 데 사용됩니다. 또한 제한된 데이터 암호화와 데이터베이스 개체의 디지털 서명에도 사용할 수 있습니다. 비대칭 키는 프라이빗 키와 이에 상응하는 공개 키로 구성됩니다. 비대칭 키에 대한 자세한 내용은 CREATE ASYMMETRIC KEY(Transact-SQL)를 참조하세요.

비대칭 키는 강력한 이름 키 파일에서 가져올 수는 있지만 내보낼 수는 없습니다. 만료 옵션도 없습니다. 비대칭 키는 연결을 암호화할 수 없습니다.

SQL Server에서 비대칭 키 사용하기

비대칭 키는 데이터에 보안을 설정하거나 일반 텍스트를 서명하는 데 사용할 수 있습니다. 다음 표에는 SQL Server의 비대칭 키에 대한 추가 리소스가 나와 있습니다.

항목 설명
CREATE ASYMMETRIC KEY (Transact-SQL) 비대칭 키를 만들기 위한 명령에 대해 설명합니다.
SIGNBYASYMKEY(Transact-SQL) 개체를 서명하는 옵션을 표시합니다.

도구

Microsoft는 인증서 및 강력한 이름 키 파일을 생성하는 도구와 유틸리티를 제공합니다. 이러한 도구는 키 생성 프로세스에서 SQL Server 구문보다 더 많은 유연성을 제공합니다. 이러한 도구를 사용하여 더 복잡한 키 길이로 RSA 키를 만든 다음 이를 SQL Server로 가져올 수 있습니다. 다음 표에서는 이러한 도구를 찾을 수 있는 위치를 보여 줍니다.

도구 목적
New-SelfSignedCertificate 자체 서명된 인증서를 만듭니다.
makecert 인증서가 만들어집니다. 이를 사용하지 않고 New-SelfSignedCertificate가 사용됩니다.
sn 대칭 키에 강력한 이름을 만듭니다.

암호화 알고리즘 선택

CREATE SYMMETRIC KEY(Transact-SQL)

CREATE CERTIFICATE (Transact-SQL)

참고 항목

sys.certificates(Transact-SQL)
TDE(투명한 데이터 암호화)