Chilkat .NET 4を使用して電子メールメッセージを送信しました。この電子メールは.pfxファイルで署名され、受信者の.cerファイルで暗号化されています。これらの2つのファイルは、証明書mmcの「信頼できるユーザー」フォルダに格納されています。Chilkat:暗号化された電子メールを復号化する方法は?
今私は&を受け取って、このメールをChilkatで解読しようとしています。それは動作しますが、電子メールは復号化されません。私の.pfxファイルと送信者の.cerファイルは、常に "信頼できる人物"フォルダにあります。 AddPfxSourceDataメソッドで自分のプライベート証明書を追加しようとしましたが、TRUEを返しますが何も起こりません。私が使用したすべてのChilkatオブジェクトのLastErrorTextプロパティにはエラーはありません。
これは(mail.Decryptedは常にFALSEである)私のコードです:
MailMan pop3 = new Chilkat.MailMan();
pop3.UnlockComponent("30-day trial");
pop3.MailHost = "pop.server.net";
pop3.MailPort = 110;
pop3.PopUsername = "[email protected]";
pop3.PopPassword = "mypassword";
bool succes = pop3.AddPfxSourceFile("C:\\my_pfx.pfx, "mypfxpassword");
EmailBundle emailBundle = pop3.CopyMail();
for (int i = 0; i < emailBundle.MessageCount; i++)
{
Email mail = emailBundle.GetEmail(i);
if(mail.ReceivedEncrypted && mail.Decrypted)
Console.WriteLine(mail.Body);
else
Console.WriteLine("Cannot decrypt this mail");
}
任意のアイデア?私は最終的に2貴様コンピューター、送信側用と受信者のいずれかでこのシナリオを試してみて、それが動作
Chilkat.MailMan mailman = new Chilkat.MailMan();
mailman.UnlockComponent("30-day trial");
mailman.SmtpHost = "smtp.server.net";
mailman.SmtpUsername = "[email protected]";
mailman.SmtpPassword = "senderpassword";
Chilkat.Email email = new Chilkat.Email();
email.Subject = "This is an encrypted email !";
email.Body = "This is the content of a digitally encrypted mail !";
email.From = "[email protected]";
email.AddTo("My Recipient", "[email protected]");
// Certificate of [email protected]
Chilkat.Cert recipientCert = new Chilkat.Cert();
recipientCert.LoadFromFile("C:\\recipient_cert.cer");
email.SetEncryptCert(recipientCert);
email.SendEncrypted = true;
bool success = mailman.SendEmail(email);
if (success)
Console.WriteLine("Mail sent !");
'mail.ReceivedEncrypted'は本当ですか? – GalacticCowboy
はい、mail.ReceivedEncryptedはTRUEです。 実際、Chilkatがメールを自動的に解読しようとしていることを知りました。問題は自分の証明書の場所に関係していると思います。 Chilkatが私の証明書を取得できないかもしれない... – Nico