0

我已经制作了这样的代码,它将为 aes 加密创建上下文(支持 Win32API):

if (!CryptAcquireContext(&hProvs, NULL, NULL, PROV_RSA_AES, CRYPT_VERIFYCONTEXT))
    {
        if (!CryptAcquireContext(&hProvs, NULL, NULL, PROV_RSA_AES, CRYPT_NEWKEYSET | CRYPT_VERIFYCONTEXT))
        {
            printf("%d\n", GetLastError());
            getchar();
            ExitProcess(0);
        }
    }

它在 Windows 7 或更高版本上运行良好,但是当我在 Windows XP 上启动它时,我没有收到任何错误,只是关闭了应用程序。没事了。怎么了?

4

1 回答 1

0

https://docs.microsoft.com/en-us/windows/win32/api/wincrypt/nf-wincrypt-cryptacquirecontexta

重要提示:此 API 已弃用。新的和现有的软件应该开始使用 Cryptography Next Generation API。Microsoft 可能会在未来的版本中删除此 API。

于 2019-10-02T06:20:05.593 回答