Passed
Push — develop ( 6fb9ed...4c8ea7 )
by Pieter van der
01:18 queued 14s
created
library/tiqr/Tiqr/OATH/OCRA.php 1 patch
Spacing   +73 added lines, -73 removed lines patch added patch discarded remove patch
@@ -58,18 +58,18 @@  discard block
 block discarded – undo
58 58
     private static function _hexStr2Bytes(string $hex, int $maxBytes, string $parameterName) : string
59 59
     {
60 60
         $len = strlen($hex);
61
-        if ( ($len !== 0) && (! ctype_xdigit($hex)) ) {
61
+        if (($len !== 0) && (!ctype_xdigit($hex))) {
62 62
             throw new InvalidArgumentException("Parameter '$parameterName' contains non hex digits");
63 63
         }
64
-        if ( $len % 2 !== 0 ) {
64
+        if ($len % 2 !== 0) {
65 65
             throw new InvalidArgumentException("Parameter '$parameterName' contains odd number of hex digits");
66 66
         }
67
-        if ( $len > $maxBytes * 2) {
67
+        if ($len > $maxBytes * 2) {
68 68
             throw new InvalidArgumentException("Parameter '$parameterName' too long");
69 69
         }
70 70
         // hex2bin logs PHP warnings when $hex contains invalid characters or has uneven length. Because we
71 71
         // check for these conditions above hex2bin() should always be silent
72
-        $res=hex2bin($hex);
72
+        $res = hex2bin($hex);
73 73
         if (false === $res) {
74 74
             throw new InvalidArgumentException("Parameter '$parameterName' could not be decoded");
75 75
         }
@@ -122,72 +122,72 @@  discard block
 block discarded – undo
122 122
         $cryptoFunction = $components[1];
123 123
         $dataInput = strtolower($components[2]); // lower here so we can do case insensitive comparisons
124 124
         
125
-        if(stripos($cryptoFunction, "sha1")!==false)
125
+        if (stripos($cryptoFunction, "sha1") !== false)
126 126
             $crypto = "sha1";
127
-        if(stripos($cryptoFunction, "sha256")!==false)
127
+        if (stripos($cryptoFunction, "sha256") !== false)
128 128
             $crypto = "sha256";
129
-        if(stripos($cryptoFunction, "sha512")!==false)
129
+        if (stripos($cryptoFunction, "sha512") !== false)
130 130
             $crypto = "sha512";
131 131
         
132
-        $codeDigits = substr($cryptoFunction, strrpos($cryptoFunction, "-")+1);
132
+        $codeDigits = substr($cryptoFunction, strrpos($cryptoFunction, "-") + 1);
133 133
                 
134 134
         // The size of the byte array message to be encrypted
135 135
         // Counter
136
-        if($dataInput[0] == "c" ) {
136
+        if ($dataInput[0] == "c") {
137 137
             // Fix the length of the HEX string
138
-            while(strlen($counter) < 16)
139
-                $counter = "0" . $counter;
140
-            $counterLength=8;
138
+            while (strlen($counter) < 16)
139
+                $counter = "0".$counter;
140
+            $counterLength = 8;
141 141
         }
142 142
         // Question
143
-        if($dataInput[0] == "q" ||
144
-                stripos($dataInput, "-q")!==false) {
145
-            while(strlen($question) < 256)
146
-                $question = $question . "0";
147
-            $questionLength=128;
143
+        if ($dataInput[0] == "q" ||
144
+                stripos($dataInput, "-q") !== false) {
145
+            while (strlen($question) < 256)
146
+                $question = $question."0";
147
+            $questionLength = 128;
148 148
         }
149 149
 
150 150
         // Password
151
-        if(stripos($dataInput, "psha1")!==false) {
152
-            while(strlen($password) < 40)
153
-                $password = "0" . $password;
154
-            $passwordLength=20;
151
+        if (stripos($dataInput, "psha1") !== false) {
152
+            while (strlen($password) < 40)
153
+                $password = "0".$password;
154
+            $passwordLength = 20;
155 155
         }
156 156
     
157
-        if(stripos($dataInput, "psha256")!==false) {
158
-            while(strlen($password) < 64)
159
-                $password = "0" . $password;
160
-            $passwordLength=32;
157
+        if (stripos($dataInput, "psha256") !== false) {
158
+            while (strlen($password) < 64)
159
+                $password = "0".$password;
160
+            $passwordLength = 32;
161 161
         }
162 162
         
163
-        if(stripos($dataInput, "psha512")!==false) {
164
-            while(strlen($password) < 128)
165
-                $password = "0" . $password;
166
-            $passwordLength=64;
163
+        if (stripos($dataInput, "psha512") !== false) {
164
+            while (strlen($password) < 128)
165
+                $password = "0".$password;
166
+            $passwordLength = 64;
167 167
         }
168 168
         
169 169
         // sessionInformation
170
-        if(stripos($dataInput, "s064") !==false) {
171
-            while(strlen($sessionInformation) < 128)
172
-                $sessionInformation = "0" . $sessionInformation;
170
+        if (stripos($dataInput, "s064") !== false) {
171
+            while (strlen($sessionInformation) < 128)
172
+                $sessionInformation = "0".$sessionInformation;
173 173
 
174
-            $sessionInformationLength=64;
175
-        } else if(stripos($dataInput, "s128") !==false) {
176
-            while(strlen($sessionInformation) < 256)
177
-                $sessionInformation = "0" . $sessionInformation;
174
+            $sessionInformationLength = 64;
175
+        } else if (stripos($dataInput, "s128") !== false) {
176
+            while (strlen($sessionInformation) < 256)
177
+                $sessionInformation = "0".$sessionInformation;
178 178
         
179
-            $sessionInformationLength=128;
180
-        } else if(stripos($dataInput, "s256") !==false) {
181
-            while(strlen($sessionInformation) < 512)
182
-                $sessionInformation = "0" . $sessionInformation;
179
+            $sessionInformationLength = 128;
180
+        } else if (stripos($dataInput, "s256") !== false) {
181
+            while (strlen($sessionInformation) < 512)
182
+                $sessionInformation = "0".$sessionInformation;
183 183
         
184
-            $sessionInformationLength=256;
185
-        } else if(stripos($dataInput, "s512") !==false) {
186
-            while(strlen($sessionInformation) < 128)
187
-                $sessionInformation = "0" . $sessionInformation;
184
+            $sessionInformationLength = 256;
185
+        } else if (stripos($dataInput, "s512") !== false) {
186
+            while (strlen($sessionInformation) < 128)
187
+                $sessionInformation = "0".$sessionInformation;
188 188
         
189
-            $sessionInformationLength=64;
190
-        } else if (stripos($dataInput, "-s") !== false ) {
189
+            $sessionInformationLength = 64;
190
+        } else if (stripos($dataInput, "-s") !== false) {
191 191
             // deviation from spec. Officially 's' without a length indicator is not in the reference implementation.
192 192
             // RFC is ambigious. However we have supported this in Tiqr since day 1, so we continue to support it.
193 193
 
@@ -196,27 +196,27 @@  discard block
 block discarded – undo
196 196
             // to prevent matching the "s" in the password input e.g. "psha1".
197 197
             // [C] | QFxx | [PH | Snnn | TG] : Challenge-Response computation
198 198
             // [C] | QFxx | [PH | TG] : Plain Signature computation
199
-            while(strlen($sessionInformation) < 128)
200
-                $sessionInformation = "0" . $sessionInformation;
199
+            while (strlen($sessionInformation) < 128)
200
+                $sessionInformation = "0".$sessionInformation;
201 201
             
202
-            $sessionInformationLength=64;
202
+            $sessionInformationLength = 64;
203 203
         }
204 204
         
205 205
         
206 206
              
207 207
         // TimeStamp
208
-        if($dataInput[0] == "t" ||
208
+        if ($dataInput[0] == "t" ||
209 209
                 stripos($dataInput, "-t") !== false) {
210
-            while(strlen($timeStamp) < 16)
211
-                $timeStamp = "0" . $timeStamp;
212
-            $timeStampLength=8;
210
+            while (strlen($timeStamp) < 16)
211
+                $timeStamp = "0".$timeStamp;
212
+            $timeStampLength = 8;
213 213
         }
214 214
 
215 215
         // Put the bytes of "ocraSuite" parameters into the message
216 216
         
217
-        $msg = array_fill(0,$ocraSuiteLength+$counterLength+$questionLength+$passwordLength+$sessionInformationLength+$timeStampLength+1, 0);
217
+        $msg = array_fill(0, $ocraSuiteLength + $counterLength + $questionLength + $passwordLength + $sessionInformationLength + $timeStampLength + 1, 0);
218 218
                 
219
-        for($i=0;$i<strlen($ocraSuite);$i++) {
219
+        for ($i = 0; $i < strlen($ocraSuite); $i++) {
220 220
             $msg[$i] = $ocraSuite[$i];
221 221
         }
222 222
         
@@ -225,9 +225,9 @@  discard block
 block discarded – undo
225 225
 
226 226
         // Put the bytes of "Counter" to the message
227 227
         // Input is HEX encoded
228
-        if($counterLength > 0 ) {
228
+        if ($counterLength > 0) {
229 229
             $bArray = self::_hexStr2Bytes($counter, $counterLength, 'counter');
230
-            for ($i=0;$i<strlen($bArray);$i++) {
230
+            for ($i = 0; $i < strlen($bArray); $i++) {
231 231
                 $msg [$i + $ocraSuiteLength + 1] = $bArray[$i];
232 232
             }
233 233
         }
@@ -235,41 +235,41 @@  discard block
 block discarded – undo
235 235
 
236 236
         // Put the bytes of "question" to the message
237 237
         // Input is text encoded
238
-        if($questionLength > 0 ) {
238
+        if ($questionLength > 0) {
239 239
             $bArray = self::_hexStr2Bytes($question, $questionLength, 'question');
240
-            for ($i=0;$i<strlen($bArray);$i++) {
240
+            for ($i = 0; $i < strlen($bArray); $i++) {
241 241
                 $msg [$i + $ocraSuiteLength + 1 + $counterLength] = $bArray[$i];
242 242
             }
243 243
         }
244 244
 
245 245
         // Put the bytes of "password" to the message
246 246
         // Input is HEX encoded
247
-        if($passwordLength > 0){
247
+        if ($passwordLength > 0) {
248 248
             $bArray = self::_hexStr2Bytes($password, $passwordLength, 'password');
249
-            for ($i=0;$i<strlen($bArray);$i++) {
249
+            for ($i = 0; $i < strlen($bArray); $i++) {
250 250
                 $msg [$i + $ocraSuiteLength + 1 + $counterLength + $questionLength] = $bArray[$i];
251 251
             }
252 252
         }
253 253
 
254 254
         // Put the bytes of "sessionInformation" to the message
255 255
         // Input is HEX encoded
256
-        if($sessionInformationLength > 0 ){
256
+        if ($sessionInformationLength > 0) {
257 257
             $bArray = self::_hexStr2Bytes($sessionInformation, $sessionInformationLength, 'sessionInformation');
258
-            for ($i=0;$i<strlen($bArray);$i++) {
258
+            for ($i = 0; $i < strlen($bArray); $i++) {
259 259
                 $msg [$i + $ocraSuiteLength + 1 + $counterLength + $questionLength + $passwordLength] = $bArray[$i];
260 260
             }
261 261
         }
262 262
 
263 263
         // Put the bytes of "time" to the message
264 264
         // Input is HEX encoded value of minutes
265
-        if($timeStampLength > 0){
265
+        if ($timeStampLength > 0) {
266 266
             $bArray = self::_hexStr2Bytes($timeStamp, $timeStampLength, 'timeStamp');
267
-            for ($i=0;$i<strlen($bArray);$i++) {
267
+            for ($i = 0; $i < strlen($bArray); $i++) {
268 268
                 $msg [$i + $ocraSuiteLength + 1 + $counterLength + $questionLength + $passwordLength + $sessionInformationLength] = $bArray[$i];
269 269
             }
270 270
         }
271 271
         
272
-        $byteKey = self::_hexStr2Bytes($key, strlen($key)/2, 'key');
272
+        $byteKey = self::_hexStr2Bytes($key, strlen($key) / 2, 'key');
273 273
               
274 274
         $msg = implode("", $msg);
275 275
 
@@ -291,23 +291,23 @@  discard block
 block discarded – undo
291 291
     static function _oath_truncate(string $hash, int $length = 6) : string
292 292
     {
293 293
         // Convert to dec
294
-        foreach(str_split($hash,2) as $hex)
294
+        foreach (str_split($hash, 2) as $hex)
295 295
         {
296
-            $hmac_result[]=hexdec($hex);
296
+            $hmac_result[] = hexdec($hex);
297 297
         }
298 298
     
299 299
         // Find offset
300 300
         $offset = $hmac_result[count($hmac_result) - 1] & 0xf;
301 301
     
302 302
         $v = strval(
303
-            (($hmac_result[$offset+0] & 0x7f) << 24 ) |
304
-            (($hmac_result[$offset+1] & 0xff) << 16 ) |
305
-            (($hmac_result[$offset+2] & 0xff) << 8 ) |
306
-            ($hmac_result[$offset+3] & 0xff)
303
+            (($hmac_result[$offset + 0] & 0x7f) << 24) |
304
+            (($hmac_result[$offset + 1] & 0xff) << 16) |
305
+            (($hmac_result[$offset + 2] & 0xff) << 8) |
306
+            ($hmac_result[$offset + 3] & 0xff)
307 307
         );
308 308
 
309 309
         // Prefix truncated string with 0's to ensure it always has the required length
310
-        $v=str_pad($v, $length, "0", STR_PAD_LEFT);
310
+        $v = str_pad($v, $length, "0", STR_PAD_LEFT);
311 311
 
312 312
         $v = substr($v, strlen($v) - $length);
313 313
         return $v;
Please login to merge, or discard this patch.