|
|
//+---------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1995.
//
// File: capi.h
//
// Contents:
//
// Classes:
//
// Functions:
//
// History: 11-04-97 jbanes Created.
//
//----------------------------------------------------------------------------
#define SCH_CAPI_USE_CSP 0
#define SCH_CAPI_STATIC_RSA 1
#define SCH_CAPI_STATIC_DH 2
BOOL WINAPI SchCryptAcquireContextA( HCRYPTPROV *phProv, LPCSTR pszContainer, LPCSTR pszProvider, DWORD dwProvType, DWORD dwFlags, DWORD dwSchFlags);
BOOL WINAPI SchCryptAcquireContextW( HCRYPTPROV *phProv, LPCWSTR pszContainer, LPCWSTR pszProvider, DWORD dwProvType, DWORD dwFlags, DWORD dwSchFlags);
BOOL WINAPI SchCryptCreateHash( HCRYPTPROV hProv, ALG_ID Algid, HCRYPTKEY hKey, DWORD dwFlags, HCRYPTHASH *phHash, DWORD dwSchFlags);
BOOL WINAPI SchCryptDecrypt( HCRYPTKEY hKey, HCRYPTHASH hHash, BOOL Final, DWORD dwFlags, BYTE *pbData, DWORD *pdwDataLen, DWORD dwSchFlags);
BOOL WINAPI SchCryptDeriveKey( HCRYPTPROV hProv, ALG_ID Algid, HCRYPTHASH hBaseData, DWORD dwFlags, HCRYPTKEY *phKey, DWORD dwSchFlags);
BOOL WINAPI SchCryptDestroyHash( HCRYPTHASH hHash, DWORD dwSchFlags);
BOOL WINAPI SchCryptDestroyKey( HCRYPTKEY hKey, DWORD dwSchFlags);
BOOL WINAPI SchCryptDuplicateHash( HCRYPTHASH hHash, DWORD *pdwReserved, DWORD dwFlags, HCRYPTHASH * phHash, DWORD dwSchFlags);
BOOL WINAPI SchCryptDuplicateKey( HCRYPTKEY hKey, DWORD *pdwReserved, DWORD dwFlags, HCRYPTKEY * phKey, DWORD dwSchFlags);
BOOL WINAPI SchCryptEncrypt( HCRYPTKEY hKey, HCRYPTHASH hHash, BOOL Final, DWORD dwFlags, BYTE *pbData, DWORD *pdwDataLen, DWORD dwBufLen, DWORD dwSchFlags);
BOOL WINAPI SchCryptExportKey( HCRYPTKEY hKey, HCRYPTKEY hExpKey, DWORD dwBlobType, DWORD dwFlags, BYTE *pbData, DWORD *pdwDataLen, DWORD dwSchFlags);
BOOL WINAPI SchCryptGenKey( HCRYPTPROV hProv, ALG_ID Algid, DWORD dwFlags, HCRYPTKEY *phKey, DWORD dwSchFlags);
BOOL WINAPI SchCryptGenRandom( HCRYPTPROV hProv, DWORD dwLen, BYTE *pbBuffer, DWORD dwSchFlags);
BOOL WINAPI SchCryptGetHashParam( HCRYPTHASH hHash, DWORD dwParam, BYTE *pbData, DWORD *pdwDataLen, DWORD dwFlags, DWORD dwSchFlags);
BOOL WINAPI SchCryptGetKeyParam( HCRYPTKEY hKey, DWORD dwParam, BYTE *pbData, DWORD *pdwDataLen, DWORD dwFlags, DWORD dwSchFlags);
BOOL WINAPI SchCryptGetProvParam( HCRYPTPROV hProv, DWORD dwParam, BYTE *pbData, DWORD *pdwDataLen, DWORD dwFlags, DWORD dwSchFlags);
BOOL WINAPI SchCryptGetUserKey( HCRYPTPROV hProv, DWORD dwKeySpec, HCRYPTKEY *phUserKey, DWORD dwSchFlags);
BOOL WINAPI SchCryptHashData( HCRYPTHASH hHash, CONST BYTE *pbData, DWORD dwDataLen, DWORD dwFlags, DWORD dwSchFlags);
BOOL WINAPI SchCryptHashSessionKey( HCRYPTHASH hHash, HCRYPTKEY hKey, DWORD dwFlags, DWORD dwSchFlags);
BOOL WINAPI SchCryptImportKey( HCRYPTPROV hProv, CONST BYTE *pbData, DWORD dwDataLen, HCRYPTKEY hPubKey, DWORD dwFlags, HCRYPTKEY *phKey, DWORD dwSchFlags);
BOOL WINAPI SchCryptReleaseContext( HCRYPTPROV hProv, DWORD dwFlags, DWORD dwSchFlags);
BOOL WINAPI SchCryptSetHashParam( HCRYPTHASH hHash, DWORD dwParam, BYTE *pbData, DWORD dwFlags, DWORD dwSchFlags);
BOOL WINAPI SchCryptSetKeyParam( HCRYPTKEY hKey, DWORD dwParam, BYTE *pbData, DWORD dwFlags, DWORD dwSchFlags);
BOOL WINAPI SchCryptSetProvParam( HCRYPTPROV hProv, DWORD dwParam, BYTE *pbData, DWORD dwFlags, DWORD dwSchFlags);
BOOL WINAPI SchCryptSignHash( HCRYPTHASH hHash, DWORD dwKeySpec, LPCSTR sDescription, DWORD dwFlags, BYTE *pbSignature, DWORD *pdwSigLen, DWORD dwSchFlags);
BOOL WINAPI SchCryptVerifySignature( HCRYPTHASH hHash, CONST BYTE *pbSignature, DWORD dwSigLen, HCRYPTKEY hPubKey, LPCSTR sDescription, DWORD dwFlags, DWORD dwSchFlags);
|