OXIESEC PANEL
- Current Dir:
/
/
var
/
www
/
firebase
/
vendor
/
google
/
auth
/
src
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
08/12/2024 10:33:10 AM
rwxr-xr-x
📄
AccessToken.php
17.53 KB
08/12/2024 10:33:10 AM
rw-r--r--
📄
ApplicationDefaultCredentials.php
14.06 KB
08/12/2024 10:33:10 AM
rw-r--r--
📁
Cache
-
08/12/2024 10:33:42 AM
rwxr-xr-x
📄
CacheTrait.php
2.66 KB
08/12/2024 10:33:10 AM
rw-r--r--
📁
CredentialSource
-
08/12/2024 10:33:42 AM
rwxr-xr-x
📁
Credentials
-
08/12/2024 10:33:42 AM
rwxr-xr-x
📄
CredentialsLoader.php
9.75 KB
08/12/2024 10:33:10 AM
rw-r--r--
📁
ExecutableHandler
-
08/12/2024 10:33:42 AM
rwxr-xr-x
📄
ExternalAccountCredentialSourceInterface.php
826 bytes
08/12/2024 10:33:10 AM
rw-r--r--
📄
FetchAuthTokenCache.php
10.89 KB
08/12/2024 10:33:10 AM
rw-r--r--
📄
FetchAuthTokenInterface.php
1.68 KB
08/12/2024 10:33:10 AM
rw-r--r--
📄
GCECache.php
2.39 KB
08/12/2024 10:33:10 AM
rw-r--r--
📄
GetQuotaProjectInterface.php
980 bytes
08/12/2024 10:33:10 AM
rw-r--r--
📄
GetUniverseDomainInterface.php
1.09 KB
08/12/2024 10:33:10 AM
rw-r--r--
📁
HttpHandler
-
08/12/2024 10:33:42 AM
rwxr-xr-x
📄
Iam.php
3.57 KB
08/12/2024 10:33:10 AM
rw-r--r--
📄
IamSignerTrait.php
2.47 KB
08/12/2024 10:33:10 AM
rw-r--r--
📄
MetricsTrait.php
4.01 KB
08/12/2024 10:33:10 AM
rw-r--r--
📁
Middleware
-
08/12/2024 10:33:43 AM
rwxr-xr-x
📄
OAuth2.php
50.12 KB
08/12/2024 10:33:10 AM
rw-r--r--
📄
ProjectIdProviderInterface.php
994 bytes
08/12/2024 10:33:10 AM
rw-r--r--
📄
ServiceAccountSignerTrait.php
1.87 KB
08/12/2024 10:33:10 AM
rw-r--r--
📄
SignBlobInterface.php
1.54 KB
08/12/2024 10:33:10 AM
rw-r--r--
📄
UpdateMetadataInterface.php
1.26 KB
08/12/2024 10:33:10 AM
rw-r--r--
📄
UpdateMetadataTrait.php
2.46 KB
08/12/2024 10:33:10 AM
rw-r--r--
Editing: ServiceAccountSignerTrait.php
Close
<?php /* * Copyright 2019 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ namespace Google\Auth; use phpseclib3\Crypt\PublicKeyLoader; use phpseclib3\Crypt\RSA; /** * Sign a string using a Service Account private key. */ trait ServiceAccountSignerTrait { /** * Sign a string using the service account private key. * * @param string $stringToSign * @param bool $forceOpenssl Whether to use OpenSSL regardless of * whether phpseclib is installed. **Defaults to** `false`. * @return string */ public function signBlob($stringToSign, $forceOpenssl = false) { $privateKey = $this->auth->getSigningKey(); $signedString = ''; if (class_exists(phpseclib3\Crypt\RSA::class) && !$forceOpenssl) { $key = PublicKeyLoader::load($privateKey); $rsa = $key->withHash('sha256')->withPadding(RSA::SIGNATURE_PKCS1); $signedString = $rsa->sign($stringToSign); } elseif (extension_loaded('openssl')) { openssl_sign($stringToSign, $signedString, $privateKey, 'sha256WithRSAEncryption'); } else { // @codeCoverageIgnoreStart throw new \RuntimeException('OpenSSL is not installed.'); } // @codeCoverageIgnoreEnd return base64_encode($signedString); } }