Streamable and for encryption added, CryptoHelper (a facade) rewritten to use streams
[core.git] / inc / classes / main / rng / class_RandomNumberGenerator.php
index 53ef6e76ac66efe223a8a2b7ae5502248f20e37f..27a3672817ce027c31f3cc2203e9b1539805c7a0 100644 (file)
@@ -98,12 +98,12 @@ class RandomNumberGenerator extends BaseFrameworkSystem {
                mt_srand((double) sqrt(microtime() * 100000000 * $this->extraNumber));
 
                // Set the server IP to cluster
-               $serverIp = "cluster";
+               $serverIp = 'cluster';
 
                // Do we have a single server?
                if ($this->getConfigInstance()->getConfigEntry('is_single_server') == 'Y') {
                        // Then use that IP for extra security
-                       $serverIp = getenv('SERVER_ADDR');
+                       $serverIp = $this->getConfigInstance()->getServerAddress();
                } // END - if
 
                // Yet-another fixed salt. This is not dependend on server software or date
@@ -174,6 +174,24 @@ class RandomNumberGenerator extends BaseFrameworkSystem {
        public final function getFixedSalt () {
                return $this->fixedSalt;
        }
+
+       /**
+        * Generates a key based on if we have extra (default) or fixed salt enabled
+        *
+        * @return      $key    The generated key for encrypion
+        */
+       public function generateKey () {
+               // Default is extra salt
+               $key = md5($this->getExtraSalt());
+
+               // Get key
+               if ($this->getConfigInstance()->getConfigEntry('crypt_fixed_salt') == 'Y') {
+                       $key = md5($this->getFixedSalt());
+               } // END - if
+
+               // Return it
+               return $key;
+       }
 }
 
 // [EOF]