gpt4 book ai didi

java - 通过电子邮件发送密码

转载 作者:行者123 更新时间:2023-11-30 08:28:30 24 4
gpt4 key购买 nike

大家好,我有个问题..在我的 Java 应用程序中有一个登录表单。在那里有一个选项“忘记密码..?”我想从那个发送用户的密码..在那种情况下,用户的电子邮件地址用用户名给出..没问题。但问题是密码是加密的..我怎样才能得到那些密码默认格式并发送。我的登录标签名称是 Login 和 3 个字段 un,pw,type(admin or limit)..我的邮件发送代码如下..

try{

Properties props = new Properties();
props.put("mail.smtp.host", "smtp.gmail.com"); // for gmail use smtp.gmail.com
props.put("mail.smtp.auth", "true");
props.put("mail.debug", "true");
props.put("mail.smtp.starttls.enable", "true");
props.put("mail.smtp.port", "465");
props.put("mail.smtp.socketFactory.port", "465");
props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
props.put("mail.smtp.socketFactory.fallback", "false");

Session mailSession = Session.getInstance(props, new javax.mail.Authenticator() {

protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication("ravinduis34@gmail.com", "password");
}
});

mailSession.setDebug(true); // Enable the debug mode

Message msg = new MimeMessage( mailSession );

//--[ Set the FROM, TO, DATE and SUBJECT fields
msg.setFrom( new InternetAddress( "ravinduis34@gmail.com" ) );
msg.setRecipients( Message.RecipientType.TO,InternetAddress.parse("ravindusisira@gmail.com") );
msg.setSentDate( new Date(232323));
msg.setSubject( "Hello World!" );

//--[ Create the body of the mail
msg.setText( "Hello from my first e-mail sent with JavaMail" );

//--[ Ask the Transport class to send our mail message
Transport.send( msg );

}catch(Exception E){
System.out.println( "Oops something has gone pearshaped!");
System.out.println( E );
}

最佳答案

密码通常不以加密形式存储,而是以应用 secure one way hash function 的结果形式存储。 ;最佳实践还包括使用特定于用户(或至少系统)的 salt使用 rainbow tables 防止攻击.综上所述,您可能应该只为用户设置一个新的(可计算的)密码,然后告知他们现在已设置为该密码(例如,读取员工表,使用他们的 ssn 的最后六位数字和他们的街道地址数字)。

关于java - 通过电子邮件发送密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20170941/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com