Connexion avec mot de passe crypter en md5
Bonjour a tous,
j'ai une application avec lequel je me connecte grâce a une basse de donner mysql dans la quelle je renseigne un identifiant et un mot de passe crypter dans ma basse de donné
Cryptage de mot de passe :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
| private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
try{
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/dxca","sam","5852");
PreparedStatement state = con.prepareStatement("insert into membres (identifiant, motdepasse, service, statut)values(?,?,?,?)");
state.setString(1, id.getText());
state.setString(3, service.getText());
state.setString(4, statut.getText());
if (md5(pass.getPassword()).equals(""))
{
JOptionPane.showMessageDialog(this, "crypter", "erreur", JOptionPane.ERROR_MESSAGE);
return;
}
//if i in table.getRow = assurance.update();return assurance();state.executeUpdate();
state.setString(2, md5(pass.getPassword()));
int count = state.executeUpdate();
if (count > 0){
JOptionPane.showMessageDialog(this, "Ajouter", "informayion", JOptionPane.INFORMATION_MESSAGE);
///
}
}catch(Exception ex){
JOptionPane.showMessageDialog(this, ex.toString(), "erreur", JOptionPane.ERROR_MESSAGE);
}
}
private String md5(char[] c){
try{
MessageDigest digs = MessageDigest.getInstance("MD5");
digs.update((new String(c)).getBytes("UTF8"));
//byte byteData[] = digs.digest();
String str = new String(digs.digest());
return str;
}catch (Exception ex){
return "";
}
} |
mais quand j'essaie de me connecter il n'arrive pas a trouver le mot de passe d'origine que j'ai crypter
authentification :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
| private void jTextField1ActionPerformed(java.awt.event.ActionEvent evt) {
}
//Button Se connecter
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
if(jTextField1.getText().length()==0)
JOptionPane.showMessageDialog(null, "Erreur de saisie");
else if(jPasswordField1.getPassword().length==0)
JOptionPane.showMessageDialog(null, "Erreur de saisie");
else{
String user = jTextField1.getText();
char[] pass = jPasswordField1.getPassword();
//String pwd = String.copyValueOf(pass);
//String dp =
if (md5(jPasswordField1.getPassword()).equals(""))
{
JOptionPane.showMessageDialog(this, "crypter", "erreur", JOptionPane.ERROR_MESSAGE);
return;
}
String pwd = String.copyValueOf(pass);
//Verification des identifiant saisie
if(validate_login(user,pwd)){
JOptionPane.showMessageDialog(null, "Connexion reussie");
//Java_Insert_Update_Delete_Display df = new Java_Insert_Update_Delete_Display();
//df.setVisible(true);
//this.hide();
FenetreDam af = new FenetreDam();
af.setVisible(true);
//Fenetre2 ft = new Fenetre2();
//ft.setVisible(true);
this.hide();
//TableSql af = new TableSql();
//af.setVisible(true);
}
else
JOptionPane.showMessageDialog(null, "Connection refusé");
}
}
private String md5(char[] c){
try{
MessageDigest digs = MessageDigest.getInstance("MD5");
digs.update((new String(c)).getBytes("UTF8"));
//byte byteData[] = digs.digest();
String str = new String(digs.digest());
return str;
}catch (Exception ex){
return "";
}
}
private void jPasswordField1ActionPerformed(java.awt.event.ActionEvent evt) {
}
private boolean validate_login(String identifiant,String motdepasse) {
try{
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/dxcare","root","");
PreparedStatement pst = con.prepareStatement("Select * from membres where identifiant=? and motdepasse=?");
pst.setString(1, identifiant);
pst.setString(2, motdepasse);
ResultSet rs = pst.executeQuery();
if(rs.next())
return true;
else
return false;
}catch(Exception e){
e.printStackTrace();
return false;
}
} |