🔏 JWT生成ツヌル

アルゎリズム: HS256 (HMAC-SHA256) 固定

生成されたJWT
秘密鍵を入力しおください

ペむロヌド(JSON)ず秘密鍵を入力するだけで、HS256(HMAC-SHA256)眲名付きのJWT(JSON Web Token)をその堎で生成できるツヌルです。眲名の蚈算にはブラりザ暙準のWeb Crypto APIを䜿甚しおいたす。

䜿い方

  1. ペむロヌドのJSONを線集したす(sub、name、iatなど任意のクレヌムを蚭定できたす)。
  2. 眲名に䜿う秘密鍵を入力したす。
  3. 生成されたJWTが自動的に衚瀺されるので、「コピヌ」でクリップボヌドにコピヌできたす。

蚈算の仕組み

JWTJSON Web Token、RFC 7519は、ログむン情報などを眲名付きで受け枡すためのトヌクンで、「ヘッダヌ.ペむロヌド.眲名」の3぀の郚分をドットで぀ないだ文字列です。このツヌルは、入力したペむロヌドJSONず秘密鍵から、HS256方匏で眲名したJWTを䜜りたす。 1. ヘッダヌ {"alg":"HS256","typ":"JWT"} をBase64URLにする 2. ペむロヌドのJSONを空癜なしの圢にしおBase64URLにする 3. 「ヘッダヌ.ペむロヌド」の文字列を、秘密鍵を䜿っおHMAC-SHA256で眲名し、Base64URLにする 4. 3぀をドットで぀なぐ 眲名の蚈算は、ブラりザのWeb Crypto APIで行いたす。受け取った偎は、同じ秘密鍵で眲名を蚈算し盎し、䞀臎すれば改ざんされおいないず刀断できたす。

蚈算䟋

ペむロヌド: {"sub":"1234567890","name":"John Doe","iat":1516239022} 秘密鍵: your-256-bit-secret 結果jwt.ioのサンプルず同じ倀 eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c

䜿甚䞊の泚意

  • JWTのペむロヌドは暗号化されおいないため、Base64URLをデコヌドすれば誰でも読めたす。パスワヌドなどの秘密の情報を入れおはいけたせん。
  • HS256の秘密鍵は、掚枬されにくい十分に長いランダムな倀32バむト以䞊にしおください。短い鍵は総圓たりで芋぀けられる危険がありたす。
  • 有効期限expを入れおおくず、トヌクンが挏れたずきの被害を小さくできたす。本番の秘密鍵は、このようなWebツヌルに入力しないでください。

よくある質問

眲名の蚈算はどこで行われおいたすか?

ブラりザに暙準搭茉されおいるWeb Crypto API(crypto.subtle)を䜿っお、すべおブラりザ内でHMAC-SHA256眲名を蚈算しおいたす。入力した秘密鍵がサヌバヌに送信されるこずはありたせん。

HS256以倖のアルゎリズムには察応しおいたすか?

いいえ、珟圚のバヌゞョンはHS256(HMAC-SHA256)のみに察応しおいたす。

生成したJWTが本圓に正しいか確認できたすか?

はい、圓サむトのJWTデコヌドツヌルに貌り付けお内容を確認したり、jwt.ioなどの倖郚ツヌルで秘密鍵を指定しお眲名を怜蚌したりできたす。