Passed
Push — master ( 92fdad...63c666 )
by Pieter van der
04:05
created
library/tiqr/Tiqr/StateStorage/Pdo.php 2 patches
Spacing   +9 added lines, -9 removed lines patch added patch discarded remove patch
@@ -117,9 +117,9 @@  discard block
 block discarded – undo
117 117
      */
118 118
     private function cleanExpired(): void {
119 119
         try {
120
-            $sth = $this->handle->prepare("DELETE FROM " . $this->tablename . " WHERE `expire` < ? AND NOT `expire` = 0");
120
+            $sth = $this->handle->prepare("DELETE FROM ".$this->tablename." WHERE `expire` < ? AND NOT `expire` = 0");
121 121
             $sth->execute(array(time()));
122
-            $deletedRows=$sth->rowCount();
122
+            $deletedRows = $sth->rowCount();
123 123
             $this->logger->notice(
124 124
                 sprintf("Deleted %d expired keys", $deletedRows)
125 125
             );
@@ -135,12 +135,12 @@  discard block
 block discarded – undo
135 135
     /**
136 136
      * @see Tiqr_StateStorage_StateStorageInterface::setValue()
137 137
      */
138
-    public function setValue(string $key, $value, int $expire=0): void
138
+    public function setValue(string $key, $value, int $expire = 0): void
139 139
     {
140 140
         if (empty($key)) {
141 141
             throw new InvalidArgumentException('Empty key not allowed');
142 142
         }
143
-        if (((float) rand() /(float) getrandmax()) < $this->cleanupProbability) {
143
+        if (((float) rand() / (float) getrandmax()) < $this->cleanupProbability) {
144 144
             $this->cleanExpired();
145 145
         }
146 146
         // REPLACE INTO is mysql dialect. Supported by sqlite as well.
@@ -153,7 +153,7 @@  discard block
 block discarded – undo
153 153
 
154 154
         // $expire == 0 means never expire
155 155
         if ($expire != 0) {
156
-            $expire+=time();    // Store unix timestamp after which the key expires
156
+            $expire += time(); // Store unix timestamp after which the key expires
157 157
         }
158 158
         try {
159 159
             $sth->execute(array(serialize($value), $expire, $key));
@@ -176,7 +176,7 @@  discard block
 block discarded – undo
176 176
             throw new InvalidArgumentException('Empty key not allowed');
177 177
         }
178 178
         try {
179
-            $sth = $this->handle->prepare("DELETE FROM " . $this->tablename . " WHERE `key` = ?");
179
+            $sth = $this->handle->prepare("DELETE FROM ".$this->tablename." WHERE `key` = ?");
180 180
             $sth->execute(array($key));
181 181
         }
182 182
         catch (Exception $e) {
@@ -206,7 +206,7 @@  discard block
 block discarded – undo
206 206
         }
207 207
 
208 208
         try {
209
-            $sth = $this->handle->prepare('SELECT `value` FROM ' . $this->tablename . ' WHERE `key` = ? AND (`expire` >= ? OR `expire` = 0)');
209
+            $sth = $this->handle->prepare('SELECT `value` FROM '.$this->tablename.' WHERE `key` = ? AND (`expire` >= ? OR `expire` = 0)');
210 210
             $sth->execute(array($key, time()));
211 211
         }
212 212
         catch (Exception $e) {
@@ -220,9 +220,9 @@  discard block
 block discarded – undo
220 220
         if (false === $result) {
221 221
             // Occurs normally
222 222
             $this->logger->info(sprintf('getValue: Key "%s" not found in PDO StateStorage', $key));
223
-            return NULL;    // Key not found
223
+            return NULL; // Key not found
224 224
         }
225
-        $result=unserialize($result, array('allowed_classes' => false));
225
+        $result = unserialize($result, array('allowed_classes' => false));
226 226
         if (false === $result) {
227 227
             throw new RuntimeException(sprintf('getValue: unserialize error for key "%s" in PDO StateStorage', $key));
228 228
         }
Please login to merge, or discard this patch.
Braces   +4 added lines, -8 removed lines patch added patch discarded remove patch
@@ -123,8 +123,7 @@  discard block
 block discarded – undo
123 123
             $this->logger->notice(
124 124
                 sprintf("Deleted %d expired keys", $deletedRows)
125 125
             );
126
-        }
127
-        catch (Exception $e) {
126
+        } catch (Exception $e) {
128 127
             $this->logger->error(
129 128
                 sprintf("Deleting expired keys failed: %s", $e->getMessage()),
130 129
                 array('exception', $e)
@@ -157,8 +156,7 @@  discard block
 block discarded – undo
157 156
         }
158 157
         try {
159 158
             $sth->execute(array(serialize($value), $expire, $key));
160
-        }
161
-        catch (Exception $e) {
159
+        } catch (Exception $e) {
162 160
             $this->logger->error(
163 161
                 sprintf('Unable to store key "%s" in PDO StateStorage', $key),
164 162
                 array('exception' => $e)
@@ -178,8 +176,7 @@  discard block
 block discarded – undo
178 176
         try {
179 177
             $sth = $this->handle->prepare("DELETE FROM " . $this->tablename . " WHERE `key` = ?");
180 178
             $sth->execute(array($key));
181
-        }
182
-        catch (Exception $e) {
179
+        } catch (Exception $e) {
183 180
             $this->logger->error(
184 181
                 sprintf('Error deleting key "%s" from PDO StateStorage', $key),
185 182
                 array('exception' => $e)
@@ -208,8 +205,7 @@  discard block
 block discarded – undo
208 205
         try {
209 206
             $sth = $this->handle->prepare('SELECT `value` FROM ' . $this->tablename . ' WHERE `key` = ? AND (`expire` >= ? OR `expire` = 0)');
210 207
             $sth->execute(array($key, time()));
211
-        }
212
-        catch (Exception $e) {
208
+        } catch (Exception $e) {
213 209
             $this->logger->error(
214 210
                 sprintf('Error getting value for key "%s" from PDO StateStorage', $key),
215 211
                 array('exception' => $e)
Please login to merge, or discard this patch.
library/tiqr/Tiqr/UserSecretStorage/UserSecretStorageTrait.php 2 patches
Indentation   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -54,7 +54,7 @@
 block discarded – undo
54 54
         if ($prefix === $this->encryption->get_type()) {
55 55
             // Decrypt the secret if it is prefixed with the current encryption type
56 56
             // Remove the encryption type prefix before decrypting
57
-           return $this->encryption->decrypt( substr($encryptedSecret, $pos+1) );
57
+            return $this->encryption->decrypt( substr($encryptedSecret, $pos+1) );
58 58
         }
59 59
 
60 60
         // Check the decryption array for the encryption type to see if there is an encryption
Please login to merge, or discard this patch.
Spacing   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -54,13 +54,13 @@  discard block
 block discarded – undo
54 54
         if ($prefix === $this->encryption->get_type()) {
55 55
             // Decrypt the secret if it is prefixed with the current encryption type
56 56
             // Remove the encryption type prefix before decrypting
57
-           return $this->encryption->decrypt( substr($encryptedSecret, $pos+1) );
57
+           return $this->encryption->decrypt(substr($encryptedSecret, $pos + 1));
58 58
         }
59 59
 
60 60
         // Check the decryption array for the encryption type to see if there is an encryption
61 61
         // instance defined for it. If so, use that to decrypt the secret.
62 62
         if (isset($this->decryption[$prefix])) {
63
-            return $this->decryption[$prefix]->decrypt( substr($encryptedSecret, $pos+1) );
63
+            return $this->decryption[$prefix]->decrypt(substr($encryptedSecret, $pos + 1));
64 64
         }
65 65
 
66 66
         $this->logger->error("Secret for user '$userId' is encrypted with unsupported encryption type '$prefix'");
@@ -77,6 +77,6 @@  discard block
 block discarded – undo
77 77
     {
78 78
         $encryptedSecret = $this->encryption->encrypt($secret);
79 79
         // Prefix the user secret with the encryption type
80
-        $this->setUserSecret($userId, $this->encryption->get_type() . ':' . $encryptedSecret);
80
+        $this->setUserSecret($userId, $this->encryption->get_type().':'.$encryptedSecret);
81 81
     }
82 82
 }
Please login to merge, or discard this patch.
library/tiqr/Tiqr/UserSecretStorage/Encryption.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -38,7 +38,7 @@
 block discarded – undo
38 38
      *
39 39
      * @return Tiqr_UserSecretStorage_Encryption_Interface
40 40
      */
41
-    public static function getEncryption(LoggerInterface $logger, string $type="dummy", array $options=array()): Tiqr_UserSecretStorage_Encryption_Interface
41
+    public static function getEncryption(LoggerInterface $logger, string $type = "dummy", array $options = array()): Tiqr_UserSecretStorage_Encryption_Interface
42 42
     {
43 43
         $instance = null;
44 44
         $logger->info(sprintf('Using "%s" as UserSecretStorage encryption type', $type));
Please login to merge, or discard this patch.
library/tiqr/Tiqr/UserSecretStorage/Encryption/OpenSSL.php 2 patches
Indentation   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -160,7 +160,7 @@
 block discarded – undo
160 160
     }
161 161
     
162 162
     /**
163
-      * Decrypts the given data.
163
+     * Decrypts the given data.
164 164
      *
165 165
      * @param string $data Data to decrypt.
166 166
      * @return string decrypted data
Please login to merge, or discard this patch.
Spacing   +22 added lines, -22 removed lines patch added patch discarded remove patch
@@ -48,22 +48,22 @@  discard block
 block discarded – undo
48 48
     */
49 49
 
50 50
     private $_supportedCiphers = [
51
-        'aes-128-cbc' => [ 'tag' => false, 'key' => 16 ],
52
-        'aes-128-gcm' => [ 'tag' => true, 'key' => 16 ],
53
-        'aes-192-cbc' => [ 'tag' => false, 'key' => 24 ],
54
-        'aes-192-gcm' => [ 'tag' => true, 'key' => 24 ],
55
-        'aes-256-cbc' => [ 'tag' => false, 'key' => 32 ],
56
-        'aes-256-gcm' => [ 'tag' => true, 'key' => 32 ],
57
-        'chacha20' => [ 'tag' => false, 'key' => 32 ],
58
-        'camellia-128-cbc' => [ 'tag' => false, 'key' => 16 ],
59
-        'camellia-192-cbc' => [ 'tag' => false, 'key' => 24 ],
60
-        'camellia-256-cbc' => [ 'tag' => false, 'key' => 32 ],
61
-        'aria-128-cbc' => [ 'tag' => false, 'key' => 16 ],
62
-        'aria-128-gcm' => [ 'tag' => true, 'key' => 16 ],
63
-        'aria-192-cbc' => [ 'tag' => false, 'key' => 24 ],
64
-        'aria-192-gcm' => [ 'tag' => true, 'key' => 24 ],
65
-        'aria-256-cbc' => [ 'tag' => false, 'key' => 32 ],
66
-        'aria-256-gcm' => [ 'tag' => true, 'key' => 32 ],
51
+        'aes-128-cbc' => ['tag' => false, 'key' => 16],
52
+        'aes-128-gcm' => ['tag' => true, 'key' => 16],
53
+        'aes-192-cbc' => ['tag' => false, 'key' => 24],
54
+        'aes-192-gcm' => ['tag' => true, 'key' => 24],
55
+        'aes-256-cbc' => ['tag' => false, 'key' => 32],
56
+        'aes-256-gcm' => ['tag' => true, 'key' => 32],
57
+        'chacha20' => ['tag' => false, 'key' => 32],
58
+        'camellia-128-cbc' => ['tag' => false, 'key' => 16],
59
+        'camellia-192-cbc' => ['tag' => false, 'key' => 24],
60
+        'camellia-256-cbc' => ['tag' => false, 'key' => 32],
61
+        'aria-128-cbc' => ['tag' => false, 'key' => 16],
62
+        'aria-128-gcm' => ['tag' => true, 'key' => 16],
63
+        'aria-192-cbc' => ['tag' => false, 'key' => 24],
64
+        'aria-192-gcm' => ['tag' => true, 'key' => 24],
65
+        'aria-256-cbc' => ['tag' => false, 'key' => 32],
66
+        'aria-256-gcm' => ['tag' => true, 'key' => 32],
67 67
     ];
68 68
 
69 69
     /**
@@ -136,12 +136,12 @@  discard block
 block discarded – undo
136 136
         // A longer key is not a problem, but could indicate a configuration error
137 137
         $key_length = $this->_supportedCiphers[$this->_cipher]['key'];
138 138
         if (strlen($key) != $key_length) {
139
-            throw new RuntimeException("Invalid length of key with key_id '{$this->_key_id}' used with cipher '{$this->_cipher}', expected {$key_length} bytes, got " . strlen($key) . " bytes");
139
+            throw new RuntimeException("Invalid length of key with key_id '{$this->_key_id}' used with cipher '{$this->_cipher}', expected {$key_length} bytes, got ".strlen($key)." bytes");
140 140
         }
141 141
 
142 142
         // openssl_encrypt returns the ciphertext as a base64 encoded string, so we don't need to encode it again
143 143
         // The tag is returned as a binary string, but only if the cipher requires a tag
144
-        $tag='';
144
+        $tag = '';
145 145
         if ($this->_supportedCiphers[$this->_cipher]['tag']) {
146 146
             $encrypted = openssl_encrypt($data, $this->_cipher, $key, 0, $iv, $tag, '', 16);
147 147
         } else {
@@ -153,7 +153,7 @@  discard block
 block discarded – undo
153 153
         $tag = $this->_supportedCiphers[$this->_cipher]['tag'] ? $tag : '';
154 154
         // Return the encoded ciphertext, including the IV, tag and cipher
155 155
         // <cipher>:<key_id>:iv<>:<tag>:<ciphertext>
156
-        $encoded = $this->_cipher . ":" . $this->_key_id . ":" . base64_encode($iv) . ":" . base64_encode($tag) . ":" . $encrypted;
156
+        $encoded = $this->_cipher.":".$this->_key_id.":".base64_encode($iv).":".base64_encode($tag).":".$encrypted;
157 157
 
158 158
         return $encoded;
159 159
     }
@@ -192,19 +192,19 @@  discard block
 block discarded – undo
192 192
         }
193 193
 
194 194
         // IV
195
-        $iv = base64_decode($split_data[2],true);
195
+        $iv = base64_decode($split_data[2], true);
196 196
         if ($iv === false) {
197 197
             throw new RuntimeException("Error decoding IV");
198 198
         }
199 199
 
200 200
         // Tag
201
-        $tag = base64_decode($split_data[3],true);
201
+        $tag = base64_decode($split_data[3], true);
202 202
         if ($tag === false) {
203 203
             throw new RuntimeException("Error decoding tag");
204 204
         }
205 205
         $ciphertext = $split_data[4];
206 206
 
207
-        $plaintext=openssl_decrypt($ciphertext, $cipher, $key, 0, $iv, $tag);
207
+        $plaintext = openssl_decrypt($ciphertext, $cipher, $key, 0, $iv, $tag);
208 208
         if ($plaintext === false) {
209 209
             throw new RuntimeException("Error decrypting data");
210 210
         }
Please login to merge, or discard this patch.
library/tiqr/Tiqr/UserSecretStorage.php 1 patch
Indentation   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -97,7 +97,7 @@
 block discarded – undo
97 97
      *         ),
98 98
      *     )
99 99
      * );
100
- *
100
+     *
101 101
      *
102 102
      * @return Tiqr_UserSecretStorage_Interface
103 103
      * @throws RuntimeException If an unknown type is requested.
Please login to merge, or discard this patch.
library/tiqr/Tiqr/DeviceStorage/TokenExchange.php 1 patch
Spacing   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -40,7 +40,7 @@  discard block
 block discarded – undo
40 40
     {
41 41
         $url = $this->_options["url"]."?appId=".$this->_options["appid"];
42 42
         
43
-        $url.= "&notificationToken=".$notificationToken;
43
+        $url .= "&notificationToken=".$notificationToken;
44 44
 
45 45
         $ch = curl_init();
46 46
 
@@ -53,12 +53,12 @@  discard block
 block discarded – undo
53 53
         $output = curl_exec($ch);
54 54
         curl_close($ch);
55 55
 
56
-        if (stripos($output, "not found")!==false) {
56
+        if (stripos($output, "not found") !== false) {
57 57
             $this->logger->error('Token Exchange failed and responded with: not found', ['full output' => $output]);
58 58
             return false;
59 59
         }
60 60
 
61
-        if (stripos($output, "error")!==false) {
61
+        if (stripos($output, "error") !== false) {
62 62
             $this->logger->error('Token Exchange failed and responded with: error', ['full output' => $output]);
63 63
             return false;
64 64
         }
Please login to merge, or discard this patch.
library/tiqr/Tiqr/Message/FCM.php 1 patch
Spacing   +9 added lines, -9 removed lines patch added patch discarded remove patch
@@ -49,7 +49,7 @@  discard block
 block discarded – undo
49 49
     /**
50 50
      * @throws Tiqr_Message_Exception_SendFailure
51 51
      */
52
-    private function getGoogleAccessToken($credentialsFile, $cacheTokens, $tokenCacheDir )
52
+    private function getGoogleAccessToken($credentialsFile, $cacheTokens, $tokenCacheDir)
53 53
     {
54 54
         $client = new Google_Client();
55 55
         $client->setLogger($this->logger);
@@ -61,8 +61,8 @@  discard block
 block discarded – undo
61 61
             $pool = new FilesystemCachePool($filesystem);
62 62
 
63 63
             //set up a callback to log token refresh
64
-            $logger=$this->logger;
65
-            $tokenCallback = function ($cacheKey, $accessToken) use ($logger) {
64
+            $logger = $this->logger;
65
+            $tokenCallback = function($cacheKey, $accessToken) use ($logger) {
66 66
                 $logger->info(sprintf('New access token received at cache key %s', $cacheKey));
67 67
             };
68 68
             $client->setTokenCallback($tokenCallback);
@@ -94,9 +94,9 @@  discard block
 block discarded – undo
94 94
      * @param  $retry           boolean is this a 2nd attempt
95 95
      * @throws Tiqr_Message_Exception_SendFailure
96 96
      */
97
-    private function _sendFirebase(string $deviceToken, string $alert, string $challenge, string $projectId, string $credentialsFile, bool $cacheTokens, string $tokenCacheDir, bool $retry=false)
97
+    private function _sendFirebase(string $deviceToken, string $alert, string $challenge, string $projectId, string $credentialsFile, bool $cacheTokens, string $tokenCacheDir, bool $retry = false)
98 98
     {
99
-        $apiurl = sprintf('https://fcm.googleapis.com/v1/projects/%s/messages:send',$projectId);
99
+        $apiurl = sprintf('https://fcm.googleapis.com/v1/projects/%s/messages:send', $projectId);
100 100
 
101 101
         $fields = [
102 102
             'message' => [
@@ -113,7 +113,7 @@  discard block
 block discarded – undo
113 113
 
114 114
         try {
115 115
             $headers = array(
116
-                'Authorization: Bearer ' . $this->getGoogleAccessToken($credentialsFile, $cacheTokens, $tokenCacheDir),
116
+                'Authorization: Bearer '.$this->getGoogleAccessToken($credentialsFile, $cacheTokens, $tokenCacheDir),
117 117
                 'Content-Type: application/json',
118 118
             );
119 119
         } catch (\Google\Exception $e) {
@@ -137,13 +137,13 @@  discard block
 block discarded – undo
137 137
         }
138 138
 
139 139
         if (!empty($errors)) {
140
-            throw new Tiqr_Message_Exception_SendFailure("Http error occurred: ". $errors, true);
140
+            throw new Tiqr_Message_Exception_SendFailure("Http error occurred: ".$errors, true);
141 141
         }
142 142
 
143 143
         // Wait and retry once in case of a 502 Bad Gateway error
144 144
         if ($statusCode === 502 && !($retry)) {
145 145
             sleep(2);
146
-            $this->_sendFirebase($deviceToken, $alert, $challenge, $projectId, $credentialsFile,  $cacheTokens,  $tokenCacheDir, true);
146
+            $this->_sendFirebase($deviceToken, $alert, $challenge, $projectId, $credentialsFile, $cacheTokens, $tokenCacheDir, true);
147 147
             return;
148 148
         }
149 149
 
@@ -154,7 +154,7 @@  discard block
 block discarded – undo
154 154
         // handle errors, ignoring registration_id's
155 155
         $response = json_decode($result, true);
156 156
         foreach ($response as $k => $v) {
157
-            if ($k=="error") {
157
+            if ($k == "error") {
158 158
                 throw new Tiqr_Message_Exception_SendFailure(sprintf("Error in FCM response: %s", $result), true);
159 159
             }
160 160
         }
Please login to merge, or discard this patch.
library/tiqr/Tiqr/UserStorage/Pdo.php 1 patch
Indentation   -2 removed lines patch added patch discarded remove patch
@@ -30,13 +30,11 @@
 block discarded – undo
30 30
     notificationtype varchar(10),
31 31
     notificationaddress varchar(256)
32 32
 );
33
-
34 33
  *
35 34
  * In version 3.0 the format of the tmpblocktimestamp was changed from a datetime format to an integer.
36 35
  * Because it holds a unix timestamp a 64-bit (8-byte) integer. To upgrade the user table to the new format use:
37 36
 
38 37
 ALTER TABLE user MODIFY tmpblocktimestamp BIGINT;
39
-
40 38
  */
41 39
 
42 40
 use Psr\Log\LoggerInterface;
Please login to merge, or discard this patch.
library/tiqr/Tiqr/OATH/OCRA.php 2 patches
Spacing   +75 added lines, -75 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
         }
@@ -125,83 +125,83 @@  discard block
 block discarded – undo
125 125
         $cryptoFunction = $components[1];
126 126
         $dataInput = strtolower($components[2]); // lower here so we can do case insensitive comparisons
127 127
 
128
-        if(stripos($cryptoFunction, "hotp-sha1")!==false)
128
+        if (stripos($cryptoFunction, "hotp-sha1") !== false)
129 129
             $crypto = "sha1";
130
-        elseif(stripos($cryptoFunction, "hotp-sha256")!==false)
130
+        elseif (stripos($cryptoFunction, "hotp-sha256") !== false)
131 131
             $crypto = "sha256";
132
-        elseif(stripos($cryptoFunction, "hotp-sha512")!==false)
132
+        elseif (stripos($cryptoFunction, "hotp-sha512") !== false)
133 133
             $crypto = "sha512";
134 134
         else {
135 135
             throw new InvalidArgumentException('Unsupported OCRA CryptoFunction');
136 136
         }
137 137
 
138 138
         // The Cryptofucntion must ha a truncation of 0, 4-10
139
-        $codeDigits_str = substr($cryptoFunction, strrpos($cryptoFunction, "-")+1);
140
-        if (! ctype_digit($codeDigits_str)) {
139
+        $codeDigits_str = substr($cryptoFunction, strrpos($cryptoFunction, "-") + 1);
140
+        if (!ctype_digit($codeDigits_str)) {
141 141
             throw new InvalidArgumentException('Unsupported OCRA CryptoFunction');
142 142
         }
143
-        $codeDigits = (integer)$codeDigits_str;
143
+        $codeDigits = (integer) $codeDigits_str;
144 144
         if (($codeDigits != 0) && (($codeDigits < 4) || ($codeDigits > 10))) {
145 145
             throw new InvalidArgumentException('Unsupported OCRA CryptoFunction');
146 146
         }
147 147
                 
148 148
         // The size of the byte array message to be encrypted
149 149
         // Counter
150
-        if($dataInput[0] == "c" ) {
150
+        if ($dataInput[0] == "c") {
151 151
             // Fix the length of the HEX string
152
-            while(strlen($counter) < 16)
153
-                $counter = "0" . $counter;
154
-            $counterLength=8;
152
+            while (strlen($counter) < 16)
153
+                $counter = "0".$counter;
154
+            $counterLength = 8;
155 155
         }
156 156
         // Question
157
-        if($dataInput[0] == "q" ||
158
-                stripos($dataInput, "-q")!==false) {
159
-            while(strlen($question) < 256)
160
-                $question = $question . "0";
161
-            $questionLength=128;
157
+        if ($dataInput[0] == "q" ||
158
+                stripos($dataInput, "-q") !== false) {
159
+            while (strlen($question) < 256)
160
+                $question = $question."0";
161
+            $questionLength = 128;
162 162
         }
163 163
 
164 164
         // Password
165
-        if(stripos($dataInput, "psha1")!==false) {
166
-            while(strlen($password) < 40)
167
-                $password = "0" . $password;
168
-            $passwordLength=20;
165
+        if (stripos($dataInput, "psha1") !== false) {
166
+            while (strlen($password) < 40)
167
+                $password = "0".$password;
168
+            $passwordLength = 20;
169 169
         }
170 170
     
171
-        if(stripos($dataInput, "psha256")!==false) {
172
-            while(strlen($password) < 64)
173
-                $password = "0" . $password;
174
-            $passwordLength=32;
171
+        if (stripos($dataInput, "psha256") !== false) {
172
+            while (strlen($password) < 64)
173
+                $password = "0".$password;
174
+            $passwordLength = 32;
175 175
         }
176 176
         
177
-        if(stripos($dataInput, "psha512")!==false) {
178
-            while(strlen($password) < 128)
179
-                $password = "0" . $password;
180
-            $passwordLength=64;
177
+        if (stripos($dataInput, "psha512") !== false) {
178
+            while (strlen($password) < 128)
179
+                $password = "0".$password;
180
+            $passwordLength = 64;
181 181
         }
182 182
         
183 183
         // sessionInformation
184
-        if(stripos($dataInput, "s064") !==false) {
185
-            while(strlen($sessionInformation) < 128)
186
-                $sessionInformation = "0" . $sessionInformation;
184
+        if (stripos($dataInput, "s064") !== false) {
185
+            while (strlen($sessionInformation) < 128)
186
+                $sessionInformation = "0".$sessionInformation;
187 187
 
188
-            $sessionInformationLength=64;
189
-        } else if(stripos($dataInput, "s128") !==false) {
190
-            while(strlen($sessionInformation) < 256)
191
-                $sessionInformation = "0" . $sessionInformation;
188
+            $sessionInformationLength = 64;
189
+        } else if (stripos($dataInput, "s128") !== false) {
190
+            while (strlen($sessionInformation) < 256)
191
+                $sessionInformation = "0".$sessionInformation;
192 192
         
193
-            $sessionInformationLength=128;
194
-        } else if(stripos($dataInput, "s256") !==false) {
195
-            while(strlen($sessionInformation) < 512)
196
-                $sessionInformation = "0" . $sessionInformation;
193
+            $sessionInformationLength = 128;
194
+        } else if (stripos($dataInput, "s256") !== false) {
195
+            while (strlen($sessionInformation) < 512)
196
+                $sessionInformation = "0".$sessionInformation;
197 197
         
198
-            $sessionInformationLength=256;
199
-        } else if(stripos($dataInput, "s512") !==false) {
200
-            while(strlen($sessionInformation) < 128)
201
-                $sessionInformation = "0" . $sessionInformation;
198
+            $sessionInformationLength = 256;
199
+        } else if (stripos($dataInput, "s512") !== false) {
200
+            while (strlen($sessionInformation) < 128)
201
+                $sessionInformation = "0".$sessionInformation;
202 202
         
203
-            $sessionInformationLength=64;
204
-        } else if (stripos($dataInput, "-s") !== false ) {
203
+            $sessionInformationLength = 64;
204
+        } else if (stripos($dataInput, "-s") !== false) {
205 205
             // deviation from spec. Officially 's' without a length indicator is not in the reference implementation.
206 206
             // RFC is ambigious. However we have supported this in Tiqr since day 1, so we continue to support it.
207 207
 
@@ -210,27 +210,27 @@  discard block
 block discarded – undo
210 210
             // to prevent matching the "s" in the password input e.g. "psha1".
211 211
             // [C] | QFxx | [PH | Snnn | TG] : Challenge-Response computation
212 212
             // [C] | QFxx | [PH | TG] : Plain Signature computation
213
-            while(strlen($sessionInformation) < 128)
214
-                $sessionInformation = "0" . $sessionInformation;
213
+            while (strlen($sessionInformation) < 128)
214
+                $sessionInformation = "0".$sessionInformation;
215 215
             
216
-            $sessionInformationLength=64;
216
+            $sessionInformationLength = 64;
217 217
         }
218 218
         
219 219
         
220 220
              
221 221
         // TimeStamp
222
-        if($dataInput[0] == "t" ||
222
+        if ($dataInput[0] == "t" ||
223 223
                 stripos($dataInput, "-t") !== false) {
224
-            while(strlen($timeStamp) < 16)
225
-                $timeStamp = "0" . $timeStamp;
226
-            $timeStampLength=8;
224
+            while (strlen($timeStamp) < 16)
225
+                $timeStamp = "0".$timeStamp;
226
+            $timeStampLength = 8;
227 227
         }
228 228
 
229 229
         // Put the bytes of "ocraSuite" parameters into the message
230 230
         
231
-        $msg = array_fill(0,$ocraSuiteLength+$counterLength+$questionLength+$passwordLength+$sessionInformationLength+$timeStampLength+1, 0);
231
+        $msg = array_fill(0, $ocraSuiteLength + $counterLength + $questionLength + $passwordLength + $sessionInformationLength + $timeStampLength + 1, 0);
232 232
                 
233
-        for($i=0;$i<strlen($ocraSuite);$i++) {
233
+        for ($i = 0; $i < strlen($ocraSuite); $i++) {
234 234
             $msg[$i] = $ocraSuite[$i];
235 235
         }
236 236
         
@@ -239,9 +239,9 @@  discard block
 block discarded – undo
239 239
 
240 240
         // Put the bytes of "Counter" to the message
241 241
         // Input is HEX encoded
242
-        if($counterLength > 0 ) {
242
+        if ($counterLength > 0) {
243 243
             $bArray = self::_hexStr2Bytes($counter, $counterLength, 'counter');
244
-            for ($i=0;$i<strlen($bArray);$i++) {
244
+            for ($i = 0; $i < strlen($bArray); $i++) {
245 245
                 $msg [$i + $ocraSuiteLength + 1] = $bArray[$i];
246 246
             }
247 247
         }
@@ -249,41 +249,41 @@  discard block
 block discarded – undo
249 249
 
250 250
         // Put the bytes of "question" to the message
251 251
         // Input is text encoded
252
-        if($questionLength > 0 ) {
252
+        if ($questionLength > 0) {
253 253
             $bArray = self::_hexStr2Bytes($question, $questionLength, 'question');
254
-            for ($i=0;$i<strlen($bArray);$i++) {
254
+            for ($i = 0; $i < strlen($bArray); $i++) {
255 255
                 $msg [$i + $ocraSuiteLength + 1 + $counterLength] = $bArray[$i];
256 256
             }
257 257
         }
258 258
 
259 259
         // Put the bytes of "password" to the message
260 260
         // Input is HEX encoded
261
-        if($passwordLength > 0){
261
+        if ($passwordLength > 0) {
262 262
             $bArray = self::_hexStr2Bytes($password, $passwordLength, 'password');
263
-            for ($i=0;$i<strlen($bArray);$i++) {
263
+            for ($i = 0; $i < strlen($bArray); $i++) {
264 264
                 $msg [$i + $ocraSuiteLength + 1 + $counterLength + $questionLength] = $bArray[$i];
265 265
             }
266 266
         }
267 267
 
268 268
         // Put the bytes of "sessionInformation" to the message
269 269
         // Input is HEX encoded
270
-        if($sessionInformationLength > 0 ){
270
+        if ($sessionInformationLength > 0) {
271 271
             $bArray = self::_hexStr2Bytes($sessionInformation, $sessionInformationLength, 'sessionInformation');
272
-            for ($i=0;$i<strlen($bArray);$i++) {
272
+            for ($i = 0; $i < strlen($bArray); $i++) {
273 273
                 $msg [$i + $ocraSuiteLength + 1 + $counterLength + $questionLength + $passwordLength] = $bArray[$i];
274 274
             }
275 275
         }
276 276
 
277 277
         // Put the bytes of "time" to the message
278 278
         // Input is HEX encoded value of minutes
279
-        if($timeStampLength > 0){
279
+        if ($timeStampLength > 0) {
280 280
             $bArray = self::_hexStr2Bytes($timeStamp, $timeStampLength, 'timeStamp');
281
-            for ($i=0;$i<strlen($bArray);$i++) {
281
+            for ($i = 0; $i < strlen($bArray); $i++) {
282 282
                 $msg [$i + $ocraSuiteLength + 1 + $counterLength + $questionLength + $passwordLength + $sessionInformationLength] = $bArray[$i];
283 283
             }
284 284
         }
285 285
         
286
-        $byteKey = self::_hexStr2Bytes($key, strlen($key)/2, 'key');
286
+        $byteKey = self::_hexStr2Bytes($key, strlen($key) / 2, 'key');
287 287
               
288 288
         $msg = implode("", $msg);
289 289
 
@@ -308,23 +308,23 @@  discard block
 block discarded – undo
308 308
     static function _oath_truncate(string $hash, int $length = 6) : string
309 309
     {
310 310
         // Convert to dec
311
-        foreach(str_split($hash,2) as $hex)
311
+        foreach (str_split($hash, 2) as $hex)
312 312
         {
313
-            $hmac_result[]=hexdec($hex);
313
+            $hmac_result[] = hexdec($hex);
314 314
         }
315 315
     
316 316
         // Find offset
317 317
         $offset = $hmac_result[count($hmac_result) - 1] & 0xf;
318 318
     
319 319
         $v = strval(
320
-            (($hmac_result[$offset+0] & 0x7f) << 24 ) |
321
-            (($hmac_result[$offset+1] & 0xff) << 16 ) |
322
-            (($hmac_result[$offset+2] & 0xff) << 8 ) |
323
-            ($hmac_result[$offset+3] & 0xff)
320
+            (($hmac_result[$offset + 0] & 0x7f) << 24) |
321
+            (($hmac_result[$offset + 1] & 0xff) << 16) |
322
+            (($hmac_result[$offset + 2] & 0xff) << 8) |
323
+            ($hmac_result[$offset + 3] & 0xff)
324 324
         );
325 325
 
326 326
         // Prefix truncated string with 0's to ensure it always has the required length
327
-        $v=str_pad($v, $length, "0", STR_PAD_LEFT);
327
+        $v = str_pad($v, $length, "0", STR_PAD_LEFT);
328 328
 
329 329
         $v = substr($v, strlen($v) - $length);
330 330
         return $v;
Please login to merge, or discard this patch.
Braces   +45 added lines, -33 removed lines patch added patch discarded remove patch
@@ -125,13 +125,13 @@  discard block
 block discarded – undo
125 125
         $cryptoFunction = $components[1];
126 126
         $dataInput = strtolower($components[2]); // lower here so we can do case insensitive comparisons
127 127
 
128
-        if(stripos($cryptoFunction, "hotp-sha1")!==false)
129
-            $crypto = "sha1";
130
-        elseif(stripos($cryptoFunction, "hotp-sha256")!==false)
131
-            $crypto = "sha256";
132
-        elseif(stripos($cryptoFunction, "hotp-sha512")!==false)
133
-            $crypto = "sha512";
134
-        else {
128
+        if(stripos($cryptoFunction, "hotp-sha1")!==false) {
129
+                    $crypto = "sha1";
130
+        } elseif(stripos($cryptoFunction, "hotp-sha256")!==false) {
131
+                    $crypto = "sha256";
132
+        } elseif(stripos($cryptoFunction, "hotp-sha512")!==false) {
133
+                    $crypto = "sha512";
134
+        } else {
135 135
             throw new InvalidArgumentException('Unsupported OCRA CryptoFunction');
136 136
         }
137 137
 
@@ -149,56 +149,65 @@  discard block
 block discarded – undo
149 149
         // Counter
150 150
         if($dataInput[0] == "c" ) {
151 151
             // Fix the length of the HEX string
152
-            while(strlen($counter) < 16)
153
-                $counter = "0" . $counter;
152
+            while(strlen($counter) < 16) {
153
+                            $counter = "0" . $counter;
154
+            }
154 155
             $counterLength=8;
155 156
         }
156 157
         // Question
157 158
         if($dataInput[0] == "q" ||
158 159
                 stripos($dataInput, "-q")!==false) {
159
-            while(strlen($question) < 256)
160
-                $question = $question . "0";
160
+            while(strlen($question) < 256) {
161
+                            $question = $question . "0";
162
+            }
161 163
             $questionLength=128;
162 164
         }
163 165
 
164 166
         // Password
165 167
         if(stripos($dataInput, "psha1")!==false) {
166
-            while(strlen($password) < 40)
167
-                $password = "0" . $password;
168
+            while(strlen($password) < 40) {
169
+                            $password = "0" . $password;
170
+            }
168 171
             $passwordLength=20;
169 172
         }
170 173
     
171 174
         if(stripos($dataInput, "psha256")!==false) {
172
-            while(strlen($password) < 64)
173
-                $password = "0" . $password;
175
+            while(strlen($password) < 64) {
176
+                            $password = "0" . $password;
177
+            }
174 178
             $passwordLength=32;
175 179
         }
176 180
         
177 181
         if(stripos($dataInput, "psha512")!==false) {
178
-            while(strlen($password) < 128)
179
-                $password = "0" . $password;
182
+            while(strlen($password) < 128) {
183
+                            $password = "0" . $password;
184
+            }
180 185
             $passwordLength=64;
181 186
         }
182 187
         
183 188
         // sessionInformation
184 189
         if(stripos($dataInput, "s064") !==false) {
185
-            while(strlen($sessionInformation) < 128)
186
-                $sessionInformation = "0" . $sessionInformation;
190
+            while(strlen($sessionInformation) < 128) {
191
+                            $sessionInformation = "0" . $sessionInformation;
192
+            }
187 193
 
188 194
             $sessionInformationLength=64;
189 195
         } else if(stripos($dataInput, "s128") !==false) {
190
-            while(strlen($sessionInformation) < 256)
191
-                $sessionInformation = "0" . $sessionInformation;
196
+            while(strlen($sessionInformation) < 256) {
197
+                            $sessionInformation = "0" . $sessionInformation;
198
+            }
192 199
         
193 200
             $sessionInformationLength=128;
194 201
         } else if(stripos($dataInput, "s256") !==false) {
195
-            while(strlen($sessionInformation) < 512)
196
-                $sessionInformation = "0" . $sessionInformation;
202
+            while(strlen($sessionInformation) < 512) {
203
+                            $sessionInformation = "0" . $sessionInformation;
204
+            }
197 205
         
198 206
             $sessionInformationLength=256;
199 207
         } else if(stripos($dataInput, "s512") !==false) {
200
-            while(strlen($sessionInformation) < 128)
201
-                $sessionInformation = "0" . $sessionInformation;
208
+            while(strlen($sessionInformation) < 128) {
209
+                            $sessionInformation = "0" . $sessionInformation;
210
+            }
202 211
         
203 212
             $sessionInformationLength=64;
204 213
         } else if (stripos($dataInput, "-s") !== false ) {
@@ -210,8 +219,9 @@  discard block
 block discarded – undo
210 219
             // to prevent matching the "s" in the password input e.g. "psha1".
211 220
             // [C] | QFxx | [PH | Snnn | TG] : Challenge-Response computation
212 221
             // [C] | QFxx | [PH | TG] : Plain Signature computation
213
-            while(strlen($sessionInformation) < 128)
214
-                $sessionInformation = "0" . $sessionInformation;
222
+            while(strlen($sessionInformation) < 128) {
223
+                            $sessionInformation = "0" . $sessionInformation;
224
+            }
215 225
             
216 226
             $sessionInformationLength=64;
217 227
         }
@@ -221,8 +231,9 @@  discard block
 block discarded – undo
221 231
         // TimeStamp
222 232
         if($dataInput[0] == "t" ||
223 233
                 stripos($dataInput, "-t") !== false) {
224
-            while(strlen($timeStamp) < 16)
225
-                $timeStamp = "0" . $timeStamp;
234
+            while(strlen($timeStamp) < 16) {
235
+                            $timeStamp = "0" . $timeStamp;
236
+            }
226 237
             $timeStampLength=8;
227 238
         }
228 239
 
@@ -289,10 +300,11 @@  discard block
 block discarded – undo
289 300
 
290 301
         $hash = self::_hmac($crypto, $byteKey, $msg);
291 302
 
292
-        if ($codeDigits == 0)
293
-            $result = $hash;
294
-        else
295
-            $result = self::_oath_truncate($hash, $codeDigits);
303
+        if ($codeDigits == 0) {
304
+                    $result = $hash;
305
+        } else {
306
+                    $result = self::_oath_truncate($hash, $codeDigits);
307
+        }
296 308
              
297 309
         return $result;
298 310
     }
Please login to merge, or discard this patch.