I was reading article on JWT web token as an access token that is being sent to the user. Some of it mentions that the web token should be able to be decoded by the user.
Does that mean it is bad practice to decrypt the entire web token? For example, suppose I return the following JWT web token where this piece of information can be decoded.
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9.TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7HgQ
However, I feel that I do not want to let user able to decode his/her access token, so I use another encryption algorithm to encrypt everything into another form as follows and pass back to user.
So, I would decrypt this new text when I get the access token in the server and decode it.
Is it recommended to do it this way, if I do not wish to expose some of the value available in claim (such as user id) to the user? If not, what are the alternatives?