问题标签 [hsm]

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.

0 投票
1 回答
1926 浏览

c# - 在 Luna HSM 上使用 iTextSharp 进行签名

环境:

C# 4.5、Windows Server 2008 R2、iTextSharp v5.5.1、由 GlobalSign 托管的 Luna SA HSM。

问题:

每当我尝试签署 PDF 时,都会出现以下异常:

代码:

已验证与 HSM 的连接。Sign 类的证书是我从 GlobalSign 获得的证书。它不是存储在 HSM 上的证书。

为什么我会得到异常?我错过了什么?

0 投票
1 回答
1098 浏览

key - PKCS11:导出不敏感且可提取的密钥

我生成了一个可提取且不敏感的派生密钥。我想将它从令牌中导出并再见它。我怎样才能做到这一点?

0 投票
1 回答
3485 浏览

java - Java 到 HSM 连接并发送“GC”/FK”命令

这是从 HSM 发送和接收数据的代码

问题是我需要发送哪个命令来执行“GC”命令(将 ZPK 从 LMK 转换为 ZMK 加密)我需要为 TPK 密钥生成一个清晰的组件。通常我会

接着

我需要使用 Java 程序执行这些操作。

0 投票
2 回答
6356 浏览

encryption - Thales HSM 生成密钥“从清除组件形成密钥”(“FK”命令)

我有两个清晰的组件,由命令生成000A30303030413230303255(它是000A0000A2002U在 HEX 模式下。这是"GC"- 从 1270A513 第 3 期手册将 ZPK 从 LMK 转换为 ZMK 加密命令)使用 Java 代码

现在我需要从这些组件生成一个加密密钥。它的控制台命令:"FK"command(1270A513 第 3 期,第 5-14 页)。我找不到任何通过 Java 代码执行此操作的命令。我使用了主机命令参考手册(1270A351 第 6 期),只发现A4- Form a Key from Encrypted Components 命令,但此命令用于从加密组件生成密钥。

有没有办法使用明文组件生成加密密钥?

0 投票
1 回答
733 浏览

hsm - M2 - 解密数据块命令失败

我正面临 DUKPT 解密的问题。我按照 THales HSM 手册发送解密数据块 (M2) 命令,但我收到错误响应:0000M315

请在下面找到命令,请求您帮助我我的命令有什么问题。

命令: 0000M20011009U3BEE6C2C1850D691299B843984177A9A609FFFFFF8500000600016200E0beb0297d81e42bf9e07b1948dfaba7f8f032622173f61d2bacf6f485fa0a9babaf58637184b5e459cbae55f2b53ff9c356e4817f2efa9d70e740b27e2e089ccf42fefa56ee38c58d49f89206f9709c31e7ec616767f7638e3f853dde45af94e7cdb06502017a16c44ab472c3ce03260e

谢谢,纳齐尔

0 投票
2 回答
4968 浏览

encryption - 使用位于 HSM 上的私钥对数据进行签名和解密

我的任务是签署和解密数据,但私钥位于 HSM(Luna SA,/Safenet)。我安装了所有客户端软件并将 Luna SA CSP 连接到测试服务器。

使用提供的 PKCS#11 函数,我可以将 HSM 上的公钥列出并导出为PCCERT_CONTEXT( CertCreateCertificateContext)。当我尝试获取私钥(使用 CryptoAPI 函数CryptAcquireCertificatePrivateKey)时,我收到一个错误代码CRYPT_E_NO_KEY_PROPERTY

我可能缺少证书数据和 CSP/HSM 之间的链接。有没有人做过类似的事情并且可以给出任何提示?

编辑


我成功地从 HSM 上的所有密钥创建了 CER 文件。当我知道使用signtool.exeMicrosoft Plattform SDK 附带的那个)时,我可以使用 HSM 上的密钥对 dll 进行签名(工具向导让我选择密钥容器、密钥规范……)。我尝试使用工具显示的信息并设置私钥

但 CryptAcquirePrivateKey 仍然给我同样的错误。我相信我在这里只遗漏了一点点,因为 signtool 能够访问私钥

在此处输入图像描述

编辑2


截图显示 KEYEXCHANGE 但我选择了 SIGNATURE

编辑3


LinkPrivateKey我稍微改变了功能,现在它可以工作了

0 投票
1 回答
789 浏览

cryptography - OpenSSL - 检查调用的函数是什么引擎以及是否真的使用了硬件?

首先,我是 OpenSSL 世界的初学者。对于任何基本的野蛮错误,我提前道歉。

考虑一个流程:

  1. 使用硬件使用引擎初始化 OpenSSL(我们称之为 EngineHW)。
  2. 调用 OpenSSL 函数,例如 X509_sign。

如何检查调用的函数是否在硬件上执行?

如何验证 EngineHW 函数是否被调用?如果 EngineHW 未定义该函数怎么办 - OpenSSL 会回退到它拥有的任何默认引擎吗?

问题与断言质量有关——因为我有硬件为我做加密,我考虑使用软件回归(至少对于重要功能)。

0 投票
1 回答
1712 浏览

java - MakeSignature.signDetached 抛出 IllegalArgumentException

同时使用MakeSignature.signDetachedLUNA HSM 1700 对 PDF 应用数字签名。

请指导我解决此问题。

提前致谢。

方法如下:

错误如下:

java.lang.IllegalArgumentException:名称'iText?5.5.0 ?2000-2013 iText Group NV (AGPL-version) (AGPL-version) (AGPL-version) (AGPL-version) (AGPL-version) (AGPL-version) (AGPL-version)'太长( 143 个字符)。

0 投票
1 回答
2134 浏览

openssl - 具有特定 PKCS11 引擎二进制文件的 OpenSSL 接口

我有一个来自 HSM 的 PKCS11 库,我想使用 OpenSSL 与 PKCS11 库交互以生成密钥和证书。

如何在不需要安装 HSM 之外的外部第三方软件、HSM 和 OpenSSL 提供的 PKCS11 二进制文件的情况下做到这一点。

0 投票
1 回答
3525 浏览

java - 如何使用 JCA/JCE 和 HSM 派生密钥

我在 HSM 中有一个主密钥,我想用给定的分散器派生它。我对 JCA/JCE 很陌生,对 KeyGenerator、SecretKeyFactory 有点迷失……尤其是因为所有参数都是字符串。我想使用 AES 或 HmacSha1。看来我需要使用 SecretKeyFactory,并提供 KeySpecs。但是哪种类型的 KeySpecs?

(我看过关于该主题的帖子,但我似乎没有使用 HSM。)

谢谢。