问题标签 [cryptoapi]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 如何通过 C# 使用 CryptoAPI?
有一组 CryptoApi 函数可与加密服务提供商 (CSP) 一起使用。
是的,我知道有 System.Cryptography 命名空间。但我不需要他们的实现。
是否有任何现成的库为这些函数提供 .NET 包装器?
c++ - 我们如何在 C++ 和 windows API 中验证 openssl 数字签名
使用 openssl 我在服务器上创建了签名文档,请参阅下面的命令。
------创建私钥。
------创建公钥。
------创建签名文档。
现在我可以使用如下所示的 opensll 验证数字签名
- -核实
但我需要在客户端应用程序中使用 C++ 和 Windows API 验证数字签名(没有 openssl 库或源代码)。我知道使用公钥和哈希我们可以验证数字签名。请尽快向我提供伪代码或 Windows API。
任何帮助表示赞赏。
c# - 使用 CryptoAPI 在 Store C# 中通过哈希查找证书
我想使用 CryptoAPI P/Invoke 从 Store 获取证书。但是我遇到了一些问题。
我可以打开商店,但找不到证书。我不明白为什么。相同的代码适用于 C++。
我想使用 CryptoAPI,因为 .NET 只能使用带有可导出密钥的证书密钥,标记为“是”
将 CrytpoAPI 映射到 C# 的参考链接http://blogs.msdn.com/b/alejacma/archive/2007/11/23/p-invoking-cryptoapi-in-net-c-version.aspx
cryptoapi - 在 Win32 应用程序中实现 HMAC-MD5 加密算法
我有一个 Win32 应用程序,它必须根据http://msdn.microsoft.com/en-us/library/cc236700(v=PROT.10).aspx实现算法 NTLM v2 身份验证。部分地,我需要一个加密算法 HMAC_MD5() 的实现。我看到 Win32 Crypto API 包含函数 CryptCreateHash;但无法理解:如何将它用于 HMAC-MD5?有人可以解释我或举个例子吗?
c++ - EVP_CipherInit_ex / EVP_CipherUpdate / EVP_CipherFinal_ex 的实现
我正在使用 OpenSSL 并libcrypto
进行加密。我想问在哪里可以找到这些方法。我需要它们,因为我想在我的代码中添加这些方法。我只想要 .h 和 .cc 或 .c 文件。欣赏
cryptography - 如何使用 CryptoAPI 加载带有 unicode CN 的证书?
我正在尝试从系统存储加载证书。我正在使用CertFindCertificateInStore
CryptoAPI 中的函数:
为什么我需要将 dwValueType 设置为
CERT_RDN_ATTR
toCERT_RDN_PRINTABLE_STRING
而不是CERT_RDN_UNICODE_STRING
?(我使用的是 Unicode。)使用CERT_RDN_UNICODE_STRING
此代码不起作用。不过,我无法使用包含空格和俄语符号的主题 CN 加载证书。对于简单的 CN 名称,例如“foo”,此代码完美运行。
我该怎么做才能以这种方式加载具有 unicode 名称的证书?
java - 在 JUnit 中生成 HmacSHA256 签名
我正在尝试将我的消息签名到 Amazon AWS(在 JUnit 测试中),但我遇到了一个问题。这是我正在使用的代码:
在标记为 ( mac.init(...)
) 的行中,java 抛出异常:
你知道为什么会这样吗?我在网上看到的所有代码看起来几乎都是这样,我也尝试了 HmacSHA1,结果相同。
iphone - AES解密不起作用请帮助
我正在程序中进行 AES 加密和解密。我解密时无法获得纯文本。我的代码如下...
c - 是否可以重用 CryptVerifySignature() 哈希对象?
MSDN 说,在CryptVerifySignature()
你不能重用HCRYPTHASH
对象来尝试散列更多数据之后,它说你需要用CryptDestroyHash()
and重新创建它CryptCreateHash()
。重用真的失败了。
任何人都熟悉可以保存这些电话的黑客,还是真的不可能?
c++ - 将证书链获取到私有根
我正在尝试验证来自签名链的证书是否返回到Windows不信任的特定根证书(它是应用程序的私有证书)。
我目前这样做的尝试涉及创建一个链接引擎,它只信任我想要的特定证书作为根,因此不能生成其他链。
(为清楚起见,省略了错误检查;pCertContext
并且hStore
来自从CryptQueryObject
签名的二进制文件中提取签名和相关证书。)
不幸的是,这似乎不起作用。尽管使用了自定义链接引擎,但它似乎仍在搜索 OS 存储,并且要么找不到链,要么找到一个到不同的根(操作系统信任)。我只能通过将我的私有根证书添加到操作系统受信任的存储中来获得我想要的链。
我也尝试设置config.hRestrictedOther
为空的内存存储,因为文档建议使用hRestrictedTrust
非 NULL 将再次引入系统存储,但这没有任何区别。
有什么我错过的,或者更好的方法吗?
编辑:只是为了提供更多上下文,我正在尝试做一些类似于驱动程序签名证书的事情,其中签名证书链回两个不同的根:一个受操作系统信任的标准 CA 根和一个内部根(在驱动程序也受操作系统信任,但在我的情况下,只会受我的应用程序信任)。十字架出现在“主”链的中间位置;可能有许多不同的文件都使用不同的“真实”CA 签名,但仍链接回我的内部证书。