问题标签 [nss]
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.
macos - 如何仅从 NSS 构建 certutil?
我正在制作一个小型实用程序,它将在具有自定义 CA 的机器上加载所有 Firefox 配置文件。我已经成功地将 certutil 二进制文件用作 NSS 工具的一部分。
但是,我想知道如何制作 certutil?是否可以只编译 certutil 或者我需要构建整个 NSS 工具才能使其工作?
任何关于如何使 certutil 尽可能小和便携的想法将不胜感激。谢谢!
c - 在cryptoki库中提取或设置私钥参数
我在使用 cryptoki 库编写一个小测试程序时遇到了一些问题。我想(必须)掌握 RSA 私钥(所有参数)。我考虑过要么生成密钥然后提取参数,要么使用已经生成的参数手动设置密钥。到目前为止,我没有得到任何工作。代码在文章末尾。
萃取
我知道有C_GetAttributeValue()可以用来提取公共指数或模数等属性。这适用于公钥和私钥对象,但是当我尝试从私钥对象中提取私有参数时出现CKR_ATTRIBUTE_SENSITIVE错误。有没有办法提取这些属性?登录会话或初始化期间可以/是否必须设置某些参数?
手动设置密钥
我的第二种方法是从文件中读取密钥材料(使用 OPENSSL 生成),并使用它通过C_CreateObject()生成密钥对象。该文件包含所有 RSA 参数 (n,e,d,p,q,dmp1,dmq1,iqmp)。阅读后,我将它们从 ASCII 转换为十六进制表示并将它们存储在CK_BYTE[]中。到目前为止,一切都很好。现在,当我将所有这些传递给C_CreateObject()以创建私钥时,我会收到CKR_ATTRIBUTE_VALUE_INVALID错误消息。使用公共参数创建公共密钥对象的方法相同。我验证了在创建的公钥对象上使用C_GetAttributeValue() 。如果以这种方式甚至可以生成私钥对象,我还缺少什么?我想无论是否提供密钥材料,C_GenerateKeyPair()总是会生成新的密钥,对吧?
C代码
这就是我尝试使用以下方法创建私钥对象的方法:
firefox - CSP 的 CryptUIDlgSelectCertificateFromStore。PKCS#11 怎么样?
CryptUIDlgSelectCertificateFromStore
Windows 库中存在一个调用的函数。它允许用户从 Internet Explorer 证书存储中找到的证书列表中选择证书。
我正在NSS、PKCS#11、Xulrunner中搜索等效功能,用户可以在 Mozilla Firefox 浏览器中选择证书。
谢谢你。
google-chrome - 在cent os 7中启动google-chrome时出现NSS错误
这是我的第一个问题。
一个多月以来,我一直对此感到非常困惑。
谷歌浏览器总是因 NSS 错误而崩溃。
错误消息消息是: “在没有持久数据库的情况下初始化 NSS 时出错”。
我已经重新安装了 Chrome,但出现了同样的错误,我不知道如何解决这个问题。
PS Chromium 也不起作用,但 FireFox 确实起作用。
$ google-chrome [24107:24107:0528/193723:ERROR:url_pattern_set.cc(240)] 无效的 url 模式:chrome://print/* [7:7:0528/193723:ERROR:nss_util.cc(207) ] 在没有持久数据库的情况下初始化 NSS 时出错:NSS 错误代码:-8023 [7:7:0528/193723:FATAL:nss_util.cc(209)] nss_error=-8023, os_error=0
谢谢!
ssl - 如何使用 keytool 创建证书链?
我想在java中创建证书链如下:
其中 ca.mycompany.com 是根证书(自签名)。
我知道这可以通过 OpenSSL 实现。但是有可能用keytool来实现吗?
如果没有,我可以使用 Mozilla NSS 库来实现这一点吗?
php - 如何在php中添加密码以卷曲?
我正在尝试使用 php curl 连接到站点,但收到错误“没有通用加密算法”。进一步调查,我认为这与NSS有关?我发现从命令行,我可以重现错误(所以问题肯定在 curl 而不是 php 包装器),但是如果我设置 --ciphers ecdhe_ecdsa_aes_128_sha 那么它可以工作:
所以我的问题是,
为什么会这样?我无法在网上找到关于 ssl 密码如何在 curl 中工作的解释;似乎每一页都是假设读者已经是该领域的专家 - 不幸的是,像“你可能正在使用 NSS,所以尝试将 PKCS 切换为 FIPS”这样的句子对我来说是完全无法理解的,并且谷歌搜索只会解释各个组成部分(通常参考 20 年前的标准),而不是它们之间的关系。
有什么办法可以让 curl 告诉我它正在尝试哪些密码以及服务器将接受哪些密码?我试过在ssllabs上查找服务器,但似乎是说服务器接受所有密码,但显然不接受。
我需要将哪些选项传递给 curl_setopt 以便我的 php 脚本能够连接到该服务器?
如果我将密码设置为此,会破坏其他网站吗?我可以做些什么使 curl 能够连接到所有安全站点,还是我必须手动迭代不同的密码来尝试每个密码以找出哪个有效?
javascript - 在 javascript 中返回 CERT_FindUserCertByUsage
我试图了解 C++ dll 和 JavaScript 之间的关系。有一段js代码:
其中 cert 定义为
但是在 C++ 中, cert 是一个结构
我正在尝试在 javascript 中获取主题名称,然后继续使用代码
这是不成功的。它将错误记录为“无法获取未定义大小的内容”
我在 C++ 和 javascript 之间错过了什么?如何在 javascript 中打印 subjectName?
mozilla - nss-3.14.1-3.fc16.src.rpm 构建失败并出现错误:测试套件返回失败
我正在尝试使用以下命令在我的 fedora-16 上构建 nss-3.14.1-3.fc16.src.rpm:
rpmbuild -ba nss.spec
并最终出现以下错误:
测试总结:
通过:6398
失败:9
核心失败:0
未知状态:0
cd ../../../../
killall selfserv_9962
selfserv_9962:未找到进程
:
grep -c FAILED ./mozilla/tests_results/security/localhost.1/output.log
测试失败=9
错误:测试套件返回失败
'[' 9 -ne 0 ']'
echo '错误:测试套件返回失败'
1号出口
RPM 构建错误:
错误:来自 /var/tmp/rpm-tmp.G5KTZ1 的错误退出状态(%check)
/var/tmp/rpm-tmp.G5KTZ1 的错误退出状态(%check)
孩子返回码是:1
谁能告诉我这里出了什么问题,应该怎么做才能避免这些错误?
ssl - 在 OSX 上找到 Dart pub 使用的默认 NSS 数据库在哪里?
dart 使用的默认 NSS 数据库在哪里,尤其是 OS X 上的 pub?是否可以将根 CA 添加到该数据库?
javascript - NSS 3.18.1 公共功能是否支持 PKCS11 验证功能
我正在尝试在 js 中调用 PK11_Verify。
我收到消息错误:
找不到函数 PK11_Verify 来声明
loadLibraries 失败:错误:在库中找不到函数符号
我已经在网络浏览器中检查了 NSS 版本NSS 3.18.1 Basic ECC
,它支持 PK11_Verify 作为公共功能。知道根本原因是什么吗?
谢谢