JWT の JWS(署名) と JWE(暗号化) の順番に関するメモ。

11.2. 署名と暗号化の順序

構文的には、ネストされたJWTの署名および暗号化操作は任意の順序で適用できますが、署名と暗号化の両方が必要な場合、通常、プロデューサーはメッセージに署名してから結果を暗号化する必要があります(したがって、署名を暗号化します)。これにより、署名が取り除かれ、暗号化されたメッセージのみが残る攻撃を防ぎ、署名者にプライバシーを提供します。さらに、暗号化されたテキストの署名は、多くの法域では有効とは見なされていません。

ref. RFC 7519 - JSON Web Token (JWT) 日本語訳

should のレベルで「署名してから暗号化」が推奨されている。