LoginSignup
1
2

More than 5 years have passed since last update.

JWT Json web token

Posted at

JWT : JSON Web Token
ざっくりいって署名の出来る JSON を含んだ トークンである。
署名とは、署名時に使ったsecretを用いて、JSONが改ざんされていないかをチェック出来るようにすることです。

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9.TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7HgQ

3つの部分に分れている

header:
- 宣言の型
- 暗号化の名v 通常はSHA256
例:

{
  'typ': 'JWT',
  'alg': 'HS256'
}
//base64で
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9

payload:
中身を載せる

例:

{
  "sub": "1234567890",
  "name": "John Doe",
  "admin": true
}
//base64で
eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9

signature :

header + payloadを暗号化したら secret

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9.TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7HgQ

sercretはサーバーで保存している、Jwtの生成もサーバーでやる。
ユーザー毎回requestの時header + payloadを送ってくる、改ざん検証できる、サーバーで認証をやる。

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2