我正在尝试制作一个简单的 java 应用程序,它使用安全令牌来签署文件(任何扩展名)。
我需要从令牌中读取所有信息并用它对文件进行签名,以便稍后加载签名文件、获取原始文件和所有其他信息。
这是我目前拥有的示例代码,我看到的主要问题是不同的令牌可以有不同的 .dll,我需要这样的抽象。
String pkcs11config = "C:/Documents and Settings/nsaul/Escritorio/Lib/ep2pk11.cfg";
Provider p = new sun.security.pkcs11.SunPKCS11(pkcs11config);
//Use the provider
char [] pin = {'#', '#', '#', '#', '#', '#', '#', '#'};
KeyStore ks = KeyStore.getInstance("PKCS11",p);
ks.load(null, pin);
我在 C# 中找到了一个指南,似乎可以满足我的需要,但 Java 是该项目的要求。
https://docs.microsoft.com/en-us/dotnet/standard/security/how-to-access-hardware-encryption-devices