public function withMinimumVersion(int $version): self
    {
        if ($version !== self::TLSv1_0 && $version !== self::TLSv1_1 && $version !== self::TLSv1_2) {
            throw new \Error('Invalid minimum version, only TLSv1.0, TLSv1.1 or TLSv1.2 allowed');
        }

        $clone = clone $this;
        $clone->minVersion = $version;

        return $clone;
    }