As per my understanding JWT will be created by the server, after successful authentication of the user. The JWT will be sent to client(user machine) in HTTP response. Will the exp time in JWT modified? When exp time will be modified, Is there any chance due to time zone difference between client and server machines.
The exp timestamp (and all other timestamps) in the JWT is a Unix-Timestamp (defined as seconds after 1970-1-1 00:00 UTC) (more details in my answer here). There is no automatic conversion/modification taking place on the client side or when it is sent to the client. But you can decode the JWT on your client and then extract and convert the timestamp to local time if you, for example, want to build a mechanism to request a new access token with the refresh token when the current token is about to expire..
Any modification of the JWT along the way would also invalidate the JWT, as the JWT is signed and the signature is there to guarantee that nothing was changed after.
You can visit jwt.io to check your jwt and see what happens when you change somethimg. If you know the secret/key which was used to create the signature, copy it into the secret
field on the right side of the table under VERIFY SIGNATURE and get 'signature verified' as a result.