セキュリティ トークンを使用してファイル (任意の拡張子) に署名する単純な 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