myCSharp.de - DIE C# und .NET Community
Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 
 | Suche | FAQ

» Hauptmenü
myCSharp.de
» Startseite
» Forum
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Suche
» Regeln
» Wie poste ich richtig?
» Forum-FAQ

Mitglieder
» Liste / Suche
» Wer ist wo online?

Ressourcen
» openbook: Visual C#
» openbook: OO
» Microsoft Docs

Team
» Kontakt
» Übersicht
» Wir über uns

» myCSharp.de Diskussionsforum
Du befindest Dich hier: Community-Index » Diskussionsforum » Entwicklung » Netzwerktechnologien » Wie den Inhalt einer Email entschlüsseln?
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | Thema zu Favoriten hinzufügen

Antwort erstellen
Zum Ende der Seite springen  

Wie den Inhalt einer Email entschlüsseln?

 
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
int3g3r
myCSharp.de-Mitglied

Dabei seit: 09.11.2019
Beiträge: 4
Entwicklungsumgebung: Visual Studio 2019


int3g3r ist offline

Wie den Inhalt einer Email entschlüsseln?

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Guten Tag,

Ich habe eine Applikation in C# geschrieben die mir E-Mails von google.com einliest.
Diese basiert auf folgendem Beispiel:  Simple IMAP Client

Nun habe ich den [Header] wie auch den [Body] als String vorliegen.
Der Inhalt sieht wie folgt aus: IMG Anhang

Ich gehe davon aus das der "gelbe" Bereich die "Nachricht" ist.
Leider ist dieser Verschlüsselt.

1. ) Wie wurde diese Nachricht verschlüsselt (Verfahren) ?
Ich finde da keine Anhaltspunkte im Mail.
Sha256 ist nur ein Hash-Wert und hat nichts mit der Verschlüsselung zu tun, oder ?

3. ) Wie lässt sich diese Nachricht entschlüsseln ?
Folgendes Beispiel habe ich gefunden:  MimeKit
Leider bin ich bei dieser Library ein wenig überfordert und ich verstehe auch nicht ganz wie die Mails aufgebaut sind.
Muss ich nun hier dem MimeKit nur den "gelb" markierten bereich oder den kompletten inhalt übergeben ?

4. ) beim MimeKit beispiel sind die Codestellen "certLocation" und "certPassword" nicht klar.
Bzw wo leigen diese Zertifikate? Diese werden ja automatisch generiert.

Besten Dank,
Freundliche Grüsse Int3g3r

int3g3r hat dieses Bild (verkleinerte Version) angehängt:
mail.jpg
Volle Bildgröße

09.11.2019 15:20 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Abt
myCSharp.de-Team

avatar-4119.png


Dabei seit: 20.07.2008
Beiträge: 13.172
Herkunft: Stuttgart/Stockholm


Abt ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Zitat:
Ich finde da keine Anhaltspunkte im Mail.

Im Prinzip sollten alle Fragen mit jeder E-Mail Header Dokumentation gelöst sein.
Das ist ja alles standardisiert. Such einfach mal in Google nach EMail Header Analyzer.
Bin mir sicher gibt Millionen Tools und Erklärungen.

Der grün markierte Teil gehört zu DKIM. Daher auch der Doppelpunkt entsprechend.
 DomainKeys

Der rot markierte Bereich ist der Wert von "bh" und die Hashsumme des Message Bodys.
"b" ist der Message Body.
Beides base64 (sieht man direkt). Könnte also einfach Dein Text abtippen, in ein Base64 Decoder schubsten und wüsste, was da steht.

Aber: ob die Mail verschlüsselt ist, das sehen wir hier gar nicht. Der entscheidende Teil fehlt.
Ich geh aber davon aus, dass Du das schon geprüft hast.

SMIME verschlüsselte Mails brauchen ein Zertifikat; die Mails haben einen Content Type application/pkcs7-signature - ob das hier der Fall ist sieht man nicht. Der Teil fehlt.
Mittlerweile gibts dafür aber keine kostenlosen Anbieter mehr; man kann sich höchstens selbst eines ausstellen, was dann aber nicht verifiziert wird und entsprechend eine Warnung kommt.

Mit SMIME verschlüsselt der Client die Mail anhand eines Private Keys.
Der Empfänger braucht den Public Key, damit er die Nachricht lesen kann.
 S/MIME
