Hallo, ich muss eine versenden, dessen Inhalt (also der Textkörper) und der Anhang mit dem public-key verschlüsselt ist, sodass der Empfänger nur mit seinem private-key entschlüsseln kann.
Ich habe jetzt sehr viele Möglichkeiten der Verschlüsselung in Java bezüglich der mail gelesen und kann nicht einschätzen, ob das das richtige ist:
Jetzt die Email selbst ohne Verschlüsselung:
Wie kriege ich es hin, dass nur Sender, Empfänger und Betreff lesbar sind, aber nicht die Email selbst bzw. nicht der Anhang?
Danke
Ich habe jetzt sehr viele Möglichkeiten der Verschlüsselung in Java bezüglich der mail gelesen und kann nicht einschätzen, ob das das richtige ist:
Java:
FileInputStream keyfis = new FileInputStream("C:/workspace/hatma/webapp/Digitale_Entrust-ID.p7c");
byte[] encKey = new byte[keyfis.available()];
keyfis.read(encKey);
keyfis.close();
X509EncodedKeySpec pubKeySpec = new X509EncodedKeySpec(encKey);
KeyFactory keyFactory = KeyFactory.getInstance("DSA", "SUN");
//den erzeugten Public Key irgendwie beim EmailVersand verwenden
PublicKey pubKey = keyFactory.generatePublic(pubKeySpec);
Jetzt die Email selbst ohne Verschlüsselung:
Java:
String to = "destinationemail@gmail.com";
String from = "fromemail@gmail.com";
final String username = "manishaspatil";//Sender Benutzername
final String password = "******";//Sender passwort
String host = "relay.jangosmtp.net";
Properties props = new Properties();
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.starttls.enable", "true");
props.put("mail.smtp.host", host);
props.put("mail.smtp.port", "25");
// Get the Session object.
Session session = Session.getInstance(props,
new javax.mail.Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(username, password);
}
});
try {
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress(from));
message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(to));
message.setSubject("Excel export");
BodyPart messageBodyPart = new MimeBodyPart();
messageBodyPart.setText("This is message body");
Multipart multipart = new MimeMultipart();
multipart.addBodyPart(messageBodyPart);
messageBodyPart = new MimeBodyPart();
String filename = "./meineExcelListe.xlsx"; //diese Excel muss verschlüsselt übertragen werden
DataSource source = new FileDataSource(filename);
messageBodyPart.setDataHandler(new DataHandler(source));
messageBodyPart.setFileName(filename);
multipart.addBodyPart(messageBodyPart);
message.setContent(multipart);
Transport.send(message);
Wie kriege ich es hin, dass nur Sender, Empfänger und Betreff lesbar sind, aber nicht die Email selbst bzw. nicht der Anhang?
Danke