Contrôler l'indice de sécurité d'un mot de passe

Soyez le premier à donner votre avis sur cette source.

Vue 14 398 fois - Téléchargée 689 fois

Description

Suite à un post sur un forum php
http://www.phpcs.com/forum.v2.aspx?ID=721170
Ce code permet simplement de vérifier l'indice de sécurité
d'un mot de passe et de l'afficher...
Voir code et screenshot

Source / Exemple :


<html>
<head>
<title> securité </title>
<script language="javascript" type="text/javascript">
function Check()
{
	password = document.forms[0].pass.value;
	passwordlow = password.toLowerCase();
	majuscule = false;
	
	//On vérifie si il y a des majuscules
	if(password != passwordlow)
	{
		majuscule = true;
	}
	
	taille = password.length;
	numerique = false;
	// On vérifie qu'il y a des chiffres
	for(i=0;i<taille-1;i++)
	{
		caractere = password.substring(i,i+1);
		if(!isNaN(caractere))
		{
			numerique = true;
		}
	}
	
	if((majuscule==false && numerique==false))
	{
		if(document.getElementById)
		{
		document.getElementById("faible").style.backgroundColor = 'green';
		document.getElementById("moyen").style.backgroundColor = 'white';
		document.getElementById("elevee").style.backgroundColor = 'white';
		}
	}
	else
	{
		if((majuscule || numerique) && taille<=8)
		{
			document.getElementById("faible").style.backgroundColor = 'green';
			document.getElementById("moyen").style.backgroundColor = 'green';
			document.getElementById("elevee").style.backgroundColor = 'white';
		}
		else if(majuscule && numerique && taille>8)
		{
			document.getElementById("faible").style.backgroundColor = 'green';
			document.getElementById("moyen").style.backgroundColor = 'green';
			document.getElementById("elevee").style.backgroundColor = 'green';
		}
	}
}
</script>
</head>
<body>
<form>

<input type="password" name="pass" OnKeyDown="Check();"><br><br>

<table border="2" width="300">
<tr>
<td id="faible" align="center" style="background-color :white;">Faible</td>
<td id="moyen" align="center" style="background-color :white;">Moyen</td>
<td id="elevee" align="center" style="background-color :white;">Elevee</td>
</tr>
</table>

</form>
</body>
</html>

Conclusion :


Ce code peut sûrement être amélioré, mais comme je ne
préconise pas le javascript pour cause de (non) accéssibilité...

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
4
Date d'inscription
dimanche 7 juin 2009
Statut
Membre
Dernière intervention
17 juin 2009

je mets 8 parce que comme il l'a clairement dit c'est une base à développer, ne l'utiliser pas comme tel, c'est inutile.
Messages postés
47
Date d'inscription
mardi 1 juin 2004
Statut
Membre
Dernière intervention
17 septembre 2006

Ouais ce n'est pas le mieu mais sa marche...Et aussi es-ce normal que lorsqu'on met 1234 il me dit que c'est moyen!
Messages postés
102
Date d'inscription
mardi 15 mars 2005
Statut
Membre
Dernière intervention
9 juin 2006

-les caractères spéciaux devraient être considérés
-les nombres sont surévalués (ex:123)
Messages postés
947
Date d'inscription
mercredi 19 novembre 2003
Statut
Membre
Dernière intervention
5 avril 2008
3
Parcontre je suis pas tres d'accord sur le "MAJUSCULE": puisque quelqu'un peut ecrire ces mdp en MAJ, ne vaut-il pas mieu verifier si les cases s'inverse ? donc ajouter 2 lignes pour le test inverse, le but étant de tester si ya une difference de case.
Messages postés
1044
Date d'inscription
lundi 7 mars 2005
Statut
Membre
Dernière intervention
13 juillet 2010
7
Pour PHP :
- Ajoute les $ devant les variables
- Remplace les élements qui réfaire au form par des GET ou POST
- Remplace le reste fait des echo au lieu des document.getE...


PHP et Javascript ça ce resssemble beaucoup. Si tu fais déjà du JS, PHP c'est facile à apprendre. L'inverse aussi est vrai.
Afficher les 11 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.