2011-07-09 11 views
2

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 !"); 
+1

'mail.ReceivedEncrypted'は本当ですか? – GalacticCowboy

+0

はい、mail.ReceivedEncryptedはTRUEです。 実際、Chilkatがメールを自動的に解読しようとしていることを知りました。問題は自分の証明書の場所に関係していると思います。 Chilkatが私の証明書を取得できないかもしれない... – Nico

答えて

1

:私は暗号化された電子メールを送信するために使用されるコード:

を更新しました。私は送信者のために私が使用した2つの.pfxファイルが受信者である&が自動生成されたためだと思う。 私は各PC上で新しい.pfxファイルを生成し、それは素晴らしい:)

関連する問題