Der Public Key hängt der Mail normalerweise als Attachment an.
09.11.2019 15:56 Beiträge des Benutzers | zu Buddylist hinzufügen
int3g3r
myCSharp.de-Mitglied

Dabei seit: 09.11.2019
Beiträge: 4
Entwicklungsumgebung: Visual Studio 2019

Themenstarter Thema begonnen von int3g3r

int3g3r ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Zitat von Abt:
Zitat:
Ich finde da keine Anhaltspunkte im Mail.

Der rot markierte Bereich ist der Wert von "bh" und die Hashsumme des Message Bodys.
"b" ist der Message Body.
Beides base64 (sieht man direkt). Könnte also einfach Dein Text abtippen, in ein Base64 Decoder schubsten und wüsste, was da steht.

Na dann viel spass beim Abtippen großes Grinsen . Ist eh nur ne Test Mail.

Naja also das dies beides base64 ist sehe ich nicht auf den ersten Anblick.
Vielleicht könntest du mir erklären wie man darauf kommt ?

EDIT:

Zitat:
Aber: ob die Mail verschlüsselt ist, das sehen wir hier gar nicht. Der entscheidende Teil fehlt.
Ich geh aber davon aus, dass Du das schon geprüft hast.

Kenne mich leider gar nicht mit der Technik hinter den Mails aus.
Daher Nein, dies habe ich nicht geprüft.
Somit wie lässt sich dies Prüfen ? Welcher Teil fehlt ?


Besten Dank für die Antwort!

Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von int3g3r am 09.11.2019 16:18.

09.11.2019 16:08 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Abt
myCSharp.de-Team

avatar-4119.png


Dabei seit: 20.07.2008
Beiträge: 13.172
Herkunft: Stuttgart/Stockholm


Abt ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Zitat von int3g3r:
Naja also das dies beides base64 ist sehe ich nicht auf den ersten Anblick.
Vielleicht könntest du mir erklären wie man darauf kommt ?

Weil Base64 eine Kodierung mit immer dem selben Aufbau ist:  Base64
Wenn man daher nen paar Mal damit zutun hatte, sieht man das gleich.

Darüber hinaus sollte das auch in der Doku vom EMail Header Aufbau stehen ;-)

Zitat:
Somit wie lässt sich dies Prüfen ? Welcher Teil fehlt ?

Davon abgesehen, dass ich das ja schon im Beitrag drüber geschrieben habe: wenn Du einen Header Parsen willst, dann musst Du auch die Dokumentation lesen und verstehen.
Daher: nimm Dir das MimeKit, beschäftige Dich ordentlich mit dem Aufbau einer E-Mail und dann sollte dem nichts im Wege stehen.
09.11.2019 16:10 Beiträge des Benutzers | zu Buddylist hinzufügen
Th69
myCSharp.de-Poweruser/ Experte

avatar-2578.jpg


Dabei seit: 01.04.2008
Beiträge: 3.389
Entwicklungsumgebung: Visual Studio 2015/17


Th69 ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Diese sind standardmäßig mit  Base64 (wenn nicht  Quoted-Printable-Kodierung verwendet wird) kodiert, s.a.  Multipurpose Internet Mail Extensions (MIME).

In .NET gibt es dafür die Methode  Convert.FromBase64String.

Ich würde trotzdem eine Library zu benutzen empfehlen, welche auf RFC 2045 ff. beruht (wie eben z.B. das  MimeKit).

Bei deinem Anhang jedoch wird zusätzlich noch  DomainKeys (DKIM) verwendet, s.a.  DKIM (Domain Keys Identified Mail). Ich weiß nicht, inwieweit das dann über z.B. das MimeKit auch mitverarbeitet wird.

Mittels Internetsuche habe ich die auf C basierende  OpenDKIM Library (libopendkim) gefunden (s.a  OpenDKIM).
Da wirst du dich also noch ein bißchen selber schlau machen müssen.

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Th69 am 09.11.2019 16:16.

09.11.2019 16:15 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Baumstruktur | Brettstruktur       | Top 
myCSharp.de | Forum
Antwort erstellen


© Copyright 2003-2019 myCSharp.de-Team | Impressum | Datenschutz | Alle Rechte vorbehalten. | Dieses Portal verwendet zum korrekten Betrieb Cookies. 15.11.2019 04:16