Функция CryptEncrypt()

Я новичок в C++ и начал изучать Wincrypt вчера. Я написал этот кусок кода,

#pragma comment(lib, "crypt32.lib")

#include <iostream>
#include <windows.h>
#include <wincrypt.h>      // CryptoAPI definitions

using namespace std;

int main()
{
  string encMe = "password";
  HCRYPTKEY hKey;
  HCRYPTPROV hProv;
  PBYTE pbBuffer = NULL;


  CryptAcquireContext(&hProv, NULL, NULL, PROV_RSA_AES, CRYPT_NEWKEYSET |     CRYPT_VERIFYCONTEXT);
  //cout << hex << GetLastError() << endl; DEBUG
  if(NTE_EXISTS == GetLastError())
    {
      CryptAcquireContext(&hProv, NULL, NULL, PROV_RSA_AES, CRYPT_VERIFYCONTEXT);
    }
  else if(0 == GetLastError())
    {
      cout << "Succes1" << endl;
    }


  CryptGenKey(hProv, CALG_AES_256, CRYPT_EXPORTABLE, &hKey);
  if(GetLastError() == 0)
  {
    cout << "Succes2" << endl;
    cout << hKey << endl;
 }

  cout << CryptEncrypt(hKey, 0, TRUE, 0, NULL, NULL, 1000) << endl;
  cout << GetLastError();
}

и я застрял на функции CryptEncrypt. Я прочитал страницу MSDN и ничего не понял после "hKey, 0, True, 0". Объясните мне, например, что такое "Указатель на буфер, который содержит открытый текст для шифрования". Заранее спасибо!

0 ответов

Другие вопросы по тегам