Я экспортировал пару ключей (открытый и закрытый ключ) в один сертификат с сервера Win2k8. Затем я использовал OpenSSL, чтобы преобразовать его в pem:
openssl pkcs12 -in cert.pfx -out cert.pem -nodes
Затем я помещаю содержимое .pem в таблицу MSSQL, тип столбца Varchar(max).
Только с использованием .NET Framework 4.0.
Я получаю сертификат следующим образом:
var bytes = Encoding.UTF8.GetBytes("certstringfromdatabase");
var cert = new X509Certificate(bytes, passwordstring);
Я получаю сообщение об ошибке «Криптографическое исключение не обработано. Не удается найти указанный объект».
Я неправильно конвертирую в byte[]? Это для пользовательской службы WCF с привязкой TCP, я пытаюсь использовать сертификат для SSL, не касаясь внутреннего хранилища (поскольку однажды это будет перенесено в рабочую роль Azure, я не могу использовать хранилище сертификатов или файловая система).
Спасибо за все идеи.