Lets understand some of the terms used in these sections:
It is a string type parameter. It is used to define the algorithm used in JWT to encrypt the data, such as RS256.
It is a string type parameter. It is used to tell the structure of the token. For now, its value will be JWT. It is an optional field for now. It could be used in future for other structure values.
It's a string parameter and a hint to define which specific key should be used to validate the signature.
It is a string parameter used to point to the URL X.509 certificate public key to validate the signature.
It is again a string parameter that provides the SHA-256 digest of the DER encoding of the X.509 certificate. This is base64 encoded. The kid ...