Subversion Repositories ALCASAR

Rev

Rev 2450 | Rev 2809 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log

Rev 2450 Rev 2766
Line 1... Line 1...
1
<?php
1
<?php
2
# $Id: password.php 2450 2017-12-05 21:53:42Z tom.houdayer $
2
# $Id: password.php 2766 2019-11-19 21:37:58Z rexy $
3
#
3
#
4
# change user password on ALACASAR NAC
4
# change user password on ALACASAR NAC
5
# Copyright (C) 2003, 2004 Mondru AB.
5
# Copyright (C) 2003, 2004 Mondru AB.
6
# Copyright (C) 2008-20017 ANGEL95 & REXY
6
# Copyright (C) 2008-20017 ANGEL95 & REXY
7
 
7
 
Line 79... Line 79...
79
	$l_form_button_valid		= "Modificar";
79
	$l_form_button_valid		= "Modificar";
80
	$l_form_button_retour		= "Cancelar";
80
	$l_form_button_retour		= "Cancelar";
81
	$l_form_result1			= "Sua senha foi alterada com sucesso";
81
	$l_form_result1			= "Sua senha foi alterada com sucesso";
82
	$l_form_result2			= "Erro ao tentar alterar a senha";
82
	$l_form_result2			= "Erro ao tentar alterar a senha";
