|
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.81 GB of 70.42 GB (35.23%) |
|
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/
mail.1/
plugins/
enigma/
lib/
- drwxr-xr-x
|
Viewing file: enigma_key.php (3.65 KB) -rw-r--r--Select action/file-type:  ( +) |  ( +) |  ( +) | Code ( +) | Session ( +) |  ( +) | SDB ( +) |  ( +) |  ( +) |  ( +) |  ( +) |  ( +) |
<?php /* +-------------------------------------------------------------------------+ | Key class for the Enigma Plugin | | | | This program is free software; you can redistribute it and/or modify | | it under the terms of the GNU General Public License version 2 | | as published by the Free Software Foundation. | | | | This program is distributed in the hope that it will be useful, | | but WITHOUT ANY WARRANTY; without even the implied warranty of | | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | | GNU General Public License for more details. | | | | You should have received a copy of the GNU General Public License along | | with this program; if not, write to the Free Software Foundation, Inc., | | 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | | | +-------------------------------------------------------------------------+ | Author: Aleksander Machniak <alec@alec.pl> | +-------------------------------------------------------------------------+ */
class enigma_key { public $id; public $name; public $users = array(); public $subkeys = array();
const TYPE_UNKNOWN = 0; const TYPE_KEYPAIR = 1; const TYPE_PUBLIC = 2;
/** * Keys list sorting callback for usort() */ static function cmp($a, $b) { return strcmp($a->name, $b->name); }
/** * Returns key type */ function get_type() { if ($this->subkeys[0]->has_private) return enigma_key::TYPE_KEYPAIR; else if (!empty($this->subkeys[0])) return enigma_key::TYPE_PUBLIC;
return enigma_key::TYPE_UNKNOWN; }
/** * Returns true if all user IDs are revoked */ function is_revoked() { foreach ($this->subkeys as $subkey) if (!$subkey->revoked) return false;
return true; }
/** * Returns true if any user ID is valid */ function is_valid() { foreach ($this->users as $user) if ($user->valid) return true;
return false; } /** * Returns true if any of subkeys is not expired */ function is_expired() { $now = time(); foreach ($this->subkeys as $subkey) if (!$subkey->expires || $subkey->expires > $now) return true; return false; }
/** * Converts long ID or Fingerprint to short ID * Crypt_GPG uses internal, but e.g. Thunderbird's Enigmail displays short ID * * @param string Key ID or fingerprint * @return string Key short ID */ static function format_id($id) { // E.g. 04622F2089E037A5 => 89E037A5 return substr($id, -8); }
/** * Formats fingerprint string * * @param string Key fingerprint * * @return string Formatted fingerprint (with spaces) */ static function format_fingerprint($fingerprint) { if (!$fingerprint) return ''; $result = ''; for ($i=0; $i<40; $i++) { if ($i % 4 == 0) $result .= ' '; $result .= $fingerprint[$i]; } return $result; }
}
|