diff --git a/include/upgrader/streams/core.sig b/include/upgrader/streams/core.sig
index 9493bef9b1c4c8ff7106c08c485ade25df021afe..417c5384577ee48f82f2d201e29d8be11d21a0d2 100644
--- a/include/upgrader/streams/core.sig
+++ b/include/upgrader/streams/core.sig
@@ -1 +1 @@
-8aeda901a16e08c3229f1ac6da568e02
+16fcef4a13d6475a5f8bfef462b548e2
diff --git a/include/upgrader/streams/core/8aeda901-16fcef4a.patch.sql b/include/upgrader/streams/core/8aeda901-16fcef4a.patch.sql
new file mode 100644
index 0000000000000000000000000000000000000000..c2ea1d2a9ab7a62cf513f99b6761ae2a59136174
--- /dev/null
+++ b/include/upgrader/streams/core/8aeda901-16fcef4a.patch.sql
@@ -0,0 +1,18 @@
+
+
+/**
+ * @version v1.7.1
+ * @signature 16fcef4a13d6475a5f8bfef462b548e2
+ *
+ *  Change email password field to varchar 255  ASCII
+ *
+ *
+ */
+
+ALTER TABLE  `%TABLE_PREFIX%email`
+    CHANGE  `userpass`  `userpass` VARCHAR( 255 ) CHARACTER SET ASCII COLLATE ascii_general_ci NOT NULL;
+
+-- Finished with patch
+UPDATE `%TABLE_PREFIX%config`
+    SET `value` = '16fcef4a13d6475a5f8bfef462b548e2'
+    WHERE `key` = 'schema_signature' AND `namespace` = 'core';
diff --git a/include/upgrader/streams/core/8aeda901-16fcef4a.task.php b/include/upgrader/streams/core/8aeda901-16fcef4a.task.php
new file mode 100644
index 0000000000000000000000000000000000000000..c2f1aceac420f0633905dd635a6b56b1588584a4
--- /dev/null
+++ b/include/upgrader/streams/core/8aeda901-16fcef4a.task.php
@@ -0,0 +1,38 @@
+<?php
+require_once INCLUDE_DIR.'class.migrater.php';
+
+class CryptoMigrater extends MigrationTask {
+    var $description = "Migrating encrypted password";
+    var $status ='Making the world a better place!';
+
+    function run() {
+
+        $sql='SELECT email_id, userpass, userid FROM '.EMAIL_TABLE
+            ." WHERE userpass <> ''";
+        if(($res=db_query($sql)) && db_num_rows($res)) {
+            while(list($id, $passwd, $username) = db_fetch_row($res)) {
+                if(!$passwd) continue;
+                $ciphertext = Crypto::encrypt(self::_decrypt($passwd, SECRET_SALT), SECRET_SALT, $username);
+                $sql='UPDATE '.EMAIL_TABLE
+                    .' SET userpass='.db_input($ciphertext)
+                    .' WHERE email_id='.db_input($id);
+                db_query($sql);
+            }
+        }
+    }
+
+    /*
+      XXX: This is not a  good way of decrypting data - use to descrypt old
+      data.
+     */
+    function _decrypt($text, $salt) {
+
+        if(!function_exists('mcrypt_encrypt') || !function_exists('mcrypt_decrypt'))
+            return $text;
+
+        return trim(mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $salt, base64_decode($text), MCRYPT_MODE_ECB,
+                        mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB), MCRYPT_RAND)));
+    }
+}
+return 'CryptoMigrater';
+?>
diff --git a/setup/inc/streams/core/install-mysql.sql b/setup/inc/streams/core/install-mysql.sql
index 9a5fe11c2235ac2afe72f0b4e24451806ef9518b..9359cfae9eb562c3209e755df3c1a4d1456f1948 100644
--- a/setup/inc/streams/core/install-mysql.sql
+++ b/setup/inc/streams/core/install-mysql.sql
@@ -92,7 +92,7 @@ CREATE TABLE `%TABLE_PREFIX%config` (
 INSERT INTO `%TABLE_PREFIX%config` (`namespace`, `key`, `value`) VALUES
   ('core', 'isonline', '0'),
   ('core', 'enable_daylight_saving', '0'),
-  ('core', 'staff_ip_binding', '1'),
+  ('core', 'staff_ip_binding', '0'),
   ('core', 'staff_max_logins', '4'),
   ('core', 'staff_login_timeout', '2'),
   ('core', 'staff_session_timeout', '30'),
@@ -221,7 +221,7 @@ CREATE TABLE `%TABLE_PREFIX%email` (
   `email` varchar(255) NOT NULL default '',
   `name` varchar(255) NOT NULL default '',
   `userid` varchar(255) NOT NULL,
-  `userpass` varchar(125) NOT NULL,
+  `userpass` varchar(255) collate ascii_general_ci NOT NULL,
   `mail_active` tinyint(1) NOT NULL default '0',
   `mail_host` varchar(255) NOT NULL,
   `mail_protocol` enum('POP','IMAP') NOT NULL default 'POP',