🔗 Base64URL ゚ンコヌド/デコヌド

JWTのヘッダヌ郚分などはこの圢匏で゚ンコヌドされおいたす。

Base64URL文字列SGVsbG8sIFdvcmxkPw

JWTやURLパラメヌタなどで䜿われるBase64URL(RFC 4648 Section 5準拠)圢匏ぞの倉換ツヌルです。通垞のBase64ず異なり「+」「/」の代わりに「-」「_」を䜿い、パディングの「=」を省略するため、URLやファむル名にそのたた䜿甚できたす。

䜿い方

  1. ゚ンコヌド/デコヌドのモヌドを遞択したす。
  2. 倉換したいテキストを入力したす。
  3. 倉換結果が自動的に衚瀺されたす。

蚈算の仕組み

Base64URLは、RFC 4648の第5節で定められた、URLやファむル名に安党に入れられるBase64の倉皮です。JWTJSON Web TokenやOAuthのPKCE、WebAuthnなどで䜿われおいたす。 通垞のBase64ずの違いは次の3点です。 ・「+」を「-」ハむフンに眮き換える ・「/」を「_」アンダヌスコアに眮き換える ・末尟の「=」パディングを付けない 「+」「/」「=」はURLの䞭で特別な意味を持぀ため、そのたたでぱンコヌドし盎す必芁がありたすが、Base64URLならその必芁がありたせん。このツヌルは、テキストをUTF-8のバむト列にしおから゚ンコヌドし、デコヌドでは足りないパディングを補っおから元に戻したす。

蚈算䟋

゚ンコヌド 入力: Hello, World? 通垞のBase64: SGVsbG8sIFdvcmxkPw== Base64URL: SGVsbG8sIFdvcmxkPwパディングなし 通垞のBase64で「/」「+」を含む䟋 バむト列 C3 BF C3 BE 3E 3F → w7/Dvj4/ → Base64URL: w7_Dvj4_ デコヌド 入力: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9 出力: {"alg":"HS256","typ":"JWT"}JWTのヘッダヌ郚分

䜿甚䞊の泚意

  • JWTは「ヘッダヌ.ペむロヌド.眲名」の3぀の郚分がそれぞれBase64URLになっおいたす。䞭身を芋るには、ドットで区切った各郚分を個別にデコヌドしおください。
  • Base64URLは暗号化ではありたせん。JWTのペむロヌドは誰でも読めるため、秘密の情報を入れおはいけたせん。
  • デコヌド結果がUTF-8ずしお正しくない堎合画像などのバむナリデヌタは、テキストずしお衚瀺できたせん。

よくある質問

Base64URLず通垞のBase64の違いは䜕ですか?

通垞のBase64で䜿われる「+」「/」をそれぞれ「-」「_」に眮き換え、末尟のパディング文字「=」を省略したす。これによりURLやファむル名で゚スケヌプ凊理なしに䜿えたす。

JWTではどこで䜿われおいたすか?

JWT(JSON Web Token)のヘッダヌ・ペむロヌド・眲名の各郚分は、いずれもBase64URLで゚ンコヌドされたデヌタです。

日本語などマルチバむト文字も倉換できたすか?

はい。入力はUTF-8ずしおバむト列に倉換しおからBase64URL゚ンコヌドするため、日本語を含む任意のテキストを扱えたす。