Hướng dẫn php jose - php jose
Ngày đăng:
22/11/2022
Trả lời:
0
Lượt xem:
118
Php Jose (Triển khai ký và mã hóa đối tượng của Javascript) Yêu cầuPHPSeclib là bắt buộc.http://phpseclib.sourceforge.net Thí dụJWTMã hóa$jwt = new JOSE_JWT(array( 'foo' => 'bar' )); $jwt->toString(); Giải mã$jwt_string = 'eyJ...'; $jwt = JOSE_JWT::decode($jwt_string); JWSKý kết$private_key = "-----BEGIN RSA PRIVATE KEY-----\n...."; $jwt = new JOSE_JWT(array( 'foo' => 'bar' )); $jws = $jwt->sign($private_key, 'RS256'); Lưu ý: $private_key = "-----BEGIN RSA PRIVATE KEY-----\n...."; $jwt = new JOSE_JWT(array( 'foo' => 'bar' )); $jws = $jwt->sign($private_key, 'RS256');0 có thể là ví dụ $private_key = "-----BEGIN RSA PRIVATE KEY-----\n...."; $jwt = new JOSE_JWT(array( 'foo' => 'bar' )); $jws = $jwt->sign($private_key, 'RS256');1. xác minh$public_key = "-----BEGIN RSA PUBLIC KEY-----\n...."; $jwt_string = 'eyJ...'; $jws = JOSE_JWT::decode($jwt_string); $jws->verify($public_key, 'RS256'); Lưu ý: $private_key = "-----BEGIN RSA PRIVATE KEY-----\n...."; $jwt = new JOSE_JWT(array( 'foo' => 'bar' )); $jws = $jwt->sign($private_key, 'RS256');2 có thể là $private_key = "-----BEGIN RSA PRIVATE KEY-----\n...."; $jwt = new JOSE_JWT(array( 'foo' => 'bar' )); $jws = $jwt->sign($private_key, 'RS256');3 hoặc $private_key = "-----BEGIN RSA PRIVATE KEY-----\n...."; $jwt = new JOSE_JWT(array( 'foo' => 'bar' )); $jws = $jwt->sign($private_key, 'RS256');1. JweMã hóa$jwe = new JOSE_JWE($plain_text); $jwe->encrypt(file_get_contents('/path/to/public_key.pem')); $jwe->toString(); Giải mã$jwt_string = 'eyJ...'; $jwe = JOSE_JWT::decode($jwt_string); $jwe->decrypt($private_key); JWKMã hóaRSA Key$public_key = new phpseclib\Crypt\RSA(); $public_key->loadKey('-----BEGIN RSA PUBLIC KEY-----\n...'); JOSE_JWK::encode($public_key); # => JOSE_JWK instance RSA riêng$private_key = new phpseclib\Crypt\RSA(); $private_key->setPassword($pass_phrase); # skip if not encrypted $private_key->loadKey('-----BEGIN RSA PRIVATE KEY-----\n...'); JOSE_JWK::encode($private_key); # => JOSE_JWK instance Giải mãRSA Key# public key $components = array( 'kty' => 'RSA', 'e' => 'AQAB', 'n' => 'x9vNhcvSrxjsegZAAo4OEuo...' ); JOSE_JWK::decode($components); # => phpseclib\Crypt\RSA instance RSA riêngGiải mã Không được hỗ trợ.git clone git://github.com/nov/jose-php.git
cd jose
php composer.phar install --dev
./vendor/bin/phpunit -c test/phpunit.xml --tap Chạy kiểm traBản quyền Php Jose (Triển khai ký và mã hóa đối tượng của Javascript) PHPSeclib là bắt buộc.http://phpseclib.sourceforge.net Giải mã$jwt_string = 'eyJ...'; $jwt = JOSE_JWT::decode($jwt_string); JWSKý kết$private_key = "-----BEGIN RSA PRIVATE KEY-----\n...."; $jwt = new JOSE_JWT(array( 'foo' => 'bar' )); $jws = $jwt->sign($private_key, 'RS256'); Lưu ý: $private_key = "-----BEGIN RSA PRIVATE KEY-----\n...."; $jwt = new JOSE_JWT(array( 'foo' => 'bar' )); $jws = $jwt->sign($private_key, 'RS256');0 có thể là ví dụ $private_key = "-----BEGIN RSA PRIVATE KEY-----\n...."; $jwt = new JOSE_JWT(array( 'foo' => 'bar' )); $jws = $jwt->sign($private_key, 'RS256');1. xác minh$public_key = "-----BEGIN RSA PUBLIC KEY-----\n...."; $jwt_string = 'eyJ...'; $jws = JOSE_JWT::decode($jwt_string); $jws->verify($public_key, 'RS256'); Lưu ý: $private_key = "-----BEGIN RSA PRIVATE KEY-----\n...."; $jwt = new JOSE_JWT(array( 'foo' => 'bar' )); $jws = $jwt->sign($private_key, 'RS256');2 có thể là $private_key = "-----BEGIN RSA PRIVATE KEY-----\n...."; $jwt = new JOSE_JWT(array( 'foo' => 'bar' )); $jws = $jwt->sign($private_key, 'RS256');3 hoặc $private_key = "-----BEGIN RSA PRIVATE KEY-----\n...."; $jwt = new JOSE_JWT(array( 'foo' => 'bar' )); $jws = $jwt->sign($private_key, 'RS256');1. JweMã hóa$jwe = new JOSE_JWE($plain_text); $jwe->encrypt(file_get_contents('/path/to/public_key.pem')); $jwe->toString(); Giải mã$jwt_string = 'eyJ...'; $jwe = JOSE_JWT::decode($jwt_string); $jwe->decrypt($private_key); JWKMã hóaRSA Key$public_key = new phpseclib\Crypt\RSA(); $public_key->loadKey('-----BEGIN RSA PUBLIC KEY-----\n...'); JOSE_JWK::encode($public_key); # => JOSE_JWK instance RSA riêng$private_key = new phpseclib\Crypt\RSA(); $private_key->setPassword($pass_phrase); # skip if not encrypted $private_key->loadKey('-----BEGIN RSA PRIVATE KEY-----\n...'); JOSE_JWK::encode($private_key); # => JOSE_JWK instance Giải mãRSA Key# public key $components = array( 'kty' => 'RSA', 'e' => 'AQAB', 'n' => 'x9vNhcvSrxjsegZAAo4OEuo...' ); JOSE_JWK::decode($components); # => phpseclib\Crypt\RSA instance RSA riêngGiải mã Không được hỗ trợ.git clone git://github.com/nov/jose-php.git
cd jose
php composer.phar install --dev
./vendor/bin/phpunit -c test/phpunit.xml --tap Chạy kiểm traBản quyền |