标签: hardware-security-module

Yubico 私钥证书签名不再适用于 openssl3

我将 PKI CA 证书和私钥存储在 Yubikey 上,并用它来颁发最终用户证书,但从 openssl1 升级到 openssl3 后,这不再起作用。

\n

我用来签署证书请求的脚本适用于 openssl1,但不再适用于 openssl3:

\n
pki_path=~/pki/paul\npin=$(cat ~/yubico/pin.txt)\necho "Yubico PIN: $pin"\nopenssl engine dynamic -pre SO_PATH:/usr/lib/engines-3/pkcs11.so -pre ID:pkcs11 -pre NO_VCHECK:1 -pre LIST_ADD:1 -pre LOAD -pre MODULE_PATH:/usr/lib/opensc-pkcs11.so -pre VERBOSE\nopenssl x509 -engine pkcs11 -CAkeyform engine -CAkey slot_0-id_2 -sha384 -CA $pki_path/ca.crt -req -passin pass:$pin -in $pki_path/reqs/$2.req -extfile x509-types/$1 -days 365 -out $pki_path/issued/$2.crt\ncat $pki_path/issued/$2.crt $pki_path/ca.crt > $pki_path/bundle/$2.crt\n
Run Code Online (Sandbox Code Playgroud)\n

我已经更新了 pkcs11 路径,但其他一切都相同,手动运行命令可以注册引擎,但尝试签名失败。

\n
\xce\xbb ~/pki/scripts/ openssl engine dynamic -pre SO_PATH:/usr/lib/engines-3/pkcs11.so -pre ID:pkcs11 -pre NO_VCHECK:1 -pre LIST_ADD:1 -pre …
Run Code Online (Sandbox Code Playgroud)

ssl openssl pki hardware-security-module yubico

6
推荐指数
1
解决办法
736
查看次数

5
推荐指数
3
解决办法
7924
查看次数

HSM 和 Argon2 之间的区别?哪个更可取

我正在开发一个处理客户详细信息的应用程序,我们希望将其作为加密存储在我们的数据库中,哪个更可取 Argon2

java hsm hardware-security-module argon argon2-ffi

5
推荐指数
1
解决办法
130
查看次数

通过 NFC 访问 Yubikey API

设备与环境

使用的安全元件(当前):Yubikey 5 NFC

(当前)使用的操作系统:Linux(未来目标将是Win和Android)

使用的读卡器:ACS ACR122U、REINER SCT cyberJack RFID、SCM SCL011

目标

通过 NFC 连接到 Yubikey 并实现/运行以下方法:

  • 创建密钥对
  • 导出公钥
  • 符号
  • 加密
  • 解密

当前状态

基于 Yubico 的 PKCS#11 包装器库,我实现了上面的 5 个方法。通过USB连接 Yubikey,它们工作得很好。

问题

1) 文档/支持

我在 Yubico 的网站上找不到任何有关通过 NFC 的 API 的相关文档。似乎没有邮件列表,但有一个提示:

询问技术问题:对于技术问题,请尝试 Stack Exchange 网站。Stack Exchange 是一个问答网站网络,供开发人员学习和分享他们的知识,其中包括 Stack Overflow。

我在这里。;-)

根据 Alexander 的更新(谢谢):一些来源由 Yubico 在github.com/Yubico上发布

2) CLI 工具错误

Yubikey 由pcsc_scan上述每个读者展示。

但使用常见工具(如gp、 )时opensc-tool,大多数情况pkcs11-tool下会在尝试使用常见 APDU 访问时显示pkcs15-tool …

linux pkcs#11 hardware-security-module yubico yubikey

5
推荐指数
1
解决办法
651
查看次数

3
推荐指数
1
解决办法
514
查看次数

openSSL 的 PKCS#11 引擎

我正在尝试在 Windows 7 下设置 openSSL 以使用供应商特定的安全模块。

我从供应商那里得到了一个 PKCS#11 API dll(比如说vendor.dll)。PKCS#11引擎已根据https://github.com/OpenSC/libp11创建

如链接中所述,为了测试,我开始

openssl 引擎 pkcs11 -t

但得到:

D:\Gateway\openSSL\Win32\Release>openssl engine pkcs11 -t
11020:error:25078067:DSO support routines:WIN32_LOAD:could not load the shared library:.\crypto\dso\dso_win32.c:179:filename(\usr\local\ssl\lib\engines\pkcs11.dll)
11020:error:25070067:DSO support routines:DSO_load:could not load the shared library:.\crypto\dso\dso_lib.c:233:
11020:error:260B6084:engine routines:DYNAMIC_LOAD:dso not found:.\crypto\engine\eng_dyn.c:467:
11020:error:2606A074:engine routines:ENGINE_by_id:no such engine:.\crypto\engine\eng_list.c:390:id=pkcs11
Run Code Online (Sandbox Code Playgroud)

配置文件是:

[engine_section]
pkcs11 = pkcs11_section

[pkcs11_section]
engine_id = pkcs11
dynamic_path = D:\Gateway\libp11\libp11-master\src\pkcs11.dll
MODULE_PATH = D:\Gateway\driver\smgw\Win32\vendor.dll
init = 0
Run Code Online (Sandbox Code Playgroud)

它尝试在 unix 目录 \usr\local 中查找 dll... 看来,动态路径的内容根本没有被评估,因为我可以在那里指定任何内容,我总是收到上面的错误消息。

我究竟做错了什么?

openssl pkcs#11 hardware-security-module

3
推荐指数
1
解决办法
1万
查看次数