PS256 JWT Decoder & Verifier

Paste a PS256-signed JWT to decode its claims. Enter the RSA public key (PEM or JWK) to verify the RSA-PSS SHA-256 signature — a stronger RSA variant, verified locally in your browser.

100% in-browser — nothing uploaded

Encoded JWT

HeaderPayloadSignature
Awaiting a token — everything is decoded locally in your browser.

Decoded Header

Paste a token to decode this segment.

Decoded Payload

Paste a token to decode this segment.

Verify Signature

Enter the secret to verify the signature

Features

100% private

Your token is decoded entirely in your browser. Nothing is uploaded, logged, or sent to any server or API.

Instant decoding

Paste a JWT and the header, payload, and claims are decoded in real time — no button required.

Human-readable claims

Standard claims like exp, iat, and nbf are explained and shown as readable dates with expiry status.

Signature verification

Verify HS256/384/512 with a secret, or RS, PS, and ES algorithms with a public key — all client-side.

PS256 algorithm explained

What is PS256 in a JWT?

PS256 is RSASSA-PSS (RSA with Probabilistic Signature Scheme) using SHA-256 and MGF1-SHA256. It uses the same RSA key infrastructure as RS256 but a different — and cryptographically stronger — padding scheme. Where RS256 uses the deterministic PKCS#1 v1.5 padding, PS256 uses randomized PSS padding with a salt, which is considered more secure against certain theoretical attacks on RSA signatures.

Because PS256 is probabilistic (the salt is random each time), signing the same payload twice produces different signatures. However, verification still works correctly because the salt is included in the signature. PS256 and RS256 use the same RSA key pairs — you can switch the signing algorithm without regenerating keys.

PS256 is required by the OpenID Connect Financial-grade API (FAPI) profile and is gaining adoption in banking and financial services APIs where PKCS#1 v1.5 is being phased out. Paste a PS256 JWT above and enter the RSA public key to verify the signature using the Web Crypto API's RSASSA-PSS implementation.

PS256 at a glance

Full name
RSASSA-PSS using SHA-256 and MGF1 with SHA-256
Algorithm family
RSA-PSS (asymmetric)
Signing key
RSA private key (≥ 2048 bits)
Verification key
RSA public key (PEM or JWK)
Signature size
Equals key size (256 bytes for 2048-bit key)
Padding
Probabilistic PSS (randomized salt)
Step by step

How to decode a JWT token online

1

Paste your token

Copy a JSON Web Token and paste it into the encoded box. You can also load the example token to try it out.

2

Read the decoded data

The header and payload are decoded instantly. Switch to the Claims tab for plain-English explanations and expiry status.

3

Verify the signature

Enter the secret (HMAC) or public key (RSA/ECDSA) to confirm the token is authentic and hasn't been tampered with.

FAQ

Frequently asked questions