Fix #3317 ... MCrypt sucks
diff --git a/system/libraries/Encryption.php b/system/libraries/Encryption.php
index fe8434c..2a28714 100644
--- a/system/libraries/Encryption.php
+++ b/system/libraries/Encryption.php
@@ -212,6 +212,7 @@
 			log_message('debug', "Encryption: Auto-configured driver '".$this->_driver."'.");
 		}
 
+		empty($params['cipher']) && $params['cipher'] = $this->_cipher;
 		empty($params['key']) OR $this->_key = $params['key'];
 		$this->{'_'.$this->_driver.'_initialize'}($params);
 		return $this;
diff --git a/tests/codeigniter/libraries/Encryption_test.php b/tests/codeigniter/libraries/Encryption_test.php
index f457fe3..cbcae31 100644
--- a/tests/codeigniter/libraries/Encryption_test.php
+++ b/tests/codeigniter/libraries/Encryption_test.php
@@ -155,15 +155,16 @@
 		);
 
 		$output = $this->encryption->__get_params($params);
-		unset($output['handle'], $params['raw_data']);
+		unset($output['handle'], $output['cipher'], $params['raw_data'], $params['cipher']);
 		$params['base64'] = FALSE;
 		$this->assertEquals($params, $output);
 
 		// HMAC disabled
 		unset($params['hmac_key'], $params['hmac_digest']);
 		$params['hmac'] = $params['raw_data'] = FALSE;
+		$params['cipher'] = 'aes-128';
 		$output = $this->encryption->__get_params($params);
-		unset($output['handle'], $params['hmac'], $params['raw_data']);
+		unset($output['handle'], $output['cipher'], $params['hmac'], $params['raw_data'], $params['cipher']);
 		$params['base64'] = TRUE;
 		$params['hmac_digest'] = $params['hmac_key'] = NULL;
 		$this->assertEquals($params, $output);
@@ -195,7 +196,7 @@
 		$this->assertEquals($message, $this->encryption->decrypt($this->encryption->encrypt($message)));
 
 		// Try DES in ECB mode, just for the sake of changing stuff
-		$this->encryption->initialize(array('cipher' => 'des', 'mode' => 'ecb'));
+		$this->encryption->initialize(array('cipher' => 'des', 'mode' => 'ecb', 'key' => substr($key, 0, 8)));
 		$this->assertEquals($message, $this->encryption->decrypt($this->encryption->encrypt($message)));
 	}