private void TestImportRsaCsr(EncodingFormat fmt)
{
using (var cp = GetCP())
{
var pkp = new RsaPrivateKeyParams();
var pk = cp.GeneratePrivateKey(pkp);
var crp = new CsrParams
{
Details = new CsrDetails
{
CommonName = "TEST CERT",
}
};
var csr = cp.GenerateCsr(crp, pk, Crt.MessageDigest.SHA256);
byte[] bytes;
using (var target = new MemoryStream())
{
cp.ExportCsr(csr, fmt, target);
bytes = target.ToArray();
}
var imp = csr;
using (var source = new MemoryStream(bytes))
{
imp = cp.ImportCsr(fmt, source);
}
using (MemoryStream save1 = new MemoryStream(), save2 = new MemoryStream())
{
cp.SaveCsr(csr, save1);
cp.SaveCsr(imp, save2);
var bytes1 = save1.ToArray();
var bytes2 = save2.ToArray();
CollectionAssert.AreEqual(bytes1, bytes2);
}
}
}