|
System | : | Linux MiraNet 3.0.0-14-generic-pae #23-Ubuntu SMP Mon Nov 21 22:07:10 UTC 2011 i686 |
Software | : | Apache. PHP/5.3.6-13ubuntu3.10 |
ID | : | uid=65534(nobody) gid=65534(nogroup) groups=65534(nogroup)
|
|
Safe Mode | : | OFF |
Open_Basedir | : | OFF |
Freespace | : | 24.9 GB of 70.42 GB (35.37%) |
|
MySQL: ON MSSQL: OFF Oracle: OFF PostgreSQL: OFF Curl: OFF Sockets: ON Fetch: OFF Wget: ON Perl: ON |
Disabled Functions: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,
|
[ System Info ]
[ Processes ]
[ SQL Manager ]
[ Eval ]
[ Encoder ]
[ Mailer ]
[ Back Connection ]
[ Backdoor Server ]
[ Kernel Exploit Search ]
[ MD5 Decrypter ]
[ Reverse IP ]
[ Kill Shell ]
[ FTP Brute-Force ]
|
|
/
http/
yalagina/
libraries/
joomla/
utilities/
- drwxr-xr-x
|
Viewing file: simplecrypt.php (4.69 KB) -rw-r--r--Select action/file-type:  ( +) |  ( +) |  ( +) | Code ( +) | Session ( +) |  ( +) | SDB ( +) |  ( +) |  ( +) |  ( +) |  ( +) |  ( +) |
<?php /** * @package Joomla.Platform * @subpackage Utilities * * @copyright Copyright (C) 2005 - 2012 Open Source Matters, Inc. All rights reserved. * @license GNU General Public License version 2 or later; see LICENSE */
defined('JPATH_PLATFORM') or die;
/** * JSimpleCrypt is a very simple encryption algorithm for encrypting/decrypting strings * * @package Joomla.Platform * @subpackage Utilities * @since 11.1 */ class JSimpleCrypt extends JObject { /** * Encryption/Decryption Key * * @var string */ protected $_key;
/** * Object Constructor takes an optional key to be used for encryption/decryption. If no key is given then the * secret word from the configuration object is used. * * @param string $key Optional encryption key * * @since 11.1 */ public function __construct($key = null) { if ($key) { $this->_key = (string) $key; } else { $conf = &JFactory::getConfig(); $this->_key = md5($conf->get('secret')); } }
/** * Decrypt a string * * @param string $s String to decrypt * * @return string * * @since 11.1 */ public function decrypt($s) { $ai = $this->_hexToIntArray($s); (string) $s1 = $this->_xorString($ai);
return $s1; }
/** * Encrypt a string * * @param string $s String to encrypt * * @return string * * @since 11.1 */ public function encrypt($s) { $ai = $this->_xorCharString($s); $s1 = '';
for ($i = 0, $count = count($ai); $i < $count; $i++) { $s1 = $s1 . $this->_intToHex((int) $ai[$i]); }
return $s1; }
/** * Convert hex to an integer * * @param string $s The hex string to convert. * @param integer $i The offset? * * @return integer * * @since 11.1 */ protected function _hexToInt($s, $i) { (int) $j = $i * 2; (string) $s1 = $s; (string) $c = substr($s1, $j, 1); // get the char at position $j, length 1 (string) $c1 = substr($s1, $j + 1, 1); // get the char at postion $j + 1, length 1 (int) $k = 0;
switch ($c) { case "A": $k += 160; break; case "B": $k += 176; break; case "C": $k += 192; break; case "D": $k += 208; break; case "E": $k += 224; break; case "F": $k += 240; break; case " ": $k += 0; break; default: (int) $k = $k + (16 * (int) $c); break; }
switch ($c1) { case "A": $k += 10; break; case "B": $k += 11; break; case "C": $k += 12; break; case "D": $k += 13; break; case "E": $k += 14; break; case "F": $k += 15; break; case " ": $k += 0; break; default: $k += (int) $c1; break; }
return $k; } /** * Convert hex to an array of integers * * @param string $s The hex string to convert to an integer array. * * @return array An array of integers. * * @since 11.1 */ protected function _hexToIntArray($s) { (string) $s1 = $s; (int) $i = strlen($s1); (int) $j = $i / 2; for ($l = 0; $l < $j; $l++) { (int) $k = $this->_hexToInt($s1, $l); $ai[$l] = $k; }
return $ai; }
/** * Convert character string to integer * * @param string $c The character to convert to an integer. * * @return integer * * @since 11.1 */ protected function _charToInt($c) { $ac[0] = $c;
return $ac; }
/** * XorString * * @param string $ai The string. * * @return string * * @since 11.1 */ protected function _xorString($ai) { $s = $this->_key; (int) $i = strlen($s); $ai1 = $ai; (int) $j = count($ai1); for ($i = 0; $i < $j; $i = strlen($s)) { $s = $s . $s; }
for ($k = 0; $k < $j; $k++) { (string) $c = substr($s, $k, 1); $ac[$k] = chr($ai1[$k] ^ ord($c)); }
(string) $s1 = implode('', $ac); return $s1; }
/** * Convert integer to hex * * @param integer $i An integer value to convert. * * @return string * * @since 11.1 */ protected function _intToHex($i) { (int) $j = (int) $i / 16; if ((int) $j == 0) { (string) $s = " "; } else { (string) $s = strtoupper(dechex($j)); } (int) $k = (int) $i - (int) $j * 16; (string) $s = $s . strtoupper(dechex($k));
return $s; }
/** * Use xor encryption * * @param string $s The string. * * @return array An array of integers * * @since 11.1 */ protected function _xorCharString($s) { $ac = preg_split('//', $s, -1, PREG_SPLIT_NO_EMPTY); (string) $s1 = $this->_key; (int) $i = strlen($s1); (int) $j = count($ac); for ($i = 0; $i < $j; $i = strlen($s1)) { $s1 = $s1 . $s1; }
for ($k = 0; $k < $j; $k++) { $c = substr($s1, $k, 1); $ai[$k] = ord($c) ^ ord($ac[$k]); }
return $ai; } }
|