Index: wp-includes/script-loader.php
===================================================================
--- wp-includes/script-loader.php	(revision 13595)
+++ wp-includes/script-loader.php	(working copy)
@@ -260,6 +260,7 @@
 			/* translators: password strength */
 			'good' => _x('Medium', 'password strength'),
 			'strong' => __('Strong'),
+			'mismatch' => __('Mismatch'),
 			'l10n_print_after' => 'try{convertEntities(pwsL10n);}catch(e){};'
 		) );
 
Index: wp-admin/js/password-strength-meter.dev.js
===================================================================
--- wp-admin/js/password-strength-meter.dev.js	(revision 13595)
+++ wp-admin/js/password-strength-meter.dev.js	(working copy)
@@ -1,19 +1,21 @@
 // Password strength meter
-function passwordStrength(password,username) {
-    var shortPass = 1, badPass = 2, goodPass = 3, strongPass = 4, symbolSize = 0, natLog, score;
+function passwordStrength(password1,username,password2) {
+	var shortPass = 1, badPass = 2, goodPass = 3, strongPass = 4, mismatch = 5, symbolSize = 0, natLog, score;
 
+	// password 1 != password 2
+	if ( (password1 != password2) && password2.length > 0) { return mismatch };
 	//password < 4
-    if (password.length < 4 ) { return shortPass };
+	if (password1.length < 4 ) { return shortPass };
 
-    //password == username
-    if (password.toLowerCase()==username.toLowerCase()) return badPass;
+	//password1 == username
+	if (password1.toLowerCase()==username.toLowerCase()) return badPass;
 
-	if (password.match(/[0-9]/)) symbolSize +=10;
-	if (password.match(/[a-z]/)) symbolSize +=26;
-	if (password.match(/[A-Z]/)) symbolSize +=26;
-	if (password.match(/[^a-zA-Z0-9]/)) symbolSize +=31;
+	if (password1.match(/[0-9]/)) symbolSize +=10;
+	if (password1.match(/[a-z]/)) symbolSize +=26;
+	if (password1.match(/[A-Z]/)) symbolSize +=26;
+	if (password1.match(/[^a-zA-Z0-9]/)) symbolSize +=31;
 
-	natLog = Math.log( Math.pow(symbolSize,password.length) );
+	natLog = Math.log( Math.pow(symbolSize,password1.length) );
 	score = natLog / Math.LN2;
 	if (score < 40 )  return badPass
 	if (score < 56 )  return goodPass
Index: wp-admin/js/user-profile.dev.js
===================================================================
--- wp-admin/js/user-profile.dev.js	(revision 13595)
+++ wp-admin/js/user-profile.dev.js	(working copy)
@@ -1,15 +1,15 @@
 (function($){
 
 	function check_pass_strength() {
-		var pass = $('#pass1').val(), user = $('#user_login').val(), strength;
+		var pass1 = $('#pass1').val(), user = $('#user_login').val(), pass2 = $('#pass2').val(), strength;
 
 		$('#pass-strength-result').removeClass('short bad good strong');
-		if ( ! pass ) {
+		if ( ! pass1 ) {
 			$('#pass-strength-result').html( pwsL10n.empty );
 			return;
 		}
 
-		strength = passwordStrength(pass, user);
+		strength = passwordStrength(pass1, user, pass2);
 
 		switch ( strength ) {
 			case 2:
@@ -21,6 +21,9 @@
 			case 4:
 				$('#pass-strength-result').addClass('strong').html( pwsL10n['strong'] );
 				break;
+			case 5:
+				$('#pass-strength-result').addClass('short').html( pwsL10n['mismatch'] );
+				break;
 			default:
 				$('#pass-strength-result').addClass('short').html( pwsL10n['short'] );
 		}
@@ -28,6 +31,7 @@
 
 	$(document).ready( function() {
 		$('#pass1').val('').keyup( check_pass_strength );
+		$('#pass2').val('').keyup( check_pass_strength );
 		$('.color-palette').click(function(){$(this).siblings('input[name=admin_color]').attr('checked', 'checked')});
 		$('#nickname').blur(function(){
 			var str = $(this).val() || $('#user_login').val();
Index: wp-admin/install.php
===================================================================
--- wp-admin/install.php	(revision 13595)
+++ wp-admin/install.php	(working copy)
@@ -239,7 +239,8 @@
  short: "<?php echo esc_js( __( 'Very weak' ) ); ?>",
  bad: "<?php echo esc_js( __( 'Weak' ) ); ?>",
  good: "<?php echo esc_js( __( 'Medium' ) ); ?>",
- strong: "<?php echo esc_js( __( 'Strong' ) ); ?>"
+ strong: "<?php echo esc_js( __( 'Strong' ) ); ?>",
+ mismatch: "<?php echo esc_js( __( 'Mismatch' ) ); ?>"
 };
 try{convertEntities(pwsL10n);}catch(e){};
 /* ]]> */
