diff options
| author | asiekierka <asiekierka@gmail.com> | 2012-12-22 17:38:49 +0100 |
|---|---|---|
| committer | asiekierka <asiekierka@gmail.com> | 2012-12-22 17:38:49 +0100 |
| commit | 549ecc200e16789f5b0cde8b38b0c4a70759da1f (patch) | |
| tree | f2f327373c1a5ffa19b234a047c2a6f9f423bb9d /inc/ic-encrypt.php | |
| parent | 547b97ade57ac710ea58275e073b02fd88aba745 (diff) | |
added imgcaptcha files
Diffstat (limited to 'inc/ic-encrypt.php')
| -rw-r--r-- | inc/ic-encrypt.php | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/inc/ic-encrypt.php b/inc/ic-encrypt.php new file mode 100644 index 00000000..c0f499bd --- /dev/null +++ b/inc/ic-encrypt.php @@ -0,0 +1,39 @@ +<?php +// Z internetow. +class Encryption { + var $skey = $config["imgcaptcha_key"]; + + public function safe_b64encode($string) { + $data = base64_encode($string); + $data = str_replace(array('+','/','='),array('-','_',''),$data); + return $data; + } + + public function safe_b64decode($string) { + $data = str_replace(array('-','_'),array('+','/'),$string); + $mod4 = strlen($data) % 4; + if ($mod4) { + $data .= substr('====', $mod4); + } + return base64_decode($data); + } + + public function encode($value){ + if(!$value){return false;} + $text = $value; + $iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB); + $iv = mcrypt_create_iv($iv_size, MCRYPT_RAND); + $crypttext = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $this->skey, $text, MCRYPT_MODE_ECB, $iv); + return trim($this->safe_b64encode($crypttext)); + } + + public function decode($value){ + if(!$value){return false;} + $crypttext = $this->safe_b64decode($value); + $iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB); + $iv = mcrypt_create_iv($iv_size, MCRYPT_RAND); + $decrypttext = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $this->skey, $crypttext, MCRYPT_MODE_ECB, $iv); + return trim($decrypttext); + } +} +?> |
