source: branches/comu-ver2/data/module/adodb/session/crypt.inc.php @ 18701

Revision 18701, 2.7 KB checked in by nanasess, 14 years ago (diff)

Copyright の更新(#601)

  • Property svn:eol-style set to LF
  • Property svn:keywords set to Id Revision Date
  • Property svn:mime-type set to text/x-httpd-php
Line 
1<?php
2//   Session Encryption by Ari Kuorikoski <ari.kuorikoski@finebyte.com>
3class MD5Crypt{
4        function keyED($txt,$encrypt_key)
5        {
6                $encrypt_key = md5($encrypt_key);
7                $ctr=0;
8                $tmp = "";
9                for ($i=0;$i<strlen($txt);$i++){
10                        if ($ctr==strlen($encrypt_key)) $ctr=0;
11                        $tmp.= substr($txt,$i,1) ^ substr($encrypt_key,$ctr,1);
12                        $ctr++;
13                }
14                return $tmp;
15        }
16
17        function Encrypt($txt,$key)
18        {
19                srand((double)microtime()*1000000);
20                $encrypt_key = md5(rand(0,32000));
21                $ctr=0;
22                $tmp = "";
23                for ($i=0;$i<strlen($txt);$i++)
24                {
25                if ($ctr==strlen($encrypt_key)) $ctr=0;
26                $tmp.= substr($encrypt_key,$ctr,1) .
27                (substr($txt,$i,1) ^ substr($encrypt_key,$ctr,1));
28                $ctr++;
29                }
30                return base64_encode($this->keyED($tmp,$key));
31        }
32
33        function Decrypt($txt,$key)
34        {
35                $txt = $this->keyED(base64_decode($txt),$key);
36                $tmp = "";
37                for ($i=0;$i<strlen($txt);$i++){
38                        $md5 = substr($txt,$i,1);
39                        $i++;
40                        $tmp.= (substr($txt,$i,1) ^ $md5);
41                }
42                return $tmp;
43        }
44
45        function RandPass()
46        {
47                $randomPassword = "";
48                srand((double)microtime()*1000000);
49                for($i=0;$i<8;$i++)
50                {
51                        $randnumber = rand(48,120);
52
53                        while (($randnumber >= 58 && $randnumber <= 64) || ($randnumber >= 91 && $randnumber <= 96))
54                        {
55                                $randnumber = rand(48,120);
56                        }
57
58                        $randomPassword .= chr($randnumber);
59                }
60                return $randomPassword;
61        }
62
63}
64
65
66class SHA1Crypt{
67
68        function keyED($txt,$encrypt_key)
69        {
70
71                $encrypt_key = sha1($encrypt_key);
72                $ctr=0;
73                $tmp = "";
74
75                for ($i=0;$i<strlen($txt);$i++){
76                        if ($ctr==strlen($encrypt_key)) $ctr=0;
77                        $tmp.= substr($txt,$i,1) ^ substr($encrypt_key,$ctr,1);
78                        $ctr++;
79                }
80                return $tmp;
81
82        }
83
84
85
86        function Encrypt($txt,$key)
87        {
88
89                srand((double)microtime()*1000000);
90                $encrypt_key = sha1(rand(0,32000));
91                $ctr=0;
92                $tmp = "";
93
94                for ($i=0;$i<strlen($txt);$i++)
95
96                {
97
98                if ($ctr==strlen($encrypt_key)) $ctr=0;
99
100                $tmp.= substr($encrypt_key,$ctr,1) .
101
102                (substr($txt,$i,1) ^ substr($encrypt_key,$ctr,1));
103
104                $ctr++;
105
106                }
107
108                return base64_encode($this->keyED($tmp,$key));
109
110        }
111
112
113
114        function Decrypt($txt,$key)
115        {
116
117                $txt = $this->keyED(base64_decode($txt),$key);
118
119                $tmp = "";
120
121                for ($i=0;$i<strlen($txt);$i++){
122
123                        $sha1 = substr($txt,$i,1);
124
125                        $i++;
126
127                        $tmp.= (substr($txt,$i,1) ^ $sha1);
128
129                }
130
131                return $tmp;
132        }
133
134
135
136        function RandPass()
137        {
138                $randomPassword = "";
139                srand((double)microtime()*1000000);
140
141                for($i=0;$i<8;$i++)
142                {
143
144                        $randnumber = rand(48,120);
145
146                        while (($randnumber >= 58 && $randnumber <= 64) || ($randnumber >= 91 && $randnumber <= 96))
147                        {
148                                $randnumber = rand(48,120);
149                        }
150
151                        $randomPassword .= chr($randnumber);
152                }
153
154                return $randomPassword;
155
156        }
157
158
159
160}
161?>
Note: See TracBrowser for help on using the repository browser.