Heray-Was-Here
Server : Apache
System : Linux mail.lomejor.cr 6.8.0-1059-azure #65~22.04.1-Ubuntu SMP Thu May 28 16:59:19 UTC 2026 x86_64
User : www-data ( 33)
PHP Version : 8.2.31
Disable Function : NONE
Directory :  /var/www/store/wp-content/plugins/oauth2-provider/library/WPOAuth2/Encryption/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /var/www/store/wp-content/plugins/oauth2-provider/library/WPOAuth2/Encryption/FirebaseJwt.php
<?php

namespace WPOAuth2\Encryption;

/**
 * Bridge file to use the firebase/php-jwt package for JWT encoding and decoding.
 *
 * @author Francis Chuang <francis.chuang@gmail.com>
 */
class FirebaseJwt implements EncryptionInterface {

	public function __construct() {
		if ( ! class_exists( '\JWT' ) ) {
			throw new \ErrorException( 'firebase/php-jwt must be installed to use this feature. You can do this by running "composer require firebase/php-jwt"' );
		}
	}

	public function encode( $payload, $key, $alg = 'HS256', $keyId = null ) {
		return \JWT::encode( $payload, $key, $alg, $keyId );
	}

	public function decode( $jwt, $key = null, $allowedAlgorithms = null ) {
		try {

			// Maintain BC: Do not verify if no algorithms are passed in.
			if ( ! $allowedAlgorithms ) {
				$key = null;
			}

			return (array) \JWT::decode( $jwt, $key, $allowedAlgorithms );
		} catch ( \Exception $e ) {
			return false;
		}
	}

	public function urlSafeB64Encode( $data ) {
		return \JWT::urlsafeB64Encode( $data );
	}

	public function urlSafeB64Decode( $b64 ) {
		return \JWT::urlsafeB64Decode( $b64 );
	}
}

Hry