JSON Web Token

The JSON Web Token is an industry standard for transmitting secure claims. It is also known as JWT. Once a user receivers an authentication token, this token is then stored locally, such as in their cookies. For example, once you log in to a site, you will receive a JSON web token saying “logged in successfully.” This will then be stored as a cookie by your browser. As you visit different sections of the site it will query whether you are allowed to be there. The secure web token will tell the server that you are.

JSON web tokens are commonly used in a single-sign-on context. A JSON Web Token is compact and URL-safe. It is designed to contain all the information that the server will require. This means that a new JSON web token won’t need to be issued for a different type of access. It also reduces how often requests will have to be sent.

This system means that secure access can be granted to users in the form of a time-limited session. It improves the security and processing time for access requests. JSON web tokens are also used for information exchange.

The standard is open-source, based on RFC 7519. Inside the JSON web token the claims are written as a JSON object. This means that it either uses a JSON Web Signature (JWS) structure or a JSON Web Encryption (JWE) structure, which is in plaintext. Being JSON-based allows the tokens to be digitally signed and/or encrypted. The web token is made up of three sections. These are the header, the payload, and the signature. Each of these are separated by dots. 

The use of JSON to learn the mechanics of authentication can make it a simpler process for programmers. JSON web tokens also have vulnerabilities, such as being readable by anyone, unless they are properly encrypted.