我尝试访问时遇到此错误。如何使用crypto.dll库访问.NET C#中的HSM?
signature.addKeyInfo(new ECertificate(cert.getEncoded()));
var c = HsmManager.getInstance().getSigner("MyPassword", cert);
static Module pkcs11Module = Module.getInstance(@"C:\Program Files\SafeNet\Protect Toolkit 5\Protect Toolkit C SDK\bin\sw\cryptoki.dll");
[MethodImpl(MethodImplOptions.Synchronized)]
public static HsmManager getInstance() {
pkcs11Module.initialize(null);
Slot[] slots = pkcs11Module.getSlotList(true);
}
我解决了我的问题。
解决方案:HSM设备驱动程序是x86bit。我试图使用x86bit PKCS#11甚至客户端计算机是x64。 (之前我试过x64)
然后导入x86bit库到我的项目,它的工作原理!