У меня есть сертификат x509, хранящийся на смарт-карте ... все, что я хочу, это подписать XML с помощью этого сертификата ...
Теперь у меня есть что-то вроде этого:
var ss = new SecureString();
ss.AppendChar('P'); // pass
var csp = new CspParameters(1, "SafeSign Standard Cryptographic Service Provider")
{ KeyPassword = ss };
csp.Flags = CspProviderFlags.NoPrompt; // i´m running on a windows service
rsa = new RSACryptoServiceProvider(csp);
...
xmlToSign.SigningKey = rsa;
...
xml.ComputeSignature();
ComputeSignature генерирует исключение с отказом в доступе.
Чего мне здесь не хватает?