Hallo Linuchs,
- Was benötige ICH als Programmierer für den Versand (Schlüssel - woher?), was der EMPFÄNGER für den Empfang?
Das hängt vom Verfahren ab. Das Standard-Verfahren wäre wohl PGP/GPG, da brauchst du den Public Key des Kunden. Den musst du halt abfragen.
Alternativ kannst du auch eine symmetrische Verschlüsselung verwenden, etwa mit Passwort-geschützten ZIP-Files (die verwenden AES-256 als Cipher); hier werden allerdings natürlich nur die Anhänge verschlüsselt und nicht der Mail-Text selber.
- werden beim Verschlüsseln der Mail auch die Anhänge verschlüsselt?
Das hängt vom Verfahren ab ;-) ich gehe jetzt mal davon aus, dass du PGP verwenden willst; hier gibt es zwei Verfahren: PGP-Inline und PGP-MIME. PGP-Inline ist die erste Implementation von Verschlüsselung für Mails, hier wird der verschlüsselte Text in ASCII verpackt in den Text-Body der Mail geschrieben. Hier sind die Anhänge nicht verschlüsselt. Der Mail-Client muss dafür prinzipiell nichts können, der User kann die Mail notfalls auch „von Hand“ entschlüsseln.
Die zweite Methode, PGP-MIME, ist später entwickelt worden; hier wird die verschlüsselte Mail gemäß MIME-Standard verpackt. Hier ist es auch möglich, die Anhänge zu verschlüsseln. Das muss allerdings der Mail-Client auch unterstützen.
Leider ist PGP-Inline immer noch das Default-Format von dem am meisten verbreiteten Mail-Client mit Verschlüsselung (Thunderbird mit Enigmail); unterstützt werden aber beide Verfahren.
LG,
CK