我也有这个问题,年份是 2020 年:S .Net Framework + Rest Api 夫妇这次有这个问题。我正在使用 HSM 进行解密方法。我有一个登录方法交互频道,我们需要进行性能测试。该服务有一个来自 Pkcs11 的实例
pkcs11 = new Pkcs11(hsmPath, true);
slot = GetUsableSlot(pkcs11);
TokenInfo tokenInfo = slot.GetTokenInfo();
session = slot.OpenSession(true);
session.Login(CKU.CKU_USER, userLoginPin);
secretKey = GenerateKey(session);
这就是解密方法。
公共字节[]解密(字节[]加密文本字节数组){
Mechanism mechanism = new Mechanism(CKM.CKM_AES_ECB);
byte[] sourceData = encryptedTextByteArray;
byte[] decryptedData = null;
using (MemoryStream inputStream = new MemoryStream(sourceData), outputStream = new MemoryStream())
{
try
{
session.Decrypt(mechanism, secretKey, inputStream, outputStream, 4096);
}
catch (Pkcs11Exception ex)
{
throw;
}
decryptedData = outputStream.ToArray();
}
return decryptedData;
}
当我尝试使用 Postman runner 进行性能测试时,一个线程没有问题。如果我增加线程数,就会出现这些错误。第一个错误:CKR_OPERATION_ACTIVE 下一个错误:CKR_DEVICE_MEMORY
我试过这些方法。- 对于每个请求关闭会话。并且还为新请求打开了会话。但没有成功。出现了同样的错误。(当然请求和响应时间增加了) - 因为每个请求都关闭了连接。并且还为新请求打开了新连接。出现了同样的错误。(当然请求和响应时间增加了)
有人帮助我吗?:)