다음을 통해 공유


프라이빗 및 퍼블릭 키 함수

CertEnroll.dll IX509PrivateKeyIX509PublicKey 인터페이스를 구현합니다. 예를 들어 IX509PrivateKey 인터페이스를 사용하여 프라이빗 키에 대해 다음 작업을 수행할 수 있습니다.

  • 키를 만들고, 열고, 닫고, 가져오고, 내보내고, 삭제합니다.
  • 공개 키 알고리즘을 지정하거나 검색합니다.
  • 공개 키 알고리즘을 지원하는 사용 가능한 CSP( 암호화 서비스 공급자 )에 대한 정보를 지정하거나 검색합니다.
  • 프라이빗 키와 연결된 인증서를 지정하거나 검색합니다.
  • 키 컨테이너의 이름을 지정하거나 검색합니다.
  • 키에 대한 설명과 표시 이름을 지정하거나 검색합니다.
  • 프라이빗 키에 있는 내보내기 제약 조건을 지정하거나 검색합니다.
  • 키가 있는지 여부를 나타내는 부울 값을 지정하거나 검색합니다.
  • 사용하기 전에 키를 보호하는 방법을 나타내는 값을 지정하거나 검색합니다.
  • 키를 서명, 암호화 또는 둘 다에 사용할 수 있는지 여부를 나타내는 값을 지정하거나 검색합니다.
  • 키를 사용할 수 있는 특정 용도를 식별하는 값을 지정하거나 검색합니다.
  • 키의 길이를 지정하거나 검색합니다.
  • 컴퓨터 또는 사용자의 컨텍스트에서 키를 사용하거나 저장할지 여부를 나타내는 값을 지정하거나 검색합니다.
  • 키가 열렸는지 여부를 지정하는 부울 값을 검색합니다.
  • 스마트 카드 개인 키에 액세스하려면 개인 식별 번호를 지정합니다.
  • 키와 연결된 CSP의 이름을 지정하거나 검색합니다.
  • 키에 대한 보안 설명자를 지정하거나 검색합니다.

다음 각 섹션에서는 암호화 키를 관리하는 데 사용할 수 있는 Xenroll.dll 내보낸 함수를 식별합니다. 또한 각 항목에서는 CertEnroll.dll 사용하여 함수를 교체하거나 두 라이브러리 간에 매핑이 없음을 나타내는 방법에 대해서도 설명합니다.

ContainerNameWStr

Xenroll.dll ContainerNameWStr 함수는 키 컨테이너의 이름을 지정하거나 검색합니다.

CertEnroll.dll 사용하는 경우 다음 작업을 수행하여 키 컨테이너의 이름을 검색할 수 있습니다.

  1. 기존 IX509Enrollment 개체에서 Request 속성을 호출합니다.
  2. 1단계에서 반환된 요청에서 GetInnerRequest 메서드를 호출하여 가장 안쪽 요청을 검색합니다.
  3. 2단계에서 반환된 IX509CertificateRequest 개체에서 QueryInterface를 호출하여 IX509CertificateRequestPkcs10 개체로 캐스팅합니다.
  4. PKCS #10 요청에서 PrivateKey 속성을 호출합니다.
  5. 4단계에서 검색된 IX509PrivateKey 개체에서 ContainerName 속성을 호출합니다.

GenKeyFlags

Xenroll.dll 정의된 GenKeyFlags 함수는 프라이빗 키 또는 퍼블릭/프라이빗 키 쌍을 생성하는 데 사용되는 플래그를 지정하거나 검색합니다.

CertEnroll.dll 사용하는 경우 프라이빗 키를 만드는 방법을 결정하는 다양한 속성을 지정할 수 있습니다. 자세한 내용은 만들기를 참조 하세요.

GetKeyLen

Xenroll.dll 정의된 GetKeyLen 함수는 암호화 키의 최대 또는 최소 키 크기를 검색합니다.

CertEnroll.dll 사용하는 경우 IX509PrivateKey 또는 IX509PublicKey 개체에서 Length 속성을 호출하여 키 크기를 비트 단위로 검색할 수 있습니다.

GetKeyLenEx

Xenroll.dll 정의된 GetKeyLenEx 함수는 암호화 키의 최대 또는 최소 키 크기 또는 증가 길이를 검색합니다.

CertEnroll.dll 사용하는 경우 IX509PrivateKey 또는 IX509PublicKey 개체에서 Length 속성을 호출하여 키 크기를 비트 단위로 검색할 수 있습니다. 알고리즘이 증분 키 길이를 지원하는 경우 ICspAlgorithm 개체에서 IncrementLength 속성을 호출하여 증분 값을 검색할 수 있습니다. MinLengthMaxLength 속성을 호출하여 최소 및 최대 키 크기를 검색할 수도 있습니다.

GetSupportedKeySpec

Xenroll.dll 정의된 GetSupportedKeySpec 함수는 CSP가 교환 키, 서명 키 또는 둘 다를 지원하는지 여부를 나타내는 값을 검색합니다.

CertEnroll.dll 사용하는 경우 IX509PrivateKey 또는 ICspInformation 개체에서 KeySpec 속성을 호출하여 키에서 지원하는 작업을 검색할 수 있습니다.

KeySpec

Xenroll.dll 정의된 KeySpec 함수는 키 형식을 지정하거나 검색합니다.

CertEnroll.dll 사용하는 경우 IX509PrivateKey 개체에서 KeySpec 속성을 호출하여 키에서 지원하는 작업을 검색할 수 있습니다.

LimitExchangeKeyToEncipherment

Xenroll.dll 정의된 LimitExchangeKeyToEncipherment 함수는 암호화 키를 데이터 또는 키 암호화에만 사용할 수 있는지 여부를 나타내는 부울 값을 지정하거나 검색합니다.

CertEnroll.dll 이 함수에 해당하는 직접 을 포함하지 않습니다. 그러나 IX509ExtensionKeyUsage 개체를 지정하고 인증서 요청에 추가하여 거의 동등한 결과를 얻을 수 있습니다.

PVKFileNameWStr

Xenroll.dll 정의된 PVKFileNameWStr 함수는 내보낸 키가 포함된 파일의 이름을 지정하거나 검색합니다.

CertEnroll.dll 사용하는 경우 IX509PrivateKey 개체에서 Export 메서드를 호출하여 키를 BSTR로 내보낼 수 있습니다. ExportPublicKey 메서드를 호출하여 비대칭 키 쌍의 공개 키 부분을 내보낼 수 있습니다.

ReuseHardwareKeyIfUnableToGenNew

Xenroll.dll 정의된 ReuseHardwareKeyIfUnableToGenNew 함수는 새 키를 생성할 때 오류가 발생할 때 기존 키가 다시 사용되는지 여부를 나타내는 부울 값을 지정하거나 검색합니다.

CertEnroll.dll 사용하는 경우 IX509CertificateRequestPkcs10 개체에서 InitializeFromCertificate 메서드를 호출하고 X509RequestInheritOptions 열거형 형식의 값을 지정하여 기존 프라이빗 키를 다시 사용할 수 있습니다.

UseExistingKeySet

Xenroll.dll 정의된 UseExistingKeySet 함수는 기존 키를 사용할지 여부를 나타내는 부울 값을 지정하거나 검색합니다.

CertEnroll.dll 사용하는 경우 IX509CertificateRequestPkcs10 개체에서 InitializeFromCertificate 메서드를 호출하고 X509RequestInheritOptions 열거형 형식의 값을 지정하여 기존 프라이빗 및 퍼블릭 키를 다시 사용할 수 있습니다.

Xenroll.dll CertEnroll.dll매핑