summaryrefslogtreecommitdiff
path: root/inc/ic-encrypt.php
diff options
context:
space:
mode:
authorasiekierka <asiekierka@gmail.com>2012-12-22 17:38:49 +0100
committerasiekierka <asiekierka@gmail.com>2012-12-22 17:38:49 +0100
commit549ecc200e16789f5b0cde8b38b0c4a70759da1f (patch)
treef2f327373c1a5ffa19b234a047c2a6f9f423bb9d /inc/ic-encrypt.php
parent547b97ade57ac710ea58275e073b02fd88aba745 (diff)
added imgcaptcha files
Diffstat (limited to 'inc/ic-encrypt.php')
-rw-r--r--inc/ic-encrypt.php39
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);
+ }
+}
+?>