Я новичок в этом, поэтому, пожалуйста, несите меня. Я пытаюсь зашифровать/расшифровать раздел .config, используя RsaProtectedConfigurationProviderProtectedConfigurationProvider с использованием сертификата Rsa и x509
Пожалуйста, поправьте меня, если я ошибаюсь, но от того, что я читал, что нужно сделать следующее:
Получить сертификат и открытый ключ из этого сертификата
X509Certificate2 cert = new X509Certificate2(pathToCert, "password"); RSACryptoServiceProvider rsa = cert.PrivateKey as RSACryptoServiceProvider;
нагрузки этой информации для контейнера: не знаю, как это сделать, как образец ниже не учитывает свидетельства s
http://msdn.microsoft.com/en-us/library/tswxhw92(en-us,VS.80).aspx
// Create the CspParameters object and set the key container
// name used to store the RSA key pair.
CspParameters cp = new CspParameters();
cp.KeyContainerName = "MySuperAwesomeKeyContainer";
// Create a new instance of RSACryptoServiceProvider that accesses
// the key container MyKeyContainerName.
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(cp);
- Тогда имеют такое же имя контейнера, указанного в моем App.Config:
<configProtectedData> <providers> <clear/> <add name="MyProvider" type="System.Configuration.RsaProtectedConfigurationProvider" keyContainerName="MySuperAwesomeKeyContainer" useMachineContainer="true" /> </providers> </configProtectedData>
- Тогда просто запустить этот код, который будет использовать этот KeyContainer и зашифровать/расшифровать:
.... string provider = "MyProvider"; // Protect the section. connStrings.SectionInformation.ProtectSection(provider);
Правильно ли это ?. Если да, то как бы я это сделал? Не знаете, как получить эти ключи из сертификата и загрузить их в KeyContainer.
благодарит