次の方法で共有


VTableProvStruc 構造体

VTableProvStruc 構造体には、暗号化サービス プロバイダー (CSP) 関数で使用できるコールバック関数へのポインターが含まれています。

構文

typedef struct VTableProvStruc {
  DWORD   Version;
  FARPROC FuncVerifyImage;
  FARPROC FuncReturnhWnd;
  DWORD   dwProvType;
  BYTE    *pbContextInfo;
  DWORD   cbContextInfo;
  LPSTR   pszProvName;
} VTableProvStruc, *PVTableProvStruc;

メンバー

Version

構造体のバージョンを示す DWORD 値。 この構造体の 3 つのバージョンが使用されます。 バージョンは 1、2、3 の番号で、構造体のどのメンバーが有効かを判断します。 バージョン 1 のメンバーは、この構造をサポートするすべてのシステムで有効です。

これはバージョン 1 のメンバーです。

FuncVerifyImage

CSP が読み込む DLL の署名を検証するために CSP が使用する FuncVerifyImage コールバック関数のアドレス。 CSP が関数呼び出しを行うすべての補助 DLL は、プライマリ CSP DLL と同じ方法 (および同じキーを使用) で署名する必要があります。 この署名を確実に行うには、 LoadLibrary 関数を使用して補助 DLL を動的に読み込む必要があります。 ただし、DLL が読み込まれる前に、DLL の署名を検証する必要があります。 次の例に示すように、CSP は FuncVerifyImage 関数を呼び出してこの検証を実行します。

この関数ポインターは、CSP コンテキストが解放されるまで格納および使用できます。

これはバージョン 1 のメンバーです。

FuncReturnhWnd

CSP が表示される任意のユーザー インターフェイスの親または所有者として使用する必要があるウィンドウ ハンドルを返す FuncReturnhWnd コールバック関数のアドレス。 ユーザーと直接通信しない CSP と、この目的で専用ハードウェアを使用する CSP は、このエントリを無視できます。 このウィンドウ ハンドルは既定では 0 ですが、 アプリケーションは CryptSetProvParam 関数を使用して PP_CLIENT_HWND プロパティを設定することで、これを別の値に設定できます。

この関数ポインターは、CSP コンテキストが解放されるまで格納および使用できます。

これはバージョン 1 のメンバーです。

dwProvType

取得するプロバイダーの種類を指定する DWORD 値。 次の プロバイダーの種類 は定義済みであり、 CSP の相互運用性に関するページで詳しく説明されています。

  • PROV_RSA_FULL
  • PROV_RSA_SIG
  • PROV_DSS
  • PROV_FORTEZZA
  • PROV_MS_EXCHANGE

これはバージョン 2 のメンバーです。

pbContextInfo

コンテキスト情報の配列へのポインター。 pbContextInfo メンバーと cbContextInfo メンバーは、CPSetProvParam 関数が set と共に呼び出されたときに使用される情報セットPP_CONTEXT_INFO決定します。

これはバージョン 2 のメンバーです。

cbContextInfo

pbContextInfo 配列内の要素の数を示す DWORD 値。

これはバージョン 2 のメンバーです。

pszProvName

プロバイダーの名前を含む文字列。

これはバージョン 3 のメンバーです。

解説

VTableProvStruc 構造体内のポインターは、CPAcquireContext 関数内でのみ使用できます。 CPAcquireContext の呼び出しが完了した後に構造体のメンバーが必要な場合は、必要な構造体要素のコピーを CSP によって作成する必要があります。 この構造体の関数ポインターは、CSP コンテキストが解放されるまで格納および使用できます。

要件

要件
サポートされている最小のクライアント
Windows XP [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows Server 2003 [デスクトップ アプリのみ]
ヘッダー
Cspdk.h
Unicode 名と ANSI 名
VTableProvStrucW (Unicode)