CryptXmlCreateReference 関数 (cryptxml.h)

CryptXmlCreateReference 関数は、XML シグネチャへの参照を作成します。

構文

HRESULT CryptXmlCreateReference(
  [in]           HCRYPTXML                 hCryptXml,
                 DWORD                     dwFlags,
  [in, optional] LPCWSTR                   wszId,
  [in, optional] LPCWSTR                   wszURI,
  [in, optional] LPCWSTR                   wszType,
  [in]           const CRYPT_XML_ALGORITHM *pDigestMethod,
                 ULONG                     cTransform,
  [in]           const CRYPT_XML_ALGORITHM *rgTransform,
  [out]          HCRYPTXML                 *phReference
);

パラメーター

[in] hCryptXml

XML 署名のハンドル。

dwFlags

参照の作成方法に影響するフラグを指定します。

現在定義されている dwFlags 値を次の表に示します。

意味
CRYPT_XML_FLAG_CREATE_REFERENCE_AS_OBJECT
0x00000001
このフラグを設定して Object ノードを作成し、 Signature 要素に追加します。 Object ノードへの参照が SignedInfo 要素に作成されます。

返されるハンドルはカプセル化された Object ノードであり、 CryptXmlCreateReference 関数の後続の呼び出しで使用して 、マニフェスト ノード内に参照を作成できます。

[in, optional] wszId

署名の Reference 要素の ID 属性の値を含む null で終わる Unicode 文字列へのポインター。 このパラメーターが NULL の場合、 ID 属性は作成されません。 このパラメーターが空の文字列の場合は、空の値を持つ ID 属性が作成されます。

[in, optional] wszURI

署名の Reference 要素の URI 属性の値を含む null で終わる Unicode 文字列へのポインター。 このパラメーターが空の文字列の場合は、空の値を持つ URI 属性が作成されます。

[in, optional] wszType

シグネチャの Reference 要素の Type 属性の値を含む null で終わる Unicode 文字列へのポインター。 処理エンジンは、この属性をチェックまたは使用しません。

[in] pDigestMethod

ダイジェスト メソッドを含む CRYPT_XML_ALGORITHM 構造体へのポインター。

cTransform

rgTransform パラメーターが指す配列内の要素の数。

[in] rgTransform

ダイジェスト計算の前に参照データに適用される変換アルゴリズムを含む、 CRYPT_XML_ALGORITHM 構造体の順序付けられた配列へのポインター。

[out] phReference

参照ハンドルへのポインター。

戻り値

関数が成功した場合、関数は 0 を返します。

関数が失敗した場合は、エラーを示す HRESULT 値を返します。

要件

要件
サポートされている最小のクライアント Windows 7 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー cryptxml.h
Library Cryptxml.lib
[DLL] Cryptxml.dll