Saya menggunakan Bouncy Castle untuk menghasilkan kunci pribadi, serta CSR PKCS10, yang kemudian saya kirimkan ke server jarak jauh untuk ditandatangani. Saya mendapatkan kembali sertifikat SSL bertanda tangan berkode base64 standar sebagai respons sebagai string. Pertanyaannya adalah, bagaimana cara mengimpor sertifikat yang ditandatangani dari sebuah string, lalu menyimpan kunci pribadi dan sertifikat yang ditandatangani sebagai file PKCS12 (.PFX)?
Selain itu, bagaimana cara saya menggabungkan sertifikat CA untuk disertakan dalam file PFX?
// Generate the private/public keypair
RsaKeyPairGenerator kpgen = new RsaKeyPairGenerator ();
CryptoApiRandomGenerator randomGenerator = new CryptoApiRandomGenerator ();
kpgen.Init (new KeyGenerationParameters (new SecureRandom (randomGenerator), 2048));
AsymmetricCipherKeyPair keyPair = kpgen.GenerateKeyPair ();
// Generate the CSR
X509Name subjectName = new X509Name ("CN=domain.com/name=Name");
Pkcs10CertificationRequest kpGen = new Pkcs10CertificationRequest ("SHA256withRSA", subjectName, keyPair.Public, null, keyPair.Private);
string certCsr = Convert.ToBase64String (kpGen.GetDerEncoded ());
// ** certCsr is now sent to be signed **
// ** let's assume that we get "certSigned" in response, and also have the CA **
string certSigned = "[standard signed certificate goes here]";
string certCA = "[standard CA certificate goes here]";
// Now how do I import certSigned and certCA
// Finally how do I export everything as a PFX file?