--- Classes/Controller/CheckoutController.php.old	2014-11-01 17:20:18.000000000 +0100
+++ Classes/Controller/CheckoutController.php	2014-11-01 17:20:08.000000000 +0100
@@ -1739,11 +1739,20 @@
 						&& $config['dontUseRandomPassword']
 						&& isset($this->sessionData['billing']['password'])
 					) {
-						$feuData['password'] = $this->sessionData['billing']['password'];
+						$cleartextPassword = $this->sessionData['billing']['password'];
 					} else {
-						$feuData['password'] = substr(uniqid(rand()), 0, 6);
+						$cleartextPassword = substr(uniqid(rand()), 0, 6);
 					}
 
+                    $saltedPassword = '';
+                    if (t3lib_extMgm::isLoaded('saltedpasswords') && tx_saltedpasswords_div::isUsageEnabled('FE')) {
+                        $objSalt = tx_saltedpasswords_salts_factory::getSaltingInstance(NULL);
+                        if (is_object($objSalt)) {
+                            $saltedPassword = $objSalt->getHashedPassword($cleartextPassword);
+                        }
+                    }
+                    $feuData['password'] = $saltedPassword != '' ? $saltedPassword : $cleartextPassword;                                            
+                    
 					$feuData['email'] = $this->sessionData['billing']['email'];
 					$feuData['name'] = $this->sessionData['billing']['name'] . ' ' . $this->sessionData['billing']['surname'];
 					$feuData['first_name'] = $this->sessionData['billing']['name'];
@@ -1767,7 +1776,7 @@
 							$hookObj->postProcessUserData($feuData, $this);
 						}
 					}
-
+                    $feuData['password'] = $cleartextPassword; // save cleartext pw so we can send it via mail to the user
 					$this->userData = $feuData;
 				}
 			}
