Try using it in your preferred language.

English

  • English
  • 汉语
  • Español
  • Bahasa Indonesia
  • Português
  • Русский
  • 日本語
  • 한국어
  • Deutsch
  • Français
  • Italiano
  • Türkçe
  • Tiếng Việt
  • ไทย
  • Polski
  • Nederlands
  • हिन्दी
  • Magyar
translation

Esta é uma postagem traduzida por IA.

Seize the day

O que é JWT (JSON Web Token)?

  • Idioma de escrita: Coreana
  • País de referência: Todos os países country-flag

Selecionar idioma

  • Português
  • English
  • 汉语
  • Español
  • Bahasa Indonesia
  • Русский
  • 日本語
  • 한국어
  • Deutsch
  • Français
  • Italiano
  • Türkçe
  • Tiếng Việt
  • ไทย
  • Polski
  • Nederlands
  • हिन्दी
  • Magyar

Texto resumido pela IA durumis

  • JSON Web Token (JWT) é um token criptografado para transmitir informações de forma segura.
  • JWT é composto por cabeçalho, carga útil e assinatura, e a assinatura garante a integridade dos dados.
  • JWT não requer gerenciamento separado de informações de estado, o que aumenta a escalabilidade em ambientes distribuídos.

O que é JWT?

JSON Web Token (JWT) é um tipo de padrão aberto (RFC 7519) que fornece um método seguro de transmissão de informações como um objeto JSON. Em outras palavras, as informações necessárias são colocadas em um token e criptografadas para uso.


O JWT é enfatizado como um token assinado. Quando uma assinatura é usada usando um par de chaves pública/privada, essa assinatura garante que somente a parte que possui a chave privada assinou o token. Ou seja, o servidor que possui a chave pode saber se o token é válido.


Estrutura JWT

O JWT é composto por cabeçalho (Header), carga útil (Payload) e assinatura (Signature).

Cada parte é codificada em Base64 e separada por um ponto (.).

Cabeçalho

{
    "alg": "HS256",
    "typ": "JWT"

O cabeçalho contém duas informações principais: o tipo de token (typ) e o algoritmo de assinatura usado (alg). O algoritmo de assinatura é usado para gerar e verificar a assinatura.

typ é definido como "JWT" e alg é escrito como HMAC, SHA256, etc. No exemplo acima, significa que o algoritmo HS256 é usado com a chave privada.

Carga útil

{
    "sub": "1234567890",
    "name": "John Doe",
    "iat": 1516239022


A carga útil inclui reivindicações que você deseja transmitir no token. As informações de identificação do usuário ou as propriedades do token são armazenadas em formato chave-valor. Em outras palavras, você pode inserir o que quiser!

De acordo com as especificações padrão, o nome da chave é definido de forma compacta como 3 letras.

As reivindicações registradas são as seguintes.

  • iss (Emissor): Emissor do token (inclui informações de identificação exclusivas do emissor do token)
  • sub (Assunto): A entidade a que o token se destina
  • aud (Público): Receptor do token
  • exp (Tempo de expiração): Tempo de expiração do token (após esse tempo, o token não é mais válido)
  • nbf (Não antes): Data de ativação do token (o token não pode ser usado antes desse tempo)
  • iat (Emitido em): Tempo de emissão do token
  • jti (ID JWT): Identificador do token JWT (valor usado para distinguir entre múltiplos emissores)


Você pode adicionar outros valores conforme necessário.

No entanto, a carga útil não é criptografada, é um valor assinado, portanto não contém informações confidenciais.

Qualquer pessoa pode visualizar após a decodificação.jwt.io Você pode verificar diretamente no site.

Assinatura

HMACSHA256(
    base64UrlEncode(header) + "." +
    base64UrlEncode(payload),
    your-256-bit-secret

O cabeçalho e a carga útil são codificados em Base64 e conectados por um ponto (.), e o servidor usa a chave privada your-256-bit-secret para assinar.

Portanto, somente o servidor que emitiu o token pode descriptografar a assinatura (Signature) usando a chave privada.

Pensando na decodificação, você pode verificar se o base64UrlEncode(header) corresponde ao valor do heaer JWT descriptografando a assinatura com a chave privada e verificar se o base64UrlEncode(payload) corresponde.

O cabeçalho e a carga útil, exceto a assinatura, são apenas codificados, portanto você pode ver as informações do corpo, mas a integridade e a segurança das informações são mantidas pela assinatura.



O JWT contém todas as informações necessárias por si só, sendo autocontido. O JWT, que foi criado para compensar as desvantagens da sessão que exige estado, não requer um armazenamento separado.

O servidor não precisa manter a sessão, o que torna o JWT sem estado, o que aumenta a escalabilidade em sistemas distribuídos ou arquiteturas de microsserviços.

Ele é protegido por assinatura, assinatura digital, e a integridade dos dados pode ser garantida.

nofunfromdev
Seize the day
Seize the day
nofunfromdev
Em vez de um certificado digital pago, use um certificado financeiro gratuito! Apresentamos um certificado financeiro que pode ser emitido gratuitamente em vez de um certificado digital. Leva apenas 3 minutos para ser emitido e pode ser usado por 3 anos, o que o torna conveniente. Pode ser solicitado no site do banco e pode ser usad
길리
길리
길리
길리
길리

17 de abril de 2024

O que é LLM (Large Language Model)? O modelo de linguagem de grande porte (LLM) é uma tecnologia central da inteligência artificial que aprende com uma quantidade enorme de dados de texto para adquirir a capacidade de processar linguagem semelhante à humana, podendo ser usada em uma varieda
세상 모든 정보
세상 모든 정보
세상 모든 정보
세상 모든 정보

1 de abril de 2024

Modelagem de dados conceitual A modelagem de dados conceitual é o processo de separar entidades, representar suas relações em um ERD. Uma entidade é uma unidade de informação independente, e um atributo é o dado que uma entidade possui. Um identificador identifica exclusivamente uma e
제이의 블로그
제이의 블로그
제이의 블로그
제이의 블로그

8 de abril de 2024

O que é o Java Collections Framework (JCF)? - Definição e recursos do JCF (JAVA) O Java Collections Framework (JCF) é um conjunto de classes Java que fornece um método padronizado para processar vários dados de forma eficiente. O JCF implementa estruturas de dados de armazenamento e algoritmos como classes para aumentar a reusabilidad
제이온
제이온
제이온
제이온

27 de abril de 2024

[Javascript] Estrutura do Objeto (V8) O Objeto JavaScript no motor V8 é otimizado como uma estrutura dependendo do estado, alternando entre o modo Rápido e o modo Dicionário, que funciona como um mapa hash. O modo Rápido é rápido quando as chaves e valores são quase fixos, mas quando uma nova
곽경직
곽경직
곽경직
곽경직
곽경직

18 de março de 2024

Worldcoin: a verificação de íris é realmente segura? O Worldcoin paga moedas com reconhecimento de íris, mas levanta várias preocupações, como a controvérsia sobre o comércio de dados pessoais, a falta de transparência no uso de informações e o risco de transferência de servidores para o exterior. Os especi
세상 모든 정보
세상 모든 정보
세상 모든 정보
세상 모든 정보

31 de março de 2024