| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 | <?php/*V4.01 23 Oct 2003  (c) 2000-2005 John Lim (jlim@natsoft.com.my). All rights reserved.         Contributed by Ross Smith (adodb@netebb.com).   Released under both BSD license and Lesser GPL library license.  Whenever there is any discrepancy between the two licenses,  the BSD license will take precedence.	  Set tabs to 4 for best viewing.*/if (!function_exists('mcrypt_encrypt')) {	trigger_error('Mcrypt functions are not available', E_USER_ERROR);	return 0;}/** */class ADODB_Encrypt_MCrypt {	/**	 */	var $_cipher;	/**	 */	var $_mode;	/**	 */	var $_source;	/**	 */	function getCipher() {		return $this->_cipher;	}	/**	 */	function setCipher($cipher) {		$this->_cipher = $cipher;	}	/**	 */	function getMode() {		return $this->_mode;	}	/**	 */	function setMode($mode) {		$this->_mode = $mode;	}	/**	 */	function getSource() {		return $this->_source;	}	/**	 */	function setSource($source) {		$this->_source = $source;	}	/**	 */	function ADODB_Encrypt_MCrypt($cipher = null, $mode = null, $source = null) {		if (!$cipher) {			$cipher = MCRYPT_RIJNDAEL_256;		}		if (!$mode) {			$mode = MCRYPT_MODE_ECB;		}		if (!$source) {			$source = MCRYPT_RAND;		}		$this->_cipher = $cipher;		$this->_mode = $mode;		$this->_source = $source;	}	/**	 */	function write($data, $key) {		$iv_size = mcrypt_get_iv_size($this->_cipher, $this->_mode);		$iv = mcrypt_create_iv($iv_size, $this->_source);		return mcrypt_encrypt($this->_cipher, $key, $data, $this->_mode, $iv);	}	/**	 */	function read($data, $key) {		$iv_size = mcrypt_get_iv_size($this->_cipher, $this->_mode);		$iv = mcrypt_create_iv($iv_size, $this->_source);		$rv = mcrypt_decrypt($this->_cipher, $key, $data, $this->_mode, $iv);		return rtrim($rv, "\0");	}}return 1;?>
 |