__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

[email protected]: ~ $
<?php

declare(strict_types=1);

/*
 * The MIT License (MIT)
 *
 * Copyright (c) 2014-2019 Spomky-Labs
 *
 * This software may be modified and distributed under the terms
 * of the MIT license.  See the LICENSE file for details.
 */

namespace Webauthn;

use Assert\Assertion;
use Base64Url\Base64Url;
use InvalidArgumentException;
use Webauthn\TokenBinding\TokenBinding;

class CollectedClientData
{
    /**
     * @var string
     */
    private $rawData;

    /**
     * @var array
     */
    private $data;

    /**
     * @var string
     */
    private $type;

    /**
     * @var string
     */
    private $challenge;

    /**
     * @var string
     */
    private $origin;

    /**
     * @var array|null
     */
    private $tokenBinding;

    public function __construct(string $rawData, array $data)
    {
        $this->type = $this->findData($data, 'type');
        $this->challenge = $this->findData($data, 'challenge', true, true);
        $this->origin = $this->findData($data, 'origin');
        $this->tokenBinding = $this->findData($data, 'tokenBinding', false);
        $this->rawData = $rawData;
        $this->data = $data;
    }

    public static function createFormJson(string $data): self
    {
        $rawData = Base64Url::decode($data);
        $json = json_decode($rawData, true);
        Assertion::eq(JSON_ERROR_NONE, json_last_error(), 'Invalid collected client data');
        Assertion::isArray($json, 'Invalid collected client data');

        return new self($rawData, $json);
    }

    public function getType(): string
    {
        return $this->type;
    }

    public function getChallenge(): string
    {
        return $this->challenge;
    }

    public function getOrigin(): string
    {
        return $this->origin;
    }

    public function getTokenBinding(): ?TokenBinding
    {
        return null === $this->tokenBinding ? null : TokenBinding::createFormArray($this->tokenBinding);
    }

    public function getRawData(): string
    {
        return $this->rawData;
    }

    /**
     * @return string[]
     */
    public function all(): array
    {
        return array_keys($this->data);
    }

    public function has(string $key): bool
    {
        return \array_key_exists($key, $this->data);
    }

    /**
     * @return mixed
     */
    public function get(string $key)
    {
        if (!$this->has($key)) {
            throw new InvalidArgumentException(sprintf('The key "%s" is missing', $key));
        }

        return $this->data[$key];
    }

    /**
     * @return mixed|null
     */
    private function findData(array $json, string $key, bool $isRequired = true, bool $isB64 = false)
    {
        if (!\array_key_exists($key, $json)) {
            if ($isRequired) {
                throw new InvalidArgumentException(sprintf('The key "%s" is missing', $key));
            }

            return;
        }

        return $isB64 ? Base64Url::decode($json[$key]) : $json[$key];
    }
}

Filemanager

Name Type Size Permission Actions
AttestationStatement Folder 0775
AuthenticationExtensions Folder 0775
TokenBinding Folder 0775
TrustPath Folder 0775
Util Folder 0775
AttestedCredentialData.php File 2.58 KB 0664
AuthenticatorAssertionResponse.php File 1.47 KB 0664
AuthenticatorAssertionResponseValidator.php File 9.03 KB 0664
AuthenticatorAttestationResponse.php File 878 B 0664
AuthenticatorAttestationResponseValidator.php File 6.42 KB 0664
AuthenticatorData.php File 2.85 KB 0664
AuthenticatorResponse.php File 686 B 0664
AuthenticatorSelectionCriteria.php File 2.61 KB 0664
CertificateToolbox.php File 8.2 KB 0664
CollectedClientData.php File 2.9 KB 0664
Credential.php File 757 B 0664
PublicKeyCredential.php File 1.35 KB 0664
PublicKeyCredentialCreationOptions.php File 5.67 KB 0664
PublicKeyCredentialDescriptor.php File 2.3 KB 0664
PublicKeyCredentialDescriptorCollection.php File 2.03 KB 0664
PublicKeyCredentialEntity.php File 990 B 0664
PublicKeyCredentialLoader.php File 5.22 KB 0664
PublicKeyCredentialOptions.php File 1.36 KB 0664
PublicKeyCredentialParameters.php File 1.65 KB 0664
PublicKeyCredentialRequestOptions.php File 3.58 KB 0664
PublicKeyCredentialRpEntity.php File 1.12 KB 0664
PublicKeyCredentialSource.php File 6.63 KB 0664
PublicKeyCredentialSourceRepository.php File 681 B 0664
PublicKeyCredentialUserEntity.php File 1.91 KB 0664
Server.php File 11.19 KB 0664
StringStream.php File 1.65 KB 0664
Filemanager