83
} else if ($Language === 'de') {	// German
83
} else if ($Language === 'de') {	// German
84
	$l_title			= "User password change";
84
	$l_title			= "Password ändern";
85
	$l_form_l1			= "User";
85
	$l_form_l1			= "Benutzername";
86
	$l_form_l2			= "Old password";
86
	$l_form_l2			= "Altes Passwort";
87
	$l_form_l3			= "New password";
87
	$l_form_l3			= "Neues Passwort";
88
	$l_form_l4			= "New password (confirmation)";
88
	$l_form_l4			= "Neues Passwort bestätigen";
89
	$l_eval_pass			= "Score :";
89
	$l_eval_pass			= "Wert :";
90
	$l_passwordmeter		= "Powered by 'Shibbo Password Analyser'";
90
	$l_passwordmeter		= "Powered by 'Shibbo Password Analyser'";
91
	$l_form_button_valid		= "Modify";
91
	$l_form_button_valid		= "Bestätigen";
92
	$l_form_button_retour		= "Cancel";
92
	$l_form_button_retour		= "Abbrechen";
93
	$l_form_result1			= "Your password has been successfuly changed";
93
	$l_form_result1			= "Ihr Passwort wurde erfolgreich geändert.";
94
	$l_form_result2			= "Error when trying to change password";
94
	$l_form_result2			= "Fehler beim Ändern des Passworts";
95
} else if ($Language === 'nl') {	// Dutch
95
} else if ($Language === 'nl') {	// Dutch
96
	$l_title			= "User password change";
96
	$l_title			= "User password change";
97
	$l_form_l1			= "User";
97
	$l_form_l1			= "User";
98
	$l_form_l2			= "Old password";
98
	$l_form_l2			= "Old password";
99
	$l_form_l3			= "New password";
99
	$l_form_l3			= "New password";
Line 195... Line 195...
195
?>
195
?>
196
<!DOCTYPE html>
196
<!DOCTYPE html>
197
<html>
197
<html>
198
	<head>
198
	<head>
199
		<meta charset="UTF-8">
199
		<meta charset="UTF-8">
-
 
200
		<meta name="viewport" content="width=device-width, initial-scale=1.0">
200
		<title>ALCASAR - <?= $l_title ?></title>
201
		<title>ALCASAR - <?= $l_title ?></title>
201
		<link rel="stylesheet" href="css/pass.css" type="text/css">
-
 
202
		<link rel="stylesheet" href="css/style_intercept.css" type="text/css">
202
		<!--<link type="text/css" href="/css/index_style.css" rel="stylesheet">-->
203
		<link rel="stylesheet" href="css/pwdmeter.css" type="text/css">
203
		<link rel="stylesheet" href="css/pwdmeter.css" type="text/css">
-
 
204
		<link rel="stylesheet" href="css/bootstrap.min.css" type="text/css">
-
 
205
		<link rel="stylesheet" href="css/pass.css" type="text/css">
204
		<!--[if lt IE 7]>
206
		<!--[if lt IE 7]>
205
			<link rel="stylesheet" href="css/ie.css" type="text/css">
207
			<link rel="stylesheet" href="css/ie.css" type="text/css">
206
		<![endif]-->
208
		<![endif]-->
207
		<script src="js/pwdmeter.js"></script>
209
		<script src="js/pwdmeter.js"></script>
208
	</head>
210
	</head>
209
	<body>
211
	<body>
-
 
212
		<div class="col-xs-12 col-sm-10 col-sm-offset-1 col-md-10 col-md-offset-1 col-lg-8 col-lg-offset-2" id="gui">
-
 
213
 
-
 
214
			<!-- HeaderBox -->
-
 
215
 
210
		<div id="cadre_titre" class="titre_controle">
216
			<div class="row banner">
-
 
217
				<!-- Logo box -->
-
 
218
				<div id="boite_logo" class="img_banner hidden-xs col-sm-3 col-md-2 col-lg-2">
-
 
219
					<img class="img-responsive" src="images/organisme.png">
-
 
220
				</div>
-
 
221
 
-
 
222
				<!-- Title -->
-
 
223
				<div id="cadre_titre" class="titre_banner col-xs-10 col-xs-offset-1 col-sm-6 col-sm-offset-0 col-md-8 col-lg-8">
-
 
224
					<div class="row">
211
			<p id="acces_controle" class="titre_controle"><?= $l_title ?></p>
225
						<p id="acces_controle" class="titre_controle"><?= $l_title ?></p>
-
 
226
					</div>
-
 
227
					<div class="row">
212
			<div id="boite_logo"><img src="/images/organisme.png"></div>
228
					<?php if (isset($changePasswordMessage)): ?>
-
 
229
						<?= $changePasswordMessage ?>
-
 
230
					<?php endif; ?>
-
 
231
					</div>
-
 
232
				</div>
213
		</div>
233
			</div>
-
 
234
 
214
		<div id="contenu_acces">
235
			<!-- Main content box -->
-
 
236
			<div class="row">
215
			<form name="master" action="<?= $current_page ?>" method="post">
237
				<form name="master" id="contenu_acces" action="<?= $current_page ?>" method="post" class="col-xs-12 col-sm-12 col-md-offset-1 col-md-10">
216
				<input type="hidden" name="action" value="checkpass">
238
					<input class="row" type="hidden" name="action" value="checkpass">
-
 
239
 
-
 
240
					<div class="row input_row">
-
 
241
						<div class="label_name col-xs-3 col-sm-3 col-md-4"><?= $l_form_l1 ?></div>
-
 
242
						<div class="col-xs-6 col-sm-6 col-md-4">
-
 
243
							<input type="text" name="login" class="form-control" id="input_value" value="" label="test">
-
 
244
						</div>
-
 
245
					</div>
-
 
246
 
-
 
247
					<div class="row input_row">
-
 
248
						<div class="label_name col-xs-3 col-sm-3 col-md-4"><?= $l_form_l2 ?></div>
-
 
249
						<div class="col-xs-6 col-sm-6 col-md-4">
-
 
250
							<input type="password" class="form-control" id="input_value" name="passwd" value="">
-
 
251
						</div>
-
 
252
					</div>
-
 
253
 
-
 
254
					<div class="row input_row">
-
 
255
						<div class="label_name col-xs-3 col-sm-3 col-md-4"><?= $l_form_l3 ?></div>
-
 
256
						<div class="col-xs-6 col-sm-6 col-md-4">
-
 
257
							<input class="form-control" id="input_value" type="password" name="newpasswd" id="passwordPwd" value="" autocomplete="off" onkeyup="chkPass(this.value);" />
-
 
258
						</div>
-
 
259
						<div class="col-xs-3 col-sm-3 col-md-4">	
-
 
260
							<input type="text" id="passwordTxt" name="passwordTxt" autocomplete="off" onkeyup="chkPass(this.value);" class="hide" />
-
 
261
						</div>
-
 
262
					</div>
-
 
263
			
-
 
264
					<div class="row input_row">
-
 
265
						
-
 
266
						<div class="label_name col-xs-3 col-sm-3 col-md-4"><?= $l_eval_pass ?></div>
-
 
267
						<div class="col-xs-6 col-sm-6 col-md-4">
-
 
268
							<div class="row scorebarDisplay">
-
 
269
								<div id="scorebarBorder" class="col-xs-12 col-sm-12">
217
				<table id="champs_pass" border="0">
270
									<div id="score" class="row">0%</div>
-
 
271
									<div id="scorebar" class="row">&nbsp;</div>
-
 
272
								</div>
-
 
273
							</div>
-
 
274
							<div class="row">
-
 
275
								<div id="lien_pass" class="col-xs-12 col-sm-12"><?= $l_passwordmeter ?></div>
-
 
276
							</div>
-
 
277
						</div>
-
 
278
					</div>
-
 
279
 
-
 
280
					<div class="row input_row">
-
 
281
						<div class="label_name col-xs-3 col-sm-3 col-md-4"><?= $l_form_l4 ?></div>
-
 
282
						<div class="col-xs-6 col-sm-6 col-md-4">
-
 
283
							<input type="password" class="form-control" id="input_value" name="newpasswd2" value="">
-
 
284
						</div>
-
 
285
					</div>
-
 
286
		
-
 
287
					<div class="row input_row">
-
 
288
						<div class="col-xs-5 col-xs-offset-1 col-sm-4 col-sm-offset-2">
-
 
289
							<input id="buttons" class="btn btn-default" value="<?= $l_form_button_retour ?>" onclick="window.location.href = '<?= $homepage ?>';"></input>
-
 
290
						</div>
-
 
291
						<div class="col-xs-5 col-sm-4">
-
 
292
							<button type="submit" class="btn btn-primary" id="buttons"><?= $l_form_button_valid ?></button>
-
 
293
						</div>
-
 
294
					</div>
-
 
295
				</div>
-
 
296
				
-
 
297
				</form>
-
 
298
				<div class="row">
-
 
299
					<div id="boite_logo" class="img_banner col-xs-12 hidden-sm hidden-md hidden-lg">
-
 
300
						<img class="img-responsive image" src="images/organisme.png">
-
 
301
					</div>
-
 
302
				</div>
-
 
303
			</div>
-
 
304
			<div id="info_pass">
-
 
305
				<table id="tablePwdStatus" cellpadding="5" cellspacing="1" border="0">
218
					<tr>
306
					<tr>
-
 
307
						<th colspan="2">Additions</th>
-
 
308
						<th class="txtCenter">Type</th>
-
 
309
						<th class="txtCenter">Rate</th>
-
 
310
						<th class="txtCenter">Count</th>
-
 
311
						<th class="txtCenter">Bonus</th>
-
 
312
					</tr>
-
 
313
					<tr>
-
 
314
						<td width="1%"><div id="div_nLength" class="fail">&nbsp;</div></td>
-
 
315
						<td width="94%">Number of Characters</td>
-
 
316
						<td width="1%" class="txtCenter">Flat</td>
-
 
317
						<td width="1%" class="txtCenter italic">+(n*4)</td>
-
 
318
						<td width="1%"><div id="nLength" class="box">&nbsp;</div></td>
-
 
319
						<td width="1%"><div id="nLengthBonus" class="boxPlus">&nbsp;</div></td>
-
 
320
					</tr>
-
 
321
					<tr>
-
 
322
						<td><div id="div_nAlphaUC" class="fail">&nbsp;</div></td>
-
 
323
						<td>Uppercase Letters</td>
219
						<td class="first_item"><?= $l_form_l1 ?></td>
324
						<td class="txtCenter">Cond/Incr</td>
-
 
325
						<td nowrap="nowrap" class="txtCenter italic">+((len-n)*2)</td>
-
 
326
						<td><div id="nAlphaUC" class="box">&nbsp;</div></td>
220
						<td><input type="text" name="login" value="" label="test"></td>
327
						<td><div id="nAlphaUCBonus" class="boxPlus">&nbsp;</div></td>
221
					</tr>	
328
					</tr>	
222
					<tr>
329
					<tr>
-
 
330
						<td><div id="div_nAlphaLC" class="fail">&nbsp;</div></td>
-
 
331
						<td>Lowercase Letters</td>
223
						<td class="first_item"><?= $l_form_l2 ?></td>
332
						<td class="txtCenter">Cond/Incr</td>
-
 
333
						<td class="txtCenter italic">+((len-n)*2)</td>
224
						<td><input type="password" name="passwd" value=""></td>
334
						<td><div id="nAlphaLC" class="box">&nbsp;</div></td>
-
 
335
						<td><div id="nAlphaLCBonus" class="boxPlus">&nbsp;</div></td>
225
					</tr>
336
					</tr>
226
					<tr>
337
					<tr>
227
						<td class="first_item"><?= $l_form_l3 ?></td>
338
						<td><div id="div_nNumber" class="fail">&nbsp;</div></td>
228
						<td>
339
						<td>Numbers</td>
-
 
340
						<td class="txtCenter">Cond</td>
229
							<input type="password" name="newpasswd" id="passwordPwd" value="" autocomplete="off" onkeyup="chkPass(this.value);" />
341
						<td class="txtCenter italic">+(n*4)</td>
230
							<input type="text" id="passwordTxt" name="passwordTxt" autocomplete="off" onkeyup="chkPass(this.value);" class="hide" />
342
						<td><div id="nNumber" class="box">&nbsp;</div></td>
231
						</td>
343
						<td><div id="nNumberBonus" class="boxPlus">&nbsp;</div></td>
232
					</tr>
344
					</tr>
233
					<tr>
345
					<tr>
-
 
346
						<td><div id="div_nSymbol" class="fail">&nbsp;</div></td>
-
 
347
						<td>Symbols</td>
234
						<td class="first_item"><?= $l_eval_pass ?></td>
348
						<td class="txtCenter">Flat</td>
-
 
349
						<td class="txtCenter italic">+(n*6)</td>
-
 
350
						<td><div id="nSymbol" class="box">&nbsp;</div></td>
-
 
351
						<td><div id="nSymbolBonus" class="boxPlus">&nbsp;</div></td>
-
 
352
					</tr>
235
						<td>
353
					<tr>
-
 
354
						<td><div id="div_nMidChar" class="fail">&nbsp;</div></td>
236
							<div id="scorebarBorder">
355
						<td>Middle Numbers or Symbols</td>
237
								<div id="score">0%</div>
356
						<td class="txtCenter">Flat</td>
-
 
357
						<td class="txtCenter italic">+(n*2)</td>
238
								<div id="scorebar">&nbsp;</div>
358
						<td><div id="nMidChar" class="box">&nbsp;</div></td>
-
 
359
						<td><div id="nMidCharBonus" class="boxPlus">&nbsp;</div></td>
239
							</div>
360
					</tr>
-
 
361
					<tr>
-
 
362
						<td><div id="div_nRequirements" class="fail">&nbsp;</div></td>
-
 
363
						<td>Requirements</td>
240
							<div id="complexity"></div>
364
						<td class="txtCenter">Flat</td>
-
 
365
						<td class="txtCenter italic">+(n*2)</td>
-
 
366
						<td><div id="nRequirements" class="box">&nbsp;</div></td>
-
 
367
						<td><div id="nRequirementsBonus" class="boxPlus">&nbsp;</div></td>
-
 
368
					</tr>
-
 
369
					<tr>
-
 
370
						<th colspan="6">Deductions</th>
241
						</td>
371
					</tr>
-
 
372
					<tr>
-
 
373
						<td width="1%"><div id="div_nAlphasOnly" class="pass">&nbsp;</div></td>
-
 
374
						<td width="94%">Letters Only</td>
-
 
375
						<td width="1%" class="txtCenter">Flat</td>
-
 
376
						<td width="1%" class="txtCenter italic">-n</td>
-
 
377
						<td width="1%"><div id="nAlphasOnly" class="box">&nbsp;</div></td>
-
 
378
						<td width="1%"><div id="nAlphasOnlyBonus" class="boxMinus">&nbsp;</div></td>
-
 
379
					</tr>	
-
 
380
					<tr>
-
 
381
						<td><div id="div_nNumbersOnly" class="pass">&nbsp;</div></td>
-
 
382
						<td>Numbers Only</td>
-
 
383
						<td class="txtCenter">Flat</td>
-
 
384
						<td class="txtCenter italic">-n</td>
-
 
385
						<td><div id="nNumbersOnly" class="box">&nbsp;</div></td>
-
 
386
						<td><div id="nNumbersOnlyBonus" class="boxMinus">&nbsp;</div></td>
-
 
387
					</tr>	
-
 
388
					<tr>
-
 
389
						<td><div id="div_nRepChar" class="pass">&nbsp;</div></td>
-
 
390
						<td>Repeat Characters (Case Insensitive)</td>
-
 
391
						<td class="txtCenter">Comp</td>
-
 
392
						<td nowrap="nowrap" class="txtCenter italic"> - </td>
-
 
393
						<td><div id="nRepChar" class="box">&nbsp;</div></td>
-
 
394
						<td><div id="nRepCharBonus" class="boxMinus">&nbsp;</div></td>
-
 
395
					</tr>	
-
 
396
					<tr>
-
 
397
						<td><div id="div_nConsecAlphaUC" class="pass">&nbsp;</div></td>
-
 
398
						<td>Consecutive Uppercase Letters</td>
-
 
399
						<td class="txtCenter">Flat</td>
-
 
400
						<td class="txtCenter italic">-(n*2)</td>
-
 
401
						<td><div id="nConsecAlphaUC" class="box">&nbsp;</div></td>
-
 
402
						<td><div id="nConsecAlphaUCBonus" class="boxMinus">&nbsp;</div></td>
-
 
403
					</tr>	
-
 
404
					<tr>
-
 
405
						<td><div id="div_nConsecAlphaLC" class="pass">&nbsp;</div></td>
-
 
406
						<td>Consecutive Lowercase Letters</td>
-
 
407
						<td class="txtCenter">Flat</td>
-
 
408
						<td class="txtCenter italic">-(n*2)</td>
-
 
409
						<td><div id="nConsecAlphaLC" class="box">&nbsp;</div></td>
-
 
410
						<td><div id="nConsecAlphaLCBonus" class="boxMinus">&nbsp;</div></td>
-
 
411
					</tr>	
-
 
412
					<tr>
-
 
413
						<td><div id="div_nConsecNumber" class="pass">&nbsp;</div></td>
-
 
414
						<td>Consecutive Numbers</td>
-
 
415
						<td class="txtCenter">Flat</td>
-
 
416
						<td class="txtCenter italic">-(n*2)</td>
-
 
417
						<td><div id="nConsecNumber" class="box">&nbsp;</div></td>
-
 
418
						<td><div id="nConsecNumberBonus" class="boxMinus">&nbsp;</div></td>
-
 
419
					</tr>	
-
 
420
					<tr>
-
 
421
						<td><div id="div_nSeqAlpha" class="pass">&nbsp;</div></td>
-
 
422
						<td>Sequential Letters (3+)</td>
-
 
423
						<td class="txtCenter">Flat</td>
-
 
424
						<td class="txtCenter italic">-(n*3)</td>
-
 
425
						<td><div id="nSeqAlpha" class="box">&nbsp;</div></td>
-
 
426
						<td><div id="nSeqAlphaBonus" class="boxMinus">&nbsp;</div></td>
-
 
427
					</tr>	
-
 
428
					<tr>
-
 
429
						<td><div id="div_nSeqNumber" class="pass">&nbsp;</div></td>
-
 
430
						<td>Sequential Numbers (3+)</td>
-
 
431
						<td class="txtCenter">Flat</td>
-
 
432
						<td class="txtCenter italic">-(n*3)</td>
-
 
433
						<td><div id="nSeqNumber" class="box">&nbsp;</div></td>
-
 
434
						<td><div id="nSeqNumberBonus" class="boxMinus">&nbsp;</div></td>
-
 
435
					</tr>	
-
 
436
					<tr>
-
 
437
						<td><div id="div_nSeqSymbol" class="pass">&nbsp;</div></td>
-
 
438
						<td>Sequential Symbols (3+)</td>
-
 
439
						<td class="txtCenter">Flat</td>
-
 
440
						<td class="txtCenter italic">-(n*3)</td>
-
 
441
						<td><div id="nSeqSymbol" class="box">&nbsp;</div></td>
-
 
442
						<td><div id="nSeqSymbolBonus" class="boxMinus">&nbsp;</div></td>
-
 
443
					</tr>	
-
 
444
					<tr>
-
 
445
						<th colspan="6">Legend</th>
242
					</tr>
446
					</tr>
243
					<tr>
447
					<tr>
244
						<td colspan="2" id="lien_pass"><?= $l_passwordmeter ?></td>
448
						<td colspan="6">
-
 
449
							<ul id="listLegend">
-
 
450
								<li><div class="exceed imgLegend">&nbsp;</div><span class="bold">Exceptional:</span> Exceeds minimum standards. Additional bonuses are applied.</li>
-
 
451
								<li><div class="pass imgLegend">&nbsp;</div><span class="bold">Sufficient:</span> Meets minimum standards. Additional bonuses are applied.</li>
-
 
452
								<li><div class="warn imgLegend">&nbsp;</div><span class="bold">Warning:</span> Advisory against employing bad practices. Overall score is reduced.</li>
-
 
453
								<li><div class="fail imgLegend">&nbsp;</div><span class="bold">Failure:</span> Does not meet the minimum standards. Overall score is reduced.</li>
-
 
454
							</ul>
-
 
455
						</td>
245
					</tr>
456
					</tr>
-
 
457
				</table>
-
 
458
				<table id="tablePwdNotes" cellpadding="5" cellspacing="1" border="0">
246
					<tr>
459
					<tr>
247
						<td class="first_item"><?= $l_form_l4 ?></td>
460
						<th>Quick Footnotes</th>
248
						<td><input type="password" name="newpasswd2" value=""></td>
-
 
249
					</tr>
461
					</tr>
250
					<tr>
462
					<tr>
-
 
463
						<td>
-
 
464
							&bull; <strong>Flat:</strong> Rates that add/remove in non-changing increments.<br>
-
 
465
							&bull; <strong>Incr:</strong> Rates that add/remove in adjusting increments.<br>
-
 
466
							&bull; <strong>Cond:</strong> Rates that add/remove depending on additional factors.<br>
-
 
467
							&bull; <strong>Comp:</strong> Rates that are too complex to summarize. See source code for details.<br>
-
 
468
							&bull; <strong>n:</strong> Refers to the total number of occurrences.<br>
251
						<td colspan="2" id="lien_pass">
469
							&bull; <strong>len:</strong> Refers to the total password length.<br>
252
							<input type="submit" class="btn_form" id="btn_pass" value="<?= $l_form_button_valid ?>">
470
							&bull; Additional bonus scores are given for increased character variety.<br>
-
 
471
							&bull; Final score is a cumulative result of all bonuses minus deductions.<br>
-
 
472
							&bull; Final score is capped with a minimum of 0 and a maximum of 100.<br>
253
							<input type="button" class="btn_form" id="btn_retour" value="<?= $l_form_button_retour ?>" onclick="window.location = '<?= $homepage ?>';">
473
							&bull; Score and Complexity ratings are not conditional on meeting minimum requirements.<br>
254
						</td>
474
						</td>
255
					</tr>
475
					</tr>
256
					<?php if (isset($changePasswordMessage)): ?>
-
 
257
						<tr>
-
 
258
							<td colspan="2"><?= $changePasswordMessage ?></td>
-
 
259
						</tr>
-
 
260
					<?php endif; ?>
-
 
261
				</table>
476
				</table>
262
			</form>
-
 
263
		</div>
477
			</div>
264
		<div id="info_pass">
-
 
265
			<table id="tablePwdStatus" cellpadding="5" cellspacing="1" border="0">
-
 
266
				<tr>
-
 
267
					<th colspan="2">Additions</th>
-
 
268
					<th class="txtCenter">Type</th>
-
 
269
					<th class="txtCenter">Rate</th>
-
 
270
					<th class="txtCenter">Count</th>
-
 
271
					<th class="txtCenter">Bonus</th>
-
 
272
				</tr>
-
 
273
				<tr>
-
 
274
					<td width="1%"><div id="div_nLength" class="fail">&nbsp;</div></td>
-
 
275
					<td width="94%">Number of Characters</td>
-
 
276
					<td width="1%" class="txtCenter">Flat</td>
-
 
277
					<td width="1%" class="txtCenter italic">+(n*4)</td>
-
 
278
					<td width="1%"><div id="nLength" class="box">&nbsp;</div></td>
-
 
279
					<td width="1%"><div id="nLengthBonus" class="boxPlus">&nbsp;</div></td>
-
 
280
				</tr>
-
 
281
				<tr>
-
 
282
					<td><div id="div_nAlphaUC" class="fail">&nbsp;</div></td>
-
 
283
					<td>Uppercase Letters</td>
-
 
284
					<td class="txtCenter">Cond/Incr</td>
-
 
285
					<td nowrap="nowrap" class="txtCenter italic">+((len-n)*2)</td>
-
 
286
					<td><div id="nAlphaUC" class="box">&nbsp;</div></td>
-
 
287
					<td><div id="nAlphaUCBonus" class="boxPlus">&nbsp;</div></td>
-
 
288
				</tr>	
-
 
289
				<tr>
-
 
290
					<td><div id="div_nAlphaLC" class="fail">&nbsp;</div></td>
-
 
291
					<td>Lowercase Letters</td>
-
 
292
					<td class="txtCenter">Cond/Incr</td>
-
 
293
					<td class="txtCenter italic">+((len-n)*2)</td>
-
 
294
					<td><div id="nAlphaLC" class="box">&nbsp;</div></td>
-
 
295
					<td><div id="nAlphaLCBonus" class="boxPlus">&nbsp;</div></td>
-
 
296
				</tr>
-
 
297
				<tr>
-
 
298
					<td><div id="div_nNumber" class="fail">&nbsp;</div></td>
-
 
299
					<td>Numbers</td>
-
 
300
					<td class="txtCenter">Cond</td>
-
 
301
					<td class="txtCenter italic">+(n*4)</td>
-
 
302
					<td><div id="nNumber" class="box">&nbsp;</div></td>
-
 
303
					<td><div id="nNumberBonus" class="boxPlus">&nbsp;</div></td>
-
 
304
				</tr>
-
 
305
				<tr>
-
 
306
					<td><div id="div_nSymbol" class="fail">&nbsp;</div></td>
-
 
307
					<td>Symbols</td>
-
 
308
					<td class="txtCenter">Flat</td>
-
 
309
					<td class="txtCenter italic">+(n*6)</td>
-
 
310
					<td><div id="nSymbol" class="box">&nbsp;</div></td>
-
 
311
					<td><div id="nSymbolBonus" class="boxPlus">&nbsp;</div></td>
-
 
312
				</tr>
-
 
313
				<tr>
-
 
314
					<td><div id="div_nMidChar" class="fail">&nbsp;</div></td>
-
 
315
					<td>Middle Numbers or Symbols</td>
-
 
316
					<td class="txtCenter">Flat</td>
-
 
317
					<td class="txtCenter italic">+(n*2)</td>
-
 
318
					<td><div id="nMidChar" class="box">&nbsp;</div></td>
-
 
319
					<td><div id="nMidCharBonus" class="boxPlus">&nbsp;</div></td>
-
 
320
				</tr>
-
 
321
				<tr>
-
 
322
					<td><div id="div_nRequirements" class="fail">&nbsp;</div></td>
-
 
323
					<td>Requirements</td>
-
 
324
					<td class="txtCenter">Flat</td>
-
 
325
					<td class="txtCenter italic">+(n*2)</td>
-
 
326
					<td><div id="nRequirements" class="box">&nbsp;</div></td>
-
 
327
					<td><div id="nRequirementsBonus" class="boxPlus">&nbsp;</div></td>
-
 
328
				</tr>
-
 
329
				<tr>
-
 
330
					<th colspan="6">Deductions</th>
-
 
331
				</tr>
-
 
332
				<tr>
-
 
333
					<td width="1%"><div id="div_nAlphasOnly" class="pass">&nbsp;</div></td>
-
 
334
					<td width="94%">Letters Only</td>
-
 
335
					<td width="1%" class="txtCenter">Flat</td>
-
 
336
					<td width="1%" class="txtCenter italic">-n</td>
-
 
337
					<td width="1%"><div id="nAlphasOnly" class="box">&nbsp;</div></td>
-
 
338
					<td width="1%"><div id="nAlphasOnlyBonus" class="boxMinus">&nbsp;</div></td>
-
 
339
				</tr>	
-
 
340
				<tr>
-
 
341
					<td><div id="div_nNumbersOnly" class="pass">&nbsp;</div></td>
-
 
342
					<td>Numbers Only</td>
-
 
343
					<td class="txtCenter">Flat</td>
-
 
344
					<td class="txtCenter italic">-n</td>
-
 
345
					<td><div id="nNumbersOnly" class="box">&nbsp;</div></td>
-
 
346
					<td><div id="nNumbersOnlyBonus" class="boxMinus">&nbsp;</div></td>
-
 
347
				</tr>	
-
 
348
				<tr>
-
 
349
					<td><div id="div_nRepChar" class="pass">&nbsp;</div></td>
-
 
350
					<td>Repeat Characters (Case Insensitive)</td>
-
 
351
					<td class="txtCenter">Comp</td>
-
 
352
					<td nowrap="nowrap" class="txtCenter italic"> - </td>
-
 
353
					<td><div id="nRepChar" class="box">&nbsp;</div></td>
-
 
354
					<td><div id="nRepCharBonus" class="boxMinus">&nbsp;</div></td>
-
 
355
				</tr>	
-
 
356
				<tr>
-
 
357
					<td><div id="div_nConsecAlphaUC" class="pass">&nbsp;</div></td>
-
 
358
					<td>Consecutive Uppercase Letters</td>
-
 
359
					<td class="txtCenter">Flat</td>
-
 
360
					<td class="txtCenter italic">-(n*2)</td>
-
 
361
					<td><div id="nConsecAlphaUC" class="box">&nbsp;</div></td>
-
 
362
					<td><div id="nConsecAlphaUCBonus" class="boxMinus">&nbsp;</div></td>
-
 
363
				</tr>	
-
 
364
				<tr>
-
 
365
					<td><div id="div_nConsecAlphaLC" class="pass">&nbsp;</div></td>
-
 
366
					<td>Consecutive Lowercase Letters</td>
-
 
367
					<td class="txtCenter">Flat</td>
-
 
368
					<td class="txtCenter italic">-(n*2)</td>
-
 
369
					<td><div id="nConsecAlphaLC" class="box">&nbsp;</div></td>
-
 
370
					<td><div id="nConsecAlphaLCBonus" class="boxMinus">&nbsp;</div></td>
-
 
371
				</tr>	
-
 
372
				<tr>
-
 
373
					<td><div id="div_nConsecNumber" class="pass">&nbsp;</div></td>
-
 
374
					<td>Consecutive Numbers</td>
-
 
375
					<td class="txtCenter">Flat</td>
-
 
376
					<td class="txtCenter italic">-(n*2)</td>
-
 
377
					<td><div id="nConsecNumber" class="box">&nbsp;</div></td>
-
 
378
					<td><div id="nConsecNumberBonus" class="boxMinus">&nbsp;</div></td>
-
 
379
				</tr>	
-
 
380
				<tr>
-
 
381
					<td><div id="div_nSeqAlpha" class="pass">&nbsp;</div></td>
-
 
382
					<td>Sequential Letters (3+)</td>
-
 
383
					<td class="txtCenter">Flat</td>
-
 
384
					<td class="txtCenter italic">-(n*3)</td>
-
 
385
					<td><div id="nSeqAlpha" class="box">&nbsp;</div></td>
-
 
386
					<td><div id="nSeqAlphaBonus" class="boxMinus">&nbsp;</div></td>
-
 
387
				</tr>	
-
 
388
				<tr>
-
 
389
					<td><div id="div_nSeqNumber" class="pass">&nbsp;</div></td>
-
 
390
					<td>Sequential Numbers (3+)</td>
-
 
391
					<td class="txtCenter">Flat</td>
-
 
392
					<td class="txtCenter italic">-(n*3)</td>
-
 
393
					<td><div id="nSeqNumber" class="box">&nbsp;</div></td>
-
 
394
					<td><div id="nSeqNumberBonus" class="boxMinus">&nbsp;</div></td>
-
 
395
				</tr>	
-
 
396
				<tr>
-
 
397
					<td><div id="div_nSeqSymbol" class="pass">&nbsp;</div></td>
-
 
398
					<td>Sequential Symbols (3+)</td>
-
 
399
					<td class="txtCenter">Flat</td>
-
 
400
					<td class="txtCenter italic">-(n*3)</td>
-
 
401
					<td><div id="nSeqSymbol" class="box">&nbsp;</div></td>
-
 
402
					<td><div id="nSeqSymbolBonus" class="boxMinus">&nbsp;</div></td>
-
 
403
				</tr>	
-
 
404
				<tr>
-
 
405
					<th colspan="6">Legend</th>
-
 
406
				</tr>
-
 
407
				<tr>
-
 
408
					<td colspan="6">
-
 
409
						<ul id="listLegend">
-
 
410
							<li><div class="exceed imgLegend">&nbsp;</div><span class="bold">Exceptional:</span> Exceeds minimum standards. Additional bonuses are applied.</li>
-
 
411
							<li><div class="pass imgLegend">&nbsp;</div><span class="bold">Sufficient:</span> Meets minimum standards. Additional bonuses are applied.</li>
-
 
412
							<li><div class="warn imgLegend">&nbsp;</div><span class="bold">Warning:</span> Advisory against employing bad practices. Overall score is reduced.</li>
-
 
413
							<li><div class="fail imgLegend">&nbsp;</div><span class="bold">Failure:</span> Does not meet the minimum standards. Overall score is reduced.</li>
-
 
414
						</ul>
-
 
415
					</td>
-
 
416
				</tr>
-
 
417
			</table>
-
 
418
		   	<table id="tablePwdNotes" cellpadding="5" cellspacing="1" border="0">
-
 
419
				<tr>
-
 
420
					<th>Quick Footnotes</th>
-
 
421
				</tr>
-
 
422
				<tr>
-
 
423
					<td>
-
 
424
						&bull; <strong>Flat:</strong> Rates that add/remove in non-changing increments.<br>
-
 
425
						&bull; <strong>Incr:</strong> Rates that add/remove in adjusting increments.<br>
-
 
426
						&bull; <strong>Cond:</strong> Rates that add/remove depending on additional factors.<br>
-
 
427
						&bull; <strong>Comp:</strong> Rates that are too complex to summarize. See source code for details.<br>
-
 
428
						&bull; <strong>n:</strong> Refers to the total number of occurrences.<br>
-
 
429
						&bull; <strong>len:</strong> Refers to the total password length.<br>
-
 
430
						&bull; Additional bonus scores are given for increased character variety.<br>
-
 
431
						&bull; Final score is a cumulative result of all bonuses minus deductions.<br>
-
 
432
						&bull; Final score is capped with a minimum of 0 and a maximum of 100.<br>
-
 
433
						&bull; Score and Complexity ratings are not conditional on meeting minimum requirements.<br>
-
 
434
					</td>
-
 
435
				</tr>
-
 
436
			</table>
-
 
437
		</div>
478
		</div>
-
 
479
	</div>
438
	</body>
480
	</body>
439
</html>
481
</html>