Здравствуйте, LF, Вы писали:
LF>Читал тут, но так не понял как прикрутить ключ, пароль и сертификат.
LF>Заранее спасибо.
Очень просто. Пишу по памяти, по этому будут синтаксические ошибки.
Вариант 1:
X509Certificate2 cer = new X509Certificate2([байты нашего pfx-контейнера], [пароль к контейнеру]);
Как с помощью OpenSSL обернуть сертификат и ключ в контейнер pfx -- найдете или пример нужен?
объект cer имеет поле PrivateKey. Это и есть RSACryptoServiceProviderили DSACryptoServiceProvider. Т.е. можно написать, к примеру, так:
string xmlKey = cer.PrivateKey.ToXmlString(true);
Вариант 2.
Можно использовать прямо из системного хранилища ключей. Только нужно знать название контейнера. Там легко -- в конструкторе Service есть необходимый параметр, по памяти не помню точно.