问题标签 [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.
cryptoapi - 如何提交 Microsoft 知识库?
我最近为 Microsoft CryptoAPI 问题找到了一个非常不明显的解决方案。由于(看似不相关的)CREDHIST 文件上的只读标志,整个 CryptoAPI 堆栈从 CryptAcquireContext() 向上的行为异常严重。为了更大的共同利益,我希望在它所属的 MS KB 中看到这一点。
从我过去对 MS KB 的利用中,我知道陌生人不应该提交文章。只有 MS 员工和承包商会这样做。因此,我正在寻找一位 MS 附属赞助商,他将代表我提交文章。信用无关紧要;无论如何,文章都是匿名的。
winapi - 使用 CryptoAPI 生成 ascii 密文
具体来说,我想要做的是为远程协助票生成 PassStub 字段。问题是我的结果看起来像二进制数据,但微软以某种方式生成了可打印的字符。
在 [MS-RAI]:远程协助启动协议规范 <16> 第 6 节中:Microsoft 表示“PassStub”字段“使用 PROV_RSA_FULL 预定义的加密提供程序进行加密,该提供程序具有 MD5 散列和 CALG_RC4,即 RC4 流加密算法。”
这里有一个数据流图:http: //msdn.microsoft.com/en-us/library/cc240189 (PROT.10).aspx#id16
该图显示了使用“RA SessionID”加密的散列密码,如下所示:u0RIQibSMntm0wAHQZ2mhatI63sjMjX15kh/vnciytOix8z6w+36B01OiJoB5uYe
当我调用 CryptEncrypt 时,结果是关于 SessionID 长度的二进制数据。微软不知何故得到了这样的东西:“Po^1BiNrHBvHGP”
这是我试图用来执行此操作的代码:
winapi - 在win 7下使用命名密钥容器更改密码混乱
在一些运行 Windows 7 的系统上,我们在名称密钥容器中生成了一个密钥,如果我们更改用户的密码,当我们调用 CryptAcquireCertificatePrivateKey() 时,我们会收到错误 CRYPT_E_NO_KEY_PROPERTY (0x8009200B)。
这不会发生在所有盒子上。我们最初认为这是与不在网络上的域机器一起使用的东西,并且它无法刷新它的域内容,但我们让它在一些独立的机器上重现。
我读取密钥的代码
这是生成密钥/密钥容器的代码
c++ - 如何使用根证书签署我的证书
我在服务器和客户端之间使用基于证书的身份验证。我已经生成了根证书。我的客户端在安装时将生成一个新证书并使用根证书对其进行签名。我需要使用 Windows API。无法使用任何 Windows 工具,例如 makecert。
到目前为止,我已经能够在商店中安装根证书。下面的代码
然后打开安装的根证书获取上下文
然后最后创建证书并使用 pKeyInfo 签名
使用上面的代码,我可以创建证书,但它看起来没有由根证书签名。我无法弄清楚我所做的是对还是错..任何帮助都将不胜感激..
谢谢阿西夫
iphone - iPhone 上的 RSA 加密
根据http://forums.macrumors.com/showthread.php?t=551476上的讨论,下面看到的代码将用于 RSA 加密。密钥(“public”)的数据类型是 SecKeyRef。不过,我不会使用钥匙串,因为我只对密钥公开且不是秘密的加密感兴趣。那么甚至可以使用加密API吗?我目前的想法是仅从我的公钥构造一个 SecKeyRef 结构并使用 API。不过,我不知道该结构是如何声明的。有人知道吗?你认为我的方法会奏效吗?
c++ - openssl 与 windows capi
对于加密问题,使用 openssl 或 windows capi 哪个更好。两者的优缺点列表是什么。如果可以在openssl上编写我的加密程序并用windows capi解密它没有问题或者有一些问题。
javascript - Javascript 数字签名
要在 javascript 中使用客户端证书创建数字签名,有一个函数:crypto.signtext() 不再起作用
现在最简单的方法是什么?
c# - 仅在 Windows 2003 Server 上指定的算法无效
我正在使用以下方法解码文件:
这在我的 Win 7 开发机器上运行良好,但在 Windows 2003 服务器生产机器上它失败,并出现以下异常:
异常:System.Exception:CryptMsgUpdate 错误 #-2146893816 ---> System.ComponentModel.Win32Exception:指定的算法无效---内部异常堆栈跟踪结束---在 LargeCMS.CMS.Decode(FileStream inFile,FileStream outFile)
下面是我调用来进行解码的类,如果需要,我可以上传一个示例文件进行解码,奇怪的是它在 Win 7 上工作,而不是在 Win2k3 服务器上:
和
encryption - 在 CryptoAPI 中导出密钥时出现 BAD_UID 错误
我正在为 Microsoft CryptoAPI 编写一个测试应用程序。我想使用第二方的公钥导出一方的密钥,然后将该密钥导入为第二方的密钥(这为通信设置了共享密钥)。这是我的代码:
这给出了错误:
通过调用以下命令为 encryptT 和 decryptT(发送者、接收者)生成公钥对:
知道什么可能导致错误吗?
谢谢,
c++ - Windows 是否存在 CryptoAPI 的替代品?
我在使用 cryptoAPI 时遇到了重大问题,想知道您是否有任何 3rd 方/更好的 Windows 解决方案?
我对 CryptoAPI 的主要问题是它不够独立于操作系统。我无法在我的代码中找到合适的平衡点来让东西在 Windows 2003 和 Windows 2008+ 上运行。
我基本上想要实现的可以在这里阅读。这是我现阶段对密码学的唯一用